@font-face {
  font-family: 'lagom-medium-icons';
  src: url("../fonts/lagom-medium-icons.eot?v5wga3");
  src: url("../fonts/lagom-medium-icons.eot?v5wga3#iefix") format("embedded-opentype"), url("../fonts/lagom-medium-icons.woff?v5wga3") format("woff"), url("../fonts/lagom-medium-icons.ttf?v5wga3") format("truetype"), url("../fonts/lagom-medium-icons.svg?v5wga3#lagom-medium-icons") format("svg");
  font-weight: normal;
  font-style: normal; }

#lagom-one-step-order .lm,
.mg-wrapper .lm,
.lagom .lm {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'lagom-medium-icons' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: var(--ui-icon-size-base); }

#lagom-one-step-order .lm-bank-note:before,
.mg-wrapper .lm-bank-note:before,
.lagom .lm-bank-note:before {
  content: "\e914"; }

#lagom-one-step-order .lm-align-center:before,
.mg-wrapper .lm-align-center:before,
.lagom .lm-align-center:before {
  content: "\e915"; }

#lagom-one-step-order .lm-align-left:before,
.mg-wrapper .lm-align-left:before,
.lagom .lm-align-left:before {
  content: "\e916"; }

#lagom-one-step-order .lm-align-right:before,
.mg-wrapper .lm-align-right:before,
.lagom .lm-align-right:before {
  content: "\e917"; }

#lagom-one-step-order .lm-apps:before,
.mg-wrapper .lm-apps:before,
.lagom .lm-apps:before {
  content: "\e918"; }

#lagom-one-step-order .lm-apps-fat:before,
.mg-wrapper .lm-apps-fat:before,
.lagom .lm-apps-fat:before {
  content: "\e919"; }

#lagom-one-step-order .lm-arrow-fat-left:before,
.mg-wrapper .lm-arrow-fat-left:before,
.lagom .lm-arrow-fat-left:before {
  content: "\e91a"; }

#lagom-one-step-order .lm-arrow-fat-right:before,
.mg-wrapper .lm-arrow-fat-right:before,
.lagom .lm-arrow-fat-right:before {
  content: "\e91b"; }

#lagom-one-step-order .lm-arrow-medium-down:before,
.mg-wrapper .lm-arrow-medium-down:before,
.lagom .lm-arrow-medium-down:before {
  content: "\e91c"; }

#lagom-one-step-order .lm-arrow-medium-left:before,
.mg-wrapper .lm-arrow-medium-left:before,
.lagom .lm-arrow-medium-left:before {
  content: "\e91d"; }

#lagom-one-step-order .lm-arrow-medium-right:before,
.mg-wrapper .lm-arrow-medium-right:before,
.lagom .lm-arrow-medium-right:before {
  content: "\e91e"; }

#lagom-one-step-order .lm-arrow-medium-up:before,
.mg-wrapper .lm-arrow-medium-up:before,
.lagom .lm-arrow-medium-up:before {
  content: "\e91f"; }

#lagom-one-step-order .lm-arrow-thin-down:before,
.mg-wrapper .lm-arrow-thin-down:before,
.lagom .lm-arrow-thin-down:before {
  content: "\e920"; }

#lagom-one-step-order .lm-arrow-thin-left:before,
.mg-wrapper .lm-arrow-thin-left:before,
.lagom .lm-arrow-thin-left:before {
  content: "\e921"; }

#lagom-one-step-order .lm-arrow-thin-right:before,
.mg-wrapper .lm-arrow-thin-right:before,
.lagom .lm-arrow-thin-right:before {
  content: "\e922"; }

#lagom-one-step-order .lm-arrow-thin-up:before,
.mg-wrapper .lm-arrow-thin-up:before,
.lagom .lm-arrow-thin-up:before {
  content: "\e923"; }

#lagom-one-step-order .lm-backup:before,
.mg-wrapper .lm-backup:before,
.lagom .lm-backup:before {
  content: "\e924"; }

#lagom-one-step-order .lm-bag:before,
.mg-wrapper .lm-bag:before,
.lagom .lm-bag:before {
  content: "\e925"; }

#lagom-one-step-order .lm-barcode:before,
.mg-wrapper .lm-barcode:before,
.lagom .lm-barcode:before {
  content: "\e926"; }

#lagom-one-step-order .lm-book:before,
.mg-wrapper .lm-book:before,
.lagom .lm-book:before {
  content: "\e927"; }

#lagom-one-step-order .lm-bookmark:before,
.mg-wrapper .lm-bookmark:before,
.lagom .lm-bookmark:before {
  content: "\e928"; }

#lagom-one-step-order .lm-book-w-bookmark:before,
.mg-wrapper .lm-book-w-bookmark:before,
.lagom .lm-book-w-bookmark:before {
  content: "\e929"; }

#lagom-one-step-order .lm-box:before,
.mg-wrapper .lm-box:before,
.lagom .lm-box:before {
  content: "\e92a"; }

#lagom-one-step-order .lm-briefcase:before,
.mg-wrapper .lm-briefcase:before,
.lagom .lm-briefcase:before {
  content: "\e92b"; }

#lagom-one-step-order .lm-burger-menu:before,
.mg-wrapper .lm-burger-menu:before,
.lagom .lm-burger-menu:before {
  content: "\e92c"; }

#lagom-one-step-order .lm-calendar:before,
.mg-wrapper .lm-calendar:before,
.lagom .lm-calendar:before {
  content: "\e92d"; }

#lagom-one-step-order .lm-chat-cloud:before,
.mg-wrapper .lm-chat-cloud:before,
.lagom .lm-chat-cloud:before {
  content: "\e92e"; }

#lagom-one-step-order .lm-chat-cloud-info:before,
.mg-wrapper .lm-chat-cloud-info:before,
.lagom .lm-chat-cloud-info:before {
  content: "\e92f"; }

#lagom-one-step-order .lm-chat-clouds:before,
.mg-wrapper .lm-chat-clouds:before,
.lagom .lm-chat-clouds:before {
  content: "\e930"; }

#lagom-one-step-order .lm-clock:before,
.mg-wrapper .lm-clock:before,
.lagom .lm-clock:before {
  content: "\e931"; }

#lagom-one-step-order .lm-cloud:before,
.mg-wrapper .lm-cloud:before,
.lagom .lm-cloud:before {
  content: "\e932"; }

#lagom-one-step-order .lm-compact:before,
.mg-wrapper .lm-compact:before,
.lagom .lm-compact:before {
  content: "\e933"; }

#lagom-one-step-order .lm-crown:before,
.mg-wrapper .lm-crown:before,
.lagom .lm-crown:before {
  content: "\e934"; }

#lagom-one-step-order .lm-cup:before,
.mg-wrapper .lm-cup:before,
.lagom .lm-cup:before {
  content: "\e935"; }

#lagom-one-step-order .lm-dashboard:before,
.mg-wrapper .lm-dashboard:before,
.lagom .lm-dashboard:before {
  content: "\e936"; }

#lagom-one-step-order .lm-database:before,
.mg-wrapper .lm-database:before,
.lagom .lm-database:before {
  content: "\e937"; }

#lagom-one-step-order .lm-denial:before,
.mg-wrapper .lm-denial:before,
.lagom .lm-denial:before {
  content: "\e938"; }

#lagom-one-step-order .lm-denied:before,
.mg-wrapper .lm-denied:before,
.lagom .lm-denied:before {
  content: "\e939"; }

#lagom-one-step-order .lm-direction-sign:before,
.mg-wrapper .lm-direction-sign:before,
.lagom .lm-direction-sign:before {
  content: "\e93a"; }

#lagom-one-step-order .lm-file:before,
.mg-wrapper .lm-file:before,
.lagom .lm-file:before {
  content: "\e93b"; }

#lagom-one-step-order .lm-down:before,
.mg-wrapper .lm-down:before,
.lagom .lm-down:before {
  content: "\e93c"; }

#lagom-one-step-order .lm-download:before,
.mg-wrapper .lm-download:before,
.lagom .lm-download:before {
  content: "\e93d"; }

#lagom-one-step-order .lm-edit:before,
.mg-wrapper .lm-edit:before,
.lagom .lm-edit:before {
  content: "\e93e"; }

#lagom-one-step-order .lm-extend:before,
.mg-wrapper .lm-extend:before,
.lagom .lm-extend:before {
  content: "\e93f"; }

#lagom-one-step-order .lm-factory:before,
.mg-wrapper .lm-factory:before,
.lagom .lm-factory:before {
  content: "\e940"; }

#lagom-one-step-order .lm-feather:before,
.mg-wrapper .lm-feather:before,
.lagom .lm-feather:before {
  content: "\e941"; }

#lagom-one-step-order .lm-fire:before,
.mg-wrapper .lm-fire:before,
.lagom .lm-fire:before {
  content: "\e942"; }

#lagom-one-step-order .lm-flag:before,
.mg-wrapper .lm-flag:before,
.lagom .lm-flag:before {
  content: "\e943"; }

#lagom-one-step-order .lm-folder-plus:before,
.mg-wrapper .lm-folder-plus:before,
.lagom .lm-folder-plus:before {
  content: "\e944"; }

#lagom-one-step-order .lm-folders:before,
.mg-wrapper .lm-folders:before,
.lagom .lm-folders:before {
  content: "\e945"; }

#lagom-one-step-order .lm-funnel:before,
.mg-wrapper .lm-funnel:before,
.lagom .lm-funnel:before {
  content: "\e946"; }

#lagom-one-step-order .lm-gift:before,
.mg-wrapper .lm-gift:before,
.lagom .lm-gift:before {
  content: "\e947"; }

#lagom-one-step-order .lm-globe-alt:before,
.mg-wrapper .lm-globe-alt:before,
.lagom .lm-globe-alt:before {
  content: "\e948"; }

#lagom-one-step-order .lm-heart:before,
.mg-wrapper .lm-heart:before,
.lagom .lm-heart:before {
  content: "\e949"; }

#lagom-one-step-order .lm-image:before,
.mg-wrapper .lm-image:before,
.lagom .lm-image:before {
  content: "\e94a"; }

#lagom-one-step-order .lm-inbox:before,
.mg-wrapper .lm-inbox:before,
.lagom .lm-inbox:before {
  content: "\e94b"; }

#lagom-one-step-order .lm-info:before,
.mg-wrapper .lm-info:before,
.lagom .lm-info:before {
  content: "\e94c"; }

#lagom-one-step-order .lm-label-left:before,
.mg-wrapper .lm-label-left:before,
.lagom .lm-label-left:before {
  content: "\e94d"; }

#lagom-one-step-order .lm-label-right:before,
.mg-wrapper .lm-label-right:before,
.lagom .lm-label-right:before {
  content: "\e94e"; }

#lagom-one-step-order .lm-layout:before,
.mg-wrapper .lm-layout:before,
.lagom .lm-layout:before {
  content: "\e94f"; }

#lagom-one-step-order .lm-left:before,
.mg-wrapper .lm-left:before,
.lagom .lm-left:before {
  content: "\e950"; }

#lagom-one-step-order .lm-lightning:before,
.mg-wrapper .lm-lightning:before,
.lagom .lm-lightning:before {
  content: "\e951"; }

#lagom-one-step-order .lm-line-graph:before,
.mg-wrapper .lm-line-graph:before,
.lagom .lm-line-graph:before {
  content: "\e952"; }

#lagom-one-step-order .lm-location:before,
.mg-wrapper .lm-location:before,
.lagom .lm-location:before {
  content: "\e953"; }

#lagom-one-step-order .lm-med-kit:before,
.mg-wrapper .lm-med-kit:before,
.lagom .lm-med-kit:before {
  content: "\e954"; }

#lagom-one-step-order .lm-minus:before,
.mg-wrapper .lm-minus:before,
.lagom .lm-minus:before {
  content: "\e955"; }

#lagom-one-step-order .lm-minus-circle:before,
.mg-wrapper .lm-minus-circle:before,
.lagom .lm-minus-circle:before {
  content: "\e956"; }

#lagom-one-step-order .lm-more-vertical:before,
.mg-wrapper .lm-more-vertical:before,
.lagom .lm-more-vertical:before {
  content: "\e957"; }

#lagom-one-step-order .lm-padlock:before,
.mg-wrapper .lm-padlock:before,
.lagom .lm-padlock:before {
  content: "\e958"; }

#lagom-one-step-order .lm-pen:before,
.mg-wrapper .lm-pen:before,
.lagom .lm-pen:before {
  content: "\e959"; }

#lagom-one-step-order .lm-php-admin:before,
.mg-wrapper .lm-php-admin:before,
.lagom .lm-php-admin:before {
  content: "\e95a"; }

#lagom-one-step-order .lm-pie-graph:before,
.mg-wrapper .lm-pie-graph:before,
.lagom .lm-pie-graph:before {
  content: "\e95b"; }

#lagom-one-step-order .lm-pin:before,
.mg-wrapper .lm-pin:before,
.lagom .lm-pin:before {
  content: "\e95c"; }

#lagom-one-step-order .lm-play-board:before,
.mg-wrapper .lm-play-board:before,
.lagom .lm-play-board:before {
  content: "\e95d"; }

#lagom-one-step-order .lm-plus:before,
.mg-wrapper .lm-plus:before,
.lagom .lm-plus:before {
  content: "\e95e"; }

#lagom-one-step-order .lm-plus-folder:before,
.mg-wrapper .lm-plus-folder:before,
.lagom .lm-plus-folder:before {
  content: "\e95f"; }

#lagom-one-step-order .lm-power:before,
.mg-wrapper .lm-power:before,
.lagom .lm-power:before {
  content: "\e960"; }

#lagom-one-step-order .lm-printer:before,
.mg-wrapper .lm-printer:before,
.lagom .lm-printer:before {
  content: "\e961"; }

#lagom-one-step-order .lm-range:before,
.mg-wrapper .lm-range:before,
.lagom .lm-range:before {
  content: "\e962"; }

#lagom-one-step-order .lm-receipt:before,
.mg-wrapper .lm-receipt:before,
.lagom .lm-receipt:before {
  content: "\e963"; }

#lagom-one-step-order .lm-right:before,
.mg-wrapper .lm-right:before,
.lagom .lm-right:before {
  content: "\e964"; }

#lagom-one-step-order .lm-scanner:before,
.mg-wrapper .lm-scanner:before,
.lagom .lm-scanner:before {
  content: "\e965"; }

#lagom-one-step-order .lm-shield:before,
.mg-wrapper .lm-shield:before,
.lagom .lm-shield:before {
  content: "\e966"; }

#lagom-one-step-order .lm-shredder:before,
.mg-wrapper .lm-shredder:before,
.lagom .lm-shredder:before {
  content: "\e967"; }

#lagom-one-step-order .lm-spark:before,
.mg-wrapper .lm-spark:before,
.lagom .lm-spark:before {
  content: "\e968"; }

#lagom-one-step-order .lm-thumbs-down:before,
.mg-wrapper .lm-thumbs-down:before,
.lagom .lm-thumbs-down:before {
  content: "\e969"; }

#lagom-one-step-order .lm-thumbs-up:before,
.mg-wrapper .lm-thumbs-up:before,
.lagom .lm-thumbs-up:before {
  content: "\e96a"; }

#lagom-one-step-order .lm-tool:before,
.mg-wrapper .lm-tool:before,
.lagom .lm-tool:before {
  content: "\e96b"; }

#lagom-one-step-order .lm-trash:before,
.mg-wrapper .lm-trash:before,
.lagom .lm-trash:before {
  content: "\e96c"; }

#lagom-one-step-order .lm-up:before,
.mg-wrapper .lm-up:before,
.lagom .lm-up:before {
  content: "\e96d"; }

#lagom-one-step-order .lm-upload:before,
.mg-wrapper .lm-upload:before,
.lagom .lm-upload:before {
  content: "\e96e"; }

#lagom-one-step-order .lm-user-circle:before,
.mg-wrapper .lm-user-circle:before,
.lagom .lm-user-circle:before {
  content: "\e96f"; }

#lagom-one-step-order .lm-users:before,
.mg-wrapper .lm-users:before,
.lagom .lm-users:before {
  content: "\e970"; }

#lagom-one-step-order .lm-voice:before,
.mg-wrapper .lm-voice:before,
.lagom .lm-voice:before {
  content: "\e971"; }

#lagom-one-step-order .lm-wallet:before,
.mg-wrapper .lm-wallet:before,
.lagom .lm-wallet:before {
  content: "\e972"; }

#lagom-one-step-order .lm-warning:before,
.mg-wrapper .lm-warning:before,
.lagom .lm-warning:before {
  content: "\e973"; }

#lagom-one-step-order .lm-water-drop:before,
.mg-wrapper .lm-water-drop:before,
.lagom .lm-water-drop:before {
  content: "\e974"; }

#lagom-one-step-order .lm-zoom-in:before,
.mg-wrapper .lm-zoom-in:before,
.lagom .lm-zoom-in:before {
  content: "\e975"; }

#lagom-one-step-order .lm-zoom-out:before,
.mg-wrapper .lm-zoom-out:before,
.lagom .lm-zoom-out:before {
  content: "\e976"; }

#lagom-one-step-order .lm-bar-graph:before,
.mg-wrapper .lm-bar-graph:before,
.lagom .lm-bar-graph:before {
  content: "\e900"; }

#lagom-one-step-order .lm-basket:before,
.mg-wrapper .lm-basket:before,
.lagom .lm-basket:before {
  content: "\e901"; }

#lagom-one-step-order .lm-bell:before,
.mg-wrapper .lm-bell:before,
.lagom .lm-bell:before {
  content: "\e902"; }

#lagom-one-step-order .lm-check:before,
.mg-wrapper .lm-check:before,
.lagom .lm-check:before {
  content: "\e903"; }

#lagom-one-step-order .lm-close:before,
.mg-wrapper .lm-close:before,
.lagom .lm-close:before {
  content: "\e904"; }

#lagom-one-step-order .lm-document:before,
.mg-wrapper .lm-document:before,
.lagom .lm-document:before {
  content: "\e905"; }

#lagom-one-step-order .lm-envelope:before,
.mg-wrapper .lm-envelope:before,
.lagom .lm-envelope:before {
  content: "\e906"; }

#lagom-one-step-order .lm-folder:before,
.mg-wrapper .lm-folder:before,
.lagom .lm-folder:before {
  content: "\e907"; }

#lagom-one-step-order .lm-folder-open:before,
.mg-wrapper .lm-folder-open:before,
.lagom .lm-folder-open:before {
  content: "\e908"; }

#lagom-one-step-order .lm-go-top:before,
.mg-wrapper .lm-go-top:before,
.lagom .lm-go-top:before {
  content: "\e909"; }

#lagom-one-step-order .lm-home:before,
.mg-wrapper .lm-home:before,
.lagom .lm-home:before {
  content: "\e90a"; }

#lagom-one-step-order .lm-hosting:before,
.mg-wrapper .lm-hosting:before,
.lagom .lm-hosting:before {
  content: "\e90b"; }

#lagom-one-step-order .lm-info-text:before,
.mg-wrapper .lm-info-text:before,
.lagom .lm-info-text:before {
  content: "\e90c"; }

#lagom-one-step-order .lm-more:before,
.mg-wrapper .lm-more:before,
.lagom .lm-more:before {
  content: "\e90d"; }

#lagom-one-step-order .lm-mouse:before,
.mg-wrapper .lm-mouse:before,
.lagom .lm-mouse:before {
  content: "\e90e"; }

#lagom-one-step-order .lm-plus-circle:before,
.mg-wrapper .lm-plus-circle:before,
.lagom .lm-plus-circle:before {
  content: "\e90f"; }

#lagom-one-step-order .lm-search:before,
.mg-wrapper .lm-search:before,
.lagom .lm-search:before {
  content: "\e910"; }

#lagom-one-step-order .lm-tag:before,
.mg-wrapper .lm-tag:before,
.lagom .lm-tag:before {
  content: "\e911"; }

#lagom-one-step-order .lm-user:before,
.mg-wrapper .lm-user:before,
.lagom .lm-user:before {
  content: "\e912"; }

#lagom-one-step-order .lm-globe:before,
.mg-wrapper .lm-globe:before,
.lagom .lm-globe:before {
  content: "\e913"; }

@font-face {
  font-family: 'lagom-small-icons';
  src: url("../fonts/lagom-small-icons.eot?7yz00b");
  src: url("../fonts/lagom-small-icons.eot?7yz00b#iefix") format("embedded-opentype"), url("../fonts/lagom-small-icons.woff?7yz00b") format("woff"), url("../fonts/lagom-small-icons.ttf?7yz00b") format("truetype"), url("../fonts/lagom-small-icons.svg?7yz00b#lagom-small-icons") format("svg");
  font-weight: normal;
  font-style: normal; }

#lagom-one-step-order .ls,
.mg-wrapper .ls,
.lagom .ls {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: var(--font-family-icons-small) !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: var(--ui-icon-size-small); }

#lagom-one-step-order .ls-award:before,
.mg-wrapper .ls-award:before,
.lagom .ls-award:before {
  content: "e94f"; }

#lagom-one-step-order .ls-align-center:before,
.mg-wrapper .ls-align-center:before,
.lagom .ls-align-center:before {
  content: "\e944"; }

#lagom-one-step-order .ls-align-left:before,
.mg-wrapper .ls-align-left:before,
.lagom .ls-align-left:before {
  content: "\e945"; }

#lagom-one-step-order .ls-align-right:before,
.mg-wrapper .ls-align-right:before,
.lagom .ls-align-right:before {
  content: "\e946"; }

#lagom-one-step-order .ls-apps:before,
.mg-wrapper .ls-apps:before,
.lagom .ls-apps:before {
  content: "\e947"; }

#lagom-one-step-order .ls-arrow-down-left-thin:before,
.mg-wrapper .ls-arrow-down-left-thin:before,
.lagom .ls-arrow-down-left-thin:before {
  content: "\e948"; }

#lagom-one-step-order .ls-arrow-down-right-thin:before,
.mg-wrapper .ls-arrow-down-right-thin:before,
.lagom .ls-arrow-down-right-thin:before {
  content: "\e949"; }

#lagom-one-step-order .ls-arrow-left-wall:before,
.mg-wrapper .ls-arrow-left-wall:before,
.lagom .ls-arrow-left-wall:before {
  content: "\e94a"; }

#lagom-one-step-order .ls-arrow-play:before,
.mg-wrapper .ls-arrow-play:before,
.lagom .ls-arrow-play:before {
  content: "\e94b"; }

#lagom-one-step-order .ls-arrow-right-down-thin:before,
.mg-wrapper .ls-arrow-right-down-thin:before,
.lagom .ls-arrow-right-down-thin:before {
  content: "\e94c"; }

#lagom-one-step-order .ls-arrow-right-up-thin:before,
.mg-wrapper .ls-arrow-right-up-thin:before,
.lagom .ls-arrow-right-up-thin:before {
  content: "\e94d"; }

#lagom-one-step-order .ls-arrow-right-wall:before,
.mg-wrapper .ls-arrow-right-wall:before,
.lagom .ls-arrow-right-wall:before {
  content: "\e94e"; }

#lagom-one-step-order .ls-book-bookmark:before,
.mg-wrapper .ls-book-bookmark:before,
.lagom .ls-book-bookmark:before {
  content: "\e966"; }

#lagom-one-step-order .ls-bullet-medium:before,
.mg-wrapper .ls-bullet-medium:before,
.lagom .ls-bullet-medium:before {
  content: "\e951"; }

#lagom-one-step-order .ls-chat-clouds:before,
.mg-wrapper .ls-chat-clouds:before,
.lagom .ls-chat-clouds:before {
  content: "\e952"; }

#lagom-one-step-order .ls-check-underline:before,
.mg-wrapper .ls-check-underline:before,
.lagom .ls-check-underline:before {
  content: "\e953"; }

#lagom-one-step-order .ls-copy:before,
.mg-wrapper .ls-copy:before,
.lagom .ls-copy:before {
  content: "\e954"; }

#lagom-one-step-order .ls-crown:before,
.mg-wrapper .ls-crown:before,
.lagom .ls-crown:before {
  content: "\e955"; }

#lagom-one-step-order .ls-document-info:before,
.mg-wrapper .ls-document-info:before,
.lagom .ls-document-info:before {
  content: "\e956"; }

#lagom-one-step-order .ls-down:before,
.mg-wrapper .ls-down:before,
.lagom .ls-down:before {
  content: "\e957"; }

#lagom-one-step-order .ls-folder-open:before,
.mg-wrapper .ls-folder-open:before,
.lagom .ls-folder-open:before {
  content: "\e958"; }

#lagom-one-step-order .ls-label-left:before,
.mg-wrapper .ls-label-left:before,
.lagom .ls-label-left:before {
  content: "\e959"; }

#lagom-one-step-order .ls-left:before,
.mg-wrapper .ls-left:before,
.lagom .ls-left:before {
  content: "\e95a"; }

#lagom-one-step-order .ls-more-vertical:before,
.mg-wrapper .ls-more-vertical:before,
.lagom .ls-more-vertical:before {
  content: "\e95b"; }

#lagom-one-step-order .ls-receipt:before,
.mg-wrapper .ls-receipt:before,
.lagom .ls-receipt:before {
  content: "\e95c"; }

#lagom-one-step-order .ls-right:before,
.mg-wrapper .ls-right:before,
.lagom .ls-right:before {
  content: "\e95d"; }

#lagom-one-step-order .ls-ticket:before,
.mg-wrapper .ls-ticket:before,
.lagom .ls-ticket:before {
  content: "\e95e"; }

#lagom-one-step-order .ls-up:before,
.mg-wrapper .ls-up:before,
.lagom .ls-up:before {
  content: "\e95f"; }

#lagom-one-step-order .ls-voice:before,
.mg-wrapper .ls-voice:before,
.lagom .ls-voice:before {
  content: "\e960"; }

#lagom-one-step-order .ls-water-drop:before,
.mg-wrapper .ls-water-drop:before,
.lagom .ls-water-drop:before {
  content: "\e961"; }

#lagom-one-step-order .ls-addon:before,
.mg-wrapper .ls-addon:before,
.lagom .ls-addon:before {
  content: "\e900"; }

#lagom-one-step-order .ls-arrow-down:before,
.mg-wrapper .ls-arrow-down:before,
.lagom .ls-arrow-down:before {
  content: "\e901"; }

#lagom-one-step-order .ls-caret:before,
.mg-wrapper .ls-caret:before,
.lagom .ls-caret:before {
  content: "\e902"; }

#lagom-one-step-order .ls-sign-out:before,
.mg-wrapper .ls-sign-out:before,
.lagom .ls-sign-out:before {
  content: "\e903"; }

#lagom-one-step-order .ls-reply:before,
.mg-wrapper .ls-reply:before,
.lagom .ls-reply:before {
  content: "\e904"; }

#lagom-one-step-order .ls-arrow-left:before,
.mg-wrapper .ls-arrow-left:before,
.lagom .ls-arrow-left:before {
  content: "\e905"; }

#lagom-one-step-order .ls-sign-in:before,
.mg-wrapper .ls-sign-in:before,
.lagom .ls-sign-in:before {
  content: "\e906"; }

#lagom-one-step-order .ls-share:before,
.mg-wrapper .ls-share:before,
.lagom .ls-share:before {
  content: "\e907"; }

#lagom-one-step-order .ls-arrow-right:before,
.mg-wrapper .ls-arrow-right:before,
.lagom .ls-arrow-right:before {
  content: "\e908"; }

#lagom-one-step-order .ls-arrow-up:before,
.mg-wrapper .ls-arrow-up:before,
.lagom .ls-arrow-up:before {
  content: "\e909"; }

#lagom-one-step-order .ls-bank-note:before,
.mg-wrapper .ls-bank-note:before,
.lagom .ls-bank-note:before {
  content: "\e90a"; }

#lagom-one-step-order .ls-basket:before,
.mg-wrapper .ls-basket:before,
.lagom .ls-basket:before {
  content: "\e90b"; }

#lagom-one-step-order .ls-box:before,
.mg-wrapper .ls-box:before,
.lagom .ls-box:before {
  content: "\e90c"; }

#lagom-one-step-order .ls-bullet-small:before,
.mg-wrapper .ls-bullet-small:before,
.lagom .ls-bullet-small:before {
  content: "\e90d"; }

#lagom-one-step-order .ls-bullet:before,
.mg-wrapper .ls-bullet:before,
.lagom .ls-bullet:before {
  content: "\e90e"; }

#lagom-one-step-order .ls-calendar:before,
.mg-wrapper .ls-calendar:before,
.lagom .ls-calendar:before {
  content: "\e90f"; }

#lagom-one-step-order .ls-chain:before,
.mg-wrapper .ls-chain:before,
.lagom .ls-chain:before {
  content: "\e910"; }

#lagom-one-step-order .ls-check:before,
.mg-wrapper .ls-check:before,
.lagom .ls-check:before {
  content: "\e911"; }

#lagom-one-step-order .ls-close:before,
.mg-wrapper .ls-close:before,
.lagom .ls-close:before {
  content: "\e912"; }

#lagom-one-step-order .ls-configure:before,
.mg-wrapper .ls-configure:before,
.lagom .ls-configure:before {
  content: "\e913"; }

#lagom-one-step-order .ls-credit-card:before,
.mg-wrapper .ls-credit-card:before,
.lagom .ls-credit-card:before {
  content: "\e914"; }

#lagom-one-step-order .ls-credit:before,
.mg-wrapper .ls-credit:before,
.lagom .ls-credit:before {
  content: "\e915"; }

#lagom-one-step-order .ls-dashboard:before,
.mg-wrapper .ls-dashboard:before,
.lagom .ls-dashboard:before {
  content: "\e916"; }

#lagom-one-step-order .ls-denial:before,
.mg-wrapper .ls-denial:before,
.lagom .ls-denial:before {
  content: "\e917"; }

#lagom-one-step-order .ls-dislike:before,
.mg-wrapper .ls-dislike:before,
.lagom .ls-dislike:before {
  content: "\e918"; }

#lagom-one-step-order .ls-dns:before,
.mg-wrapper .ls-dns:before,
.lagom .ls-dns:before {
  content: "\e919"; }

#lagom-one-step-order .ls-document:before,
.mg-wrapper .ls-document:before,
.lagom .ls-document:before {
  content: "\e91a"; }

#lagom-one-step-order .ls-download:before,
.mg-wrapper .ls-download:before,
.lagom .ls-download:before {
  content: "\e91b"; }

#lagom-one-step-order .ls-download-square:before,
.mg-wrapper .ls-download-square:before,
.lagom .ls-download-square:before {
  content: "\e91c"; }

#lagom-one-step-order .ls-edit:before,
.mg-wrapper .ls-edit:before,
.lagom .ls-edit:before {
  content: "\e91d"; }

#lagom-one-step-order .ls-envelope:before,
.mg-wrapper .ls-envelope:before,
.lagom .ls-envelope:before {
  content: "\e91e"; }

#lagom-one-step-order .ls-exclamation-circle:before,
.mg-wrapper .ls-exclamation-circle:before,
.lagom .ls-exclamation-circle:before {
  content: "\e91f"; }

#lagom-one-step-order .ls-flag:before,
.mg-wrapper .ls-flag:before,
.lagom .ls-flag:before {
  content: "\e920"; }

#lagom-one-step-order .ls-folder:before,
.mg-wrapper .ls-folder:before,
.lagom .ls-folder:before {
  content: "\e921"; }

#lagom-one-step-order .ls-heart:before,
.mg-wrapper .ls-heart:before,
.lagom .ls-heart:before {
  content: "\e922"; }

#lagom-one-step-order .ls-home:before,
.mg-wrapper .ls-home:before,
.lagom .ls-home:before {
  content: "\e923"; }

#lagom-one-step-order .ls-hosting:before,
.mg-wrapper .ls-hosting:before,
.lagom .ls-hosting:before {
  content: "\e924"; }

#lagom-one-step-order .ls-hourglass:before,
.mg-wrapper .ls-hourglass:before,
.lagom .ls-hourglass:before {
  content: "\e925"; }

#lagom-one-step-order .ls-key:before,
.mg-wrapper .ls-key:before,
.lagom .ls-key:before {
  content: "\e962"; }

#lagom-one-step-order .ls-image:before,
.mg-wrapper .ls-image:before,
.lagom .ls-image:before {
  content: "\e926"; }

#lagom-one-step-order .ls-info-circle:before,
.mg-wrapper .ls-info-circle:before,
.lagom .ls-info-circle:before {
  content: "\e927"; }

#lagom-one-step-order .ls-input-code:before,
.mg-wrapper .ls-input-code:before,
.lagom .ls-input-code:before {
  content: "\e928"; }

#lagom-one-step-order .ls-lightning:before,
.mg-wrapper .ls-lightning:before,
.lagom .ls-lightning:before {
  content: "\e929"; }

#lagom-one-step-order .ls-like:before,
.mg-wrapper .ls-like:before,
.lagom .ls-like:before {
  content: "\e92a"; }

#lagom-one-step-order .ls-location:before,
.mg-wrapper .ls-location:before,
.lagom .ls-location:before {
  content: "\e92b"; }

#lagom-one-step-order .ls-minus:before,
.mg-wrapper .ls-minus:before,
.lagom .ls-minus:before {
  content: "\e92c"; }

#lagom-one-step-order .ls-more:before,
.mg-wrapper .ls-more:before,
.lagom .ls-more:before {
  content: "\e92d"; }

#lagom-one-step-order .ls-new-window:before,
.mg-wrapper .ls-new-window:before,
.lagom .ls-new-window:before {
  content: "\e92e"; }

#lagom-one-step-order .ls-padlock:before,
.mg-wrapper .ls-padlock:before,
.lagom .ls-padlock:before {
  content: "\e92f"; }

#lagom-one-step-order .ls-pen:before,
.mg-wrapper .ls-pen:before,
.lagom .ls-pen:before {
  content: "\e930"; }

#lagom-one-step-order .ls-plus:before,
.mg-wrapper .ls-plus:before,
.lagom .ls-plus:before {
  content: "\e931"; }

#lagom-one-step-order .ls-printer:before,
.mg-wrapper .ls-printer:before,
.lagom .ls-printer:before {
  content: "\e932"; }

#lagom-one-step-order .ls-range:before,
.mg-wrapper .ls-range:before,
.lagom .ls-range:before {
  content: "\e933"; }

#lagom-one-step-order .ls-refresh:before,
.mg-wrapper .ls-refresh:before,
.lagom .ls-refresh:before {
  content: "\e934"; }

#lagom-one-step-order .ls-rss:before,
.mg-wrapper .ls-rss:before,
.lagom .ls-rss:before {
  content: "\e935"; }

#lagom-one-step-order .ls-search:before,
.mg-wrapper .ls-search:before,
.lagom .ls-search:before {
  content: "\e963"; }

#lagom-one-step-order .ls-security-code:before,
.mg-wrapper .ls-security-code:before,
.lagom .ls-security-code:before {
  content: "\e936"; }

#lagom-one-step-order .ls-shield:before,
.mg-wrapper .ls-shield:before,
.lagom .ls-shield:before {
  content: "\e937"; }

#lagom-one-step-order .ls-sitebuilder:before,
.mg-wrapper .ls-sitebuilder:before,
.lagom .ls-sitebuilder:before {
  content: "\e965"; }

#lagom-one-step-order .ls-smartphone:before,
.mg-wrapper .ls-smartphone:before,
.lagom .ls-smartphone:before {
  content: "\e938"; }

#lagom-one-step-order .ls-sort-asc:before,
.mg-wrapper .ls-sort-asc:before,
.lagom .ls-sort-asc:before {
  content: "\e939"; }

#lagom-one-step-order .ls-sort-desc:before,
.mg-wrapper .ls-sort-desc:before,
.lagom .ls-sort-desc:before {
  content: "\e93a"; }

#lagom-one-step-order .ls-spark:before,
.mg-wrapper .ls-spark:before,
.lagom .ls-spark:before {
  content: "\e93b"; }

#lagom-one-step-order .ls-switch:before,
.mg-wrapper .ls-switch:before,
.lagom .ls-switch:before {
  content: "\e964"; }

#lagom-one-step-order .ls-text-cloud:before,
.mg-wrapper .ls-text-cloud:before,
.lagom .ls-text-cloud:before {
  content: "\e93c"; }

#lagom-one-step-order .ls-ticket-tag:before,
.mg-wrapper .ls-ticket-tag:before,
.lagom .ls-ticket-tag:before {
  content: "\e93d"; }

#lagom-one-step-order .ls-transfer:before,
.mg-wrapper .ls-transfer:before,
.lagom .ls-transfer:before {
  content: "\e93e"; }

#lagom-one-step-order .ls-trash:before,
.mg-wrapper .ls-trash:before,
.lagom .ls-trash:before {
  content: "\e93f"; }

#lagom-one-step-order .ls-upgrade-downgrade:before,
.mg-wrapper .ls-upgrade-downgrade:before,
.lagom .ls-upgrade-downgrade:before {
  content: "\e940"; }

#lagom-one-step-order .ls-upload:before,
.mg-wrapper .ls-upload:before,
.lagom .ls-upload:before {
  content: "\e941"; }

#lagom-one-step-order .ls-user:before,
.mg-wrapper .ls-user:before,
.lagom .ls-user:before {
  content: "\e942"; }

#lagom-one-step-order .ls-wallet:before,
.mg-wrapper .ls-wallet:before,
.lagom .ls-wallet:before {
  content: "\e943"; }

/* The yiq lightness value that determines when the lightness of color changes from "dark" to "light". Acceptable values are between 0 and 255. */
/* Customize the light and dark text colors for use in our YIQ color contrast function. */
.container,
.container-fluid {
  width: 100%;
  margin-right: auto;
  margin-left: auto; }

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -12px;
  margin-left: -12px; }

.row-sm {
  margin-left: calc(-1 * var(--spacing-1x));
  margin-right: calc(-1 * var(--spacing-1x)); }
  .row-sm [class*='col-'] {
    padding-left: var(--spacing-1x);
    padding-right: var(--spacing-1x); }

.no-gutters {
  margin-right: 0;
  margin-left: 0; }
  .no-gutters > .col,
  .no-gutters > [class*="col-"] {
    padding-right: 0;
    padding-left: 0; }

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 12px;
  padding-left: 12px; }

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%; }

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%; }

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%; }

.row-cols-3 > * {
  flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%; }

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%; }

.row-cols-6 > * {
  flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%; }

.col-1 {
  flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.col-2 {
  flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.col-3 {
  flex: 0 0 25%;
  max-width: 25%; }

.col-4 {
  flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.col-5 {
  flex: 0 0 41.66667%;
  max-width: 41.66667%; }

.col-6 {
  flex: 0 0 50%;
  max-width: 50%; }

.col-7 {
  flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.col-8 {
  flex: 0 0 66.66667%;
  max-width: 66.66667%; }

.col-9 {
  flex: 0 0 75%;
  max-width: 75%; }

.col-10 {
  flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.col-11 {
  flex: 0 0 91.66667%;
  max-width: 91.66667%; }

.col-12 {
  flex: 0 0 100%;
  max-width: 100%; }

.order-first {
  order: -1; }

.order-last {
  order: 13; }

.order-0 {
  order: 0; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.order-3 {
  order: 3; }

.order-4 {
  order: 4; }

.order-5 {
  order: 5; }

.order-6 {
  order: 6; }

.order-7 {
  order: 7; }

.order-8 {
  order: 8; }

.order-9 {
  order: 9; }

.order-10 {
  order: 10; }

.order-11 {
  order: 11; }

.order-12 {
  order: 12; }

.offset-1 {
  margin-left: 8.33333%; }

.offset-2 {
  margin-left: 16.66667%; }

.offset-3 {
  margin-left: 25%; }

.offset-4 {
  margin-left: 33.33333%; }

.offset-5 {
  margin-left: 41.66667%; }

.offset-6 {
  margin-left: 50%; }

.offset-7 {
  margin-left: 58.33333%; }

.offset-8 {
  margin-left: 66.66667%; }

.offset-9 {
  margin-left: 75%; }

.offset-10 {
  margin-left: 83.33333%; }

.offset-11 {
  margin-left: 91.66667%; }

@media (min-width: 480px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-sm-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-sm-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-sm-first {
    order: -1; }
  .order-sm-last {
    order: 13; }
  .order-sm-0 {
    order: 0; }
  .order-sm-1 {
    order: 1; }
  .order-sm-2 {
    order: 2; }
  .order-sm-3 {
    order: 3; }
  .order-sm-4 {
    order: 4; }
  .order-sm-5 {
    order: 5; }
  .order-sm-6 {
    order: 6; }
  .order-sm-7 {
    order: 7; }
  .order-sm-8 {
    order: 8; }
  .order-sm-9 {
    order: 9; }
  .order-sm-10 {
    order: 10; }
  .order-sm-11 {
    order: 11; }
  .order-sm-12 {
    order: 12; }
  .offset-sm-0 {
    margin-left: 0; }
  .offset-sm-1 {
    margin-left: 8.33333%; }
  .offset-sm-2 {
    margin-left: 16.66667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.33333%; }
  .offset-sm-5 {
    margin-left: 41.66667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.33333%; }
  .offset-sm-8 {
    margin-left: 66.66667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.33333%; }
  .offset-sm-11 {
    margin-left: 91.66667%; } }

@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-md-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-md-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-md-first {
    order: -1; }
  .order-md-last {
    order: 13; }
  .order-md-0 {
    order: 0; }
  .order-md-1 {
    order: 1; }
  .order-md-2 {
    order: 2; }
  .order-md-3 {
    order: 3; }
  .order-md-4 {
    order: 4; }
  .order-md-5 {
    order: 5; }
  .order-md-6 {
    order: 6; }
  .order-md-7 {
    order: 7; }
  .order-md-8 {
    order: 8; }
  .order-md-9 {
    order: 9; }
  .order-md-10 {
    order: 10; }
  .order-md-11 {
    order: 11; }
  .order-md-12 {
    order: 12; }
  .offset-md-0 {
    margin-left: 0; }
  .offset-md-1 {
    margin-left: 8.33333%; }
  .offset-md-2 {
    margin-left: 16.66667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.33333%; }
  .offset-md-5 {
    margin-left: 41.66667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.33333%; }
  .offset-md-8 {
    margin-left: 66.66667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.33333%; }
  .offset-md-11 {
    margin-left: 91.66667%; } }

@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-lg-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-lg-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-lg-first {
    order: -1; }
  .order-lg-last {
    order: 13; }
  .order-lg-0 {
    order: 0; }
  .order-lg-1 {
    order: 1; }
  .order-lg-2 {
    order: 2; }
  .order-lg-3 {
    order: 3; }
  .order-lg-4 {
    order: 4; }
  .order-lg-5 {
    order: 5; }
  .order-lg-6 {
    order: 6; }
  .order-lg-7 {
    order: 7; }
  .order-lg-8 {
    order: 8; }
  .order-lg-9 {
    order: 9; }
  .order-lg-10 {
    order: 10; }
  .order-lg-11 {
    order: 11; }
  .order-lg-12 {
    order: 12; }
  .offset-lg-0 {
    margin-left: 0; }
  .offset-lg-1 {
    margin-left: 8.33333%; }
  .offset-lg-2 {
    margin-left: 16.66667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.33333%; }
  .offset-lg-5 {
    margin-left: 41.66667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.33333%; }
  .offset-lg-8 {
    margin-left: 66.66667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.33333%; }
  .offset-lg-11 {
    margin-left: 91.66667%; } }

@media (min-width: 1320px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-xl-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-xl-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-xl-first {
    order: -1; }
  .order-xl-last {
    order: 13; }
  .order-xl-0 {
    order: 0; }
  .order-xl-1 {
    order: 1; }
  .order-xl-2 {
    order: 2; }
  .order-xl-3 {
    order: 3; }
  .order-xl-4 {
    order: 4; }
  .order-xl-5 {
    order: 5; }
  .order-xl-6 {
    order: 6; }
  .order-xl-7 {
    order: 7; }
  .order-xl-8 {
    order: 8; }
  .order-xl-9 {
    order: 9; }
  .order-xl-10 {
    order: 10; }
  .order-xl-11 {
    order: 11; }
  .order-xl-12 {
    order: 12; }
  .offset-xl-0 {
    margin-left: 0; }
  .offset-xl-1 {
    margin-left: 8.33333%; }
  .offset-xl-2 {
    margin-left: 16.66667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.33333%; }
  .offset-xl-5 {
    margin-left: 41.66667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.33333%; }
  .offset-xl-8 {
    margin-left: 66.66667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.33333%; }
  .offset-xl-11 {
    margin-left: 91.66667%; } }

.col5 {
  flex: 0 0 20%;
  max-width: 20%; }

@media (min-width: 480px) {
  .col-sm5 {
    flex: 0 0 20%;
    max-width: 20%; } }

@media (min-width: 768px) {
  .col-md5 {
    flex: 0 0 20%;
    max-width: 20%; } }

@media (min-width: 992px) {
  .col-lg5 {
    flex: 0 0 20%;
    max-width: 20%; } }

@media (min-width: 1320px) {
  .col-xl5 {
    flex: 0 0 20%;
    max-width: 20%; } }

/*
*******************************************
General - General
*******************************************
*/
html {
  min-height: 100%; }

body {
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -o-font-smoothing: antialiased;
  text-rendering: optimizeSpeed; }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    body {
      height: 100vh; } }

@media only screen and (max-width: 767.98px) {
  body, html {
    overflow-x: hidden; } }

input:-webkit-autofill, select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset; }

a[href^="tel"] {
  color: inherit !important;
  text-decoration: none; }

a:not(.btn) {
  color: var(--link-color);
  text-decoration: none;
  transition: color var(--transition-base), background var(--transition-base), border var(--transition-base), transform var(--transition-base), padding var(--transition-base); }
  a:not(.btn).label-primary-faded {
    color: var(--text-primary-color); }
  a:not(.btn):focus-visible {
    color: var(--text-primary-color); }

@media (min-width: 992px) {
  .lagom:not(.lagom-layout-left) .has-scroll.dropdown-menu:not(.dropdown-list) {
    max-height: var(--navbar-dropdown-max-height); } }

.has-scroll {
  overflow: hidden;
  position: relative;
  scrollbar-color: var(--gray-lighter-3) transparent;
  scrollbar-width: thin; }
  .has-scroll.dropdown-menu {
    background: var(--dropdown-bg);
    overflow-y: auto !important;
    overflow-x: hidden; }
    .has-scroll.dropdown-menu::-webkit-scrollbar {
      background: transparent; }
  .has-scroll.dropdown-menu-items::-webkit-scrollbar {
    background: var(--dropdown-bg); }
  .has-scroll.dropdown-menu-items {
    overflow-y: auto !important;
    overflow-x: hidden;
    margin: 0 !important; }
    .has-scroll.dropdown-menu-items::-webkit-scrollbar {
      background: var(--dropdown-bg); }
  .has-scroll:hover {
    overflow-y: auto !important;
    overflow-x: hidden; }
  .has-scroll::-webkit-scrollbar {
    width: 6px;
    background: transparent; }
  .has-scroll::-webkit-scrollbar-track {
    background: transparent; }
  .has-scroll::-webkit-scrollbar-thumb {
    background: var(--gray-lighter-4);
    border-radius: 6px;
    width: 6px;
    height: 6px; }

/*
*******************************************
General - Type
*******************************************
*/
p:empty {
  display: none; }

.adminreturndiv {
  display: none !important; }

#popup-backdrop {
  background-color: #2E363F;
  padding: 15px;
  height: 100%; }

.admin-masquerade-notice {
  margin: 25px 0 0 auto;
  padding: 4px 10px;
  max-width: 240px;
  font-family: Tahoma;
  font-size: 0.7em;
  text-align: right; }
  .admin-masquerade-notice a {
    text-decoration: underline; }

.licensing-addon-latest-download h3 {
  margin-top: 0; }

/*
*******************************************
General - Print
*******************************************
*/
@media print {
  .sidebar,
  .app-nav-menu,
  #top-nav,
  .header-lined {
    display: none; }
  a[href]:after {
    content: "" !important; } }

.alert-bordered-left {
  border: 0;
  border-left: 3px solid;
  border-radius: 0;
  text-align: left; }

/*
*******************************************
General - Grid 
*******************************************
*/
.row-eq-height {
  display: flex;
  flex-wrap: wrap; }
  .row-eq-height:before, .row-eq-height:after {
    display: none; }
  .row-eq-height > div[class*=col] {
    display: flex; }
    .row-eq-height > div[class*=col] > * {
      width: 100%; }

@media (max-width: 991.98px) {
  .row-eq-height-md {
    flex-direction: column; }
  .row-eq-height:not(.row-eq-height-sm):not(.row-eq-height-xs):not(.row-cols-mixed) > [class*="col-sm-"] {
    max-width: 100%;
    width: 100%;
    flex: 0 0 100%; } }

@media (max-width: 767.98px) {
  .products .row-eq-height > div[class*=col] {
    display: block; }
  .row-eq-height-sm {
    flex-direction: column; } }
  @media screen and (max-width: 767.98px) and (-ms-high-contrast: active), (max-width: 767.98px) and (-ms-high-contrast: none) {
    .row-eq-height-sm {
      align-items: center;
      justify-content: center;
      flex-flow: row wrap; } }

@media (max-width: 767.98px) {
  .flex-column-sm {
    flex-direction: column;
    align-items: unset !important; }
    .flex-column-sm .m-r-a {
      margin-right: 0 !important; }
    .flex-column-sm > * + * {
      margin-top: var(--ui-block-padding-base) !important; } }

.container-fluid.without-padding {
  padding-left: 0;
  padding-right: 0; }

/*
*******************************************
General - Helpers
*******************************************
*/
.hidden {
  display: none !important; }

@media (max-width: 991.98px) {
  .hidden-below-md {
    display: none !important; } }

.weight-300 {
  font-weight: 300 !important; }

.weight-500 {
  font-weight: 500 !important; }

i.icon-rss {
  color: #ff6600; }

.bg-white {
  background: #fff !important; }

.m-a,
.m-h-a {
  margin-left: auto;
  margin-right: auto; }

.m-h-1x {
  margin: 0 var(--spacing-1x); }

.m-l-a {
  margin-left: auto !important; }

.m-r-a {
  margin-right: auto !important; }

.gap-1x {
  gap: var(--spacing-1x) !important; }

.gap-2x {
  gap: var(--spacing-2x) !important; }

.gap-3x {
  gap: var(--spacing-3x) !important; }

.gap-4x {
  gap: var(--spacing-4x) !important; }

.col-gap-1x {
  column-gap: var(--spacing-1x) !important; }

.col-gap-2x {
  column-gap: var(--spacing-2x) !important; }

.col-gap-3x {
  column-gap: var(--spacing-3x) !important; }

.col-gap-4x {
  column-gap: var(--spacing-4x) !important; }

.row-gap-1x {
  row-gap: var(--spacing-1x) !important; }

.row-gap-2x {
  row-gap: var(--spacing-2x) !important; }

.row-gap-3x {
  row-gap: var(--spacing-3x) !important; }

.row-gap-4x {
  row-gap: var(--spacing-4x) !important; }

.m-t-0 {
  margin-top: 0 !important; }

.m-t-1x {
  margin-top: var(--spacing-1x) !important; }

.m-t-2x {
  margin-top: var(--spacing-2x) !important; }

.m-t-3x {
  margin-top: var(--spacing-3x) !important; }

.m-t-4x {
  margin-top: var(--spacing-4x) !important; }

.m-t-5x {
  margin-top: var(--spacing-5x) !important; }

.m-t-6x {
  margin-top: var(--spacing-6x) !important; }

.m-t-7x {
  margin-top: var(--spacing-7x) !important; }

.m-t-8x {
  margin-top: var(--spacing-8x) !important; }

.m-b-0,
.m-b-0x {
  margin-bottom: 0 !important; }

.m-b-1x {
  margin-bottom: var(--spacing-1x) !important; }

.m-b-2x {
  margin-bottom: var(--spacing-2x) !important; }

.m-b-3x {
  margin-bottom: var(--spacing-3x) !important; }

.m-b-4x {
  margin-bottom: var(--spacing-4x) !important; }

.m-b-5x {
  margin-bottom: var(--spacing-5x) !important; }

.m-b-6x {
  margin-bottom: var(--spacing-6x) !important; }

.m-b-7x {
  margin-bottom: var(--spacing-7x) !important; }

.m-r-0 {
  margin-right: 0 !important; }

.m-r-1x {
  margin-right: var(--spacing-1x) !important; }

.m-l-1x {
  margin-left: var(--spacing-1x) !important; }

.m-l-4x {
  margin-left: var(--spacing-4x) !important; }

.m-l-neg-1x {
  margin-left: calc(-1 * var(--spacing-1x)) !important; }

.m-r-neg-1x {
  margin-right: calc(-1 * var(--spacing-1x)) !important; }

.m-b-neg-2x {
  margin-bottom: calc(-2 * var(--spacing-1x)) !important; }

.m-l-neg-2x {
  margin-left: calc(-2 * var(--spacing-1x)) !important; }

.m-b-neg-3x {
  margin-bottom: calc(-3 * var(--spacing-1x)) !important; }

.p-t-0 {
  padding-top: 0 !important; }

.p-b-0 {
  padding-bottom: 0 !important; }

.p-l-1x {
  padding-left: var(--spacing-1x) !important; }

.p-r-1x {
  padding-right: var(--spacing-1x) !important; }

.p-l-0 {
  padding-left: 0 !important; }

.p-r-0 {
  padding-right: 0 !important; }

.p-b-2x {
  padding-bottom: var(--spacing-2x) !important; }

.p-t-2x {
  padding-top: var(--spacing-2x) !important; }

.m-w-xs {
  max-width: var(--max-width-xs) !important; }

.m-w-sm {
  max-width: var(--max-width-sm) !important; }

.m-w-md {
  max-width: var(--max-width-md) !important; }

.m-w-lg {
  max-width: var(--max-width-lg) !important; }

.no-min-width {
  min-width: unset !important; }

.w-100 {
  width: 100% !important; }

.m-w-288 {
  max-width: 288px !important; }

.text-heading-color {
  color: var(--text-heading-color) !important; }

.text-body-color {
  color: var(--text-body-color) !important; }

.text-lighter-color {
  color: var(--text-lighter-color) !important; }

.order-neg-1 {
  order: -1; }

.d-flex {
  display: flex;
  flex-wrap: wrap; }

.flex-nowrap {
  flex-wrap: nowrap; }

.space-between {
  justify-content: space-between; }

.justify-center {
  justify-content: center; }

.justify-start {
  justify-content: flex-start; }

.align-center {
  align-items: center; }

.flex-column {
  flex-direction: column; }

.flex-grow {
  flex-grow: 1;
  max-width: unset; }

.word-break-all {
  word-break: break-all; }

.va-middle {
  vertical-align: middle; }

.alert.w-hidden,
.alert.alert-lagom.w-hidden,
.w-hidden {
  display: none; }

.pull-none {
  float: none !important; }

.border-none {
  border: none !important; }

.truncate {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important; }

.gap-xs {
  gap: var(--ui-block-spacing-xs) !important; }

.gap-sm {
  gap: var(--ui-block-spacing-sm) !important; }

.gap-base {
  gap: var(--ui-block-spacing-base) !important; }

.gap-lg {
  gap: var(--ui-block-spacing-lg) !important; }

.gap-xlg {
  gap: var(--ui-block-spacing-xlg) !important; }

.gap-xxlg {
  gap: var(--ui-block-spacing-xxlg) !important; }

.row-gap-xs {
  row-gap: var(--ui-block-spacing-xs) !important; }

.row-gap-base {
  row-gap: var(--ui-block-spacing-base) !important; }

.col-gap-xs {
  column-gap: var(--ui-block-spacing-xs) !important; }

.col-gap-base {
  column-gap: var(--ui-block-spacing-base) !important; }

@media (min-width: 992px) {
  .col-lg-row-7 {
    flex: 0 0 14.2857%;
    max-width: 14.2857%;
    position: relative;
    width: 100%;
    padding-right: 12px;
    padding-left: 12px; } }

.or {
  margin-left: var(--spacing-1x);
  margin-right: var(--spacing-1x); }

.drop-up {
  bottom: 100%;
  top: auto; }

#fullpage-overlay {
  display: table;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--modal-backdrop-bg);
  color: #fff; }
  #fullpage-overlay .outer-wrapper {
    position: relative;
    height: 100%; }
  #fullpage-overlay .inner-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 30%;
    width: 50%;
    margin: -3% 0 0 -25%;
    text-align: center; }
  #fullpage-overlay .msg {
    display: inline-block;
    padding: 20px;
    max-width: 400px; }

[style="text-align:center;"] {
  display: block;
  float: left;
  margin-top: var(--ui-block-spacing-lg);
  margin-bottom: 0;
  width: 100%; }

.ssl-info {
  display: inline-block; }

.fa-header:before {
  content: "\f1dc"; }

.label-corner {
  position: absolute;
  max-height: 16px;
  font-size: 10px;
  padding: 4px;
  transform: rotate(-45deg);
  display: flex;
  align-items: center;
  justify-content: center; }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .label-corner {
      line-height: 1; } }

.shuffle {
  overflow: visible !important; }

#Overview #layers {
  height: auto; }

.packages + .pricing-text {
  margin-top: var(--spacing-10x); }
  .packages + .pricing-text a {
    text-decoration: underline;
    color: var(--text-body-color); }

.subscription-manage {
  display: grid;
  place-content: center;
  justify-content: stretch; }
  .subscription-manage .col-12 {
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: var(--spacing-4x);
    text-align: center; }
  .subscription-manage h5 {
    margin-bottom: var(--spacing-1x);
    font-weight: var(--font-weight-bold); }
  .subscription-manage .svg-icon {
    margin-bottom: var(--spacing-4x); }

.has-shadow {
  box-shadow: var(--ui-block-shadow-lg); }

.lazy-switch-opacity {
  opacity: 0 !important; }

.lazyload, .lazyloading, .lazy-switch-mode {
  opacity: 0; }

.lazyloaded {
  opacity: 1;
  transition: opacity 0.2s; }

.app-nav-menu .lazyloaded,
.ls-is-cached.lazyloaded {
  transition: opacity 0s; }

.page-clientareadomaindetails #Addons .package-actions form {
  display: flex;
  justify-content: center;
  column-gap: 12px; }

.page-clientareadomaindetails #cancelAddon .modal-header {
  border-bottom: none; }

.page-clientareadomaindetails #cancelAddon .modal-body {
  padding-block: var(--spacing-2x); }
  .page-clientareadomaindetails #cancelAddon .modal-body p {
    font-size: var(--font-size-md); }

.page-clientareadomaindetails #cancelAddon .modal-footer {
  padding-top: var(--spacing-2x); }

.page-configureproduct .hidden-pg .pg-name {
  display: none !important; }

.page-socialmedialogin .dataTables_info {
  padding-bottom: 24px; }

.page-socialmedialogin .modal-header .close {
  top: 16px; }

.page-socialmedialogin .panel-heading {
  border-bottom: 1px solid var(--gray-lighter-4); }

/* http://git.mglocal/whmcs-products/social_media_log_in/-/issues/151 */
.social-media .btn-media {
  height: 38px !important;
  line-height: 38px; }

.hide-discounts #sectionCycles .check-subtitle,
.hide-discounts .dropdown-cycle-switcher .label-save,
.hide-discounts .package-price .price-discount,
.hide-discounts .product-billing-switcher .cycle-change .label-save {
  display: none !important; }

.app-nav-menu ul.menu li.is-disabled {
  opacity: 0.65;
  pointer-events: none; }

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
div.radio-styled:focus-visible,
div.checkbox-styled:focus-visible,
table tr th:focus-visible,
table tbody tr:focus-visible,
.list-group-item:focus-visible,
i:focus-visible,
div:focus-visible {
  outline: none !important; }

a.logo:focus-visible > img {
  box-shadow: var(--ui-block-bg) 0px 0px 0px 3px, var(--brand-primary-lighter) 0px 0px 0px 4px; }

#paymentmethod:focus-visible {
  color: var(--text-primary-color); }

div.section-content .section-slider[tabindex="0"]:focus-visible {
  box-shadow: var(--ui-block-bg) 0px 0px 0px 3px, var(--brand-primary-lighter) 0px 0px 0px 4px; }

.graphic-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  min-width: 48px; }
  .graphic-item:empty {
    display: none !important; }
  .graphic-item svg {
    width: 100%;
    height: 100%; }
  .graphic-item img {
    max-width: 100%; }
  .graphic-item .graphic-item-bg {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background-color: var(--brand-primary-lighter-3);
    border-radius: var(--border-radius-lg); }
    .graphic-item .graphic-item-bg i {
      color: var(--text-primary-color);
      font-size: 18px; }
  .graphic-item-sm {
    width: 32px;
    height: 32px;
    min-width: 32px; }
    .graphic-item-sm .graphic-item-bg {
      border-radius: var(--border-radius-base); }
      .graphic-item-sm .graphic-item-bg i {
        font-size: 12px; }
  .graphic-item-illustration {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-top: -8px;
    min-height: 160px; }
    .graphic-item-illustration svg {
      position: absolute;
      bottom: unset;
      height: auto;
      visibility: visible;
      margin: 0;
      animation-name: showSliderIcons;
      animation-duration: 1s;
      animation-timing-function: cubic-bezier(0, 0, 0, 1);
      animation-fill-mode: forwards;
      height: 160px !important; }
      .graphic-item-illustration svg:first-child {
        animation-delay: .24s; }
      .graphic-item-illustration svg:nth-child(2) {
        animation-delay: .12s; }
      .graphic-item-illustration svg:nth-child(3) {
        animation-delay: 0s; }
  .graphic-item-rounded .graphic-item-bg {
    border-radius: 40px; }

@media (max-width: 767.98px) {
  .graphic-item {
    width: 40px;
    height: 40px;
    min-width: 40px; }
    .graphic-item .graphic-item-bg i {
      font-size: 16px; }
    .graphic-item-sm {
      width: 24px;
      height: 24px;
      min-width: 24px; }
      .graphic-item-sm .graphic-item-bg i {
        font-size: 8px; } }

/*
*******************************************
Colors
1. Backgrounds
*******************************************
*/
/*
*******************************************
1. Colors - Backgrounds
*******************************************
*/
.bg-color-gold {
  background-color: #f0ad4e; }

.bg-color-green {
  background-color: #5cb85c; }

.bg-color-red {
  background-color: #d9534f; }

.bg-color-orange {
  background-color: #f39c12; }

.bg-color-blue {
  background-color: #5bc0de; }

.bg-color-pink {
  background-color: #e671b8; }

.bg-color-purple {
  background-color: #7b4f9d; }

.bg-color-lime {
  background-color: #8cbf26; }

.bg-color-magenta {
  background-color: #ff0097; }

.bg-color-teal {
  background-color: #00aba9; }

.bg-color-turquoise {
  background-color: #1abc9c; }

.bg-color-emerald {
  background-color: #2ecc71; }

.bg-color-amethyst {
  background-color: #9b59b6; }

.bg-color-wet-asphalt {
  background-color: #34495e; }

.bg-color-midnight-blue {
  background-color: #2c3e50; }

.bg-color-sun-flower {
  background-color: #f1c40f; }

.bg-color-pomegranate {
  background-color: #c0392b; }

.bg-color-silver {
  background-color: #bdc3c7; }

.bg-color-asbestos {
  background-color: #7f8c8d; }

.app-main {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column; }
  .app-main .main-body {
    flex: 1 0 auto; }
  .app-main > .mg-integration-container .lu-app-main__body {
    padding: 0 !important; }

/*
*******************************************
App - Navigation
*******************************************
*/
.app-nav .my-account .active-client,
.top-nav .my-account .active-client {
  line-height: var(--line-height-sm); }
  .app-nav .my-account .active-client .item-text,
  .top-nav .my-account .active-client .item-text {
    display: block; }
  .app-nav .my-account .active-client span:not(.item-text),
  .top-nav .my-account .active-client span:not(.item-text) {
    display: block;
    margin-top: -3px;
    color: var(--text-faded-color);
    font-size: var(--font-size-sm);
    transition: var(--transition-base); }

.app-nav .my-account .dropdown-menu,
.top-nav .my-account .dropdown-menu {
  min-width: 240px;
  left: auto;
  right: 0; }

.app-nav .my-account .dropdown-toggle,
.top-nav .my-account .dropdown-toggle {
  display: flex;
  align-items: center;
  line-height: var(--line-height-sm); }

.app-nav .my-account .client-avatar + i,
.top-nav .my-account .client-avatar + i {
  display: none; }

.app-nav .badge-dot,
.app-nav .badge-icon,
.top-nav .badge-dot,
.top-nav .badge-icon {
  position: absolute;
  top: var(--top-nav-link-padding-v);
  left: calc(var(--ui-icon-size-base) - 2px); }

.app-nav .badge-dot,
.top-nav .badge-dot {
  display: block;
  height: 8px;
  width: 8px;
  min-width: 8px;
  padding: 0; }
  .app-nav .badge-dot > span,
  .top-nav .badge-dot > span {
    display: none; }

.app-nav li .item-text,
.top-nav li .item-text {
  display: flex;
  align-items: center; }
  .app-nav li .item-text.item-text-badge,
  .top-nav li .item-text.item-text-badge {
    position: relative; }
    .app-nav li .item-text.item-text-badge .badge,
    .top-nav li .item-text.item-text-badge .badge {
      margin-left: var(--spacing-1x); }
    .app-nav li .item-text.item-text-badge .badge-dot,
    .top-nav li .item-text.item-text-badge .badge-dot {
      position: static;
      height: unset !important;
      width: unset !important;
      padding: var(--badge-padding-y) var(--badge-padding-x); }
      .app-nav li .item-text.item-text-badge .badge-dot > span,
      .top-nav li .item-text.item-text-badge .badge-dot > span {
        display: block; }

.app-nav li:not(.nav-item-text-only) > a .item-text.item-text-badge .badge,
.top-nav li:not(.nav-item-text-only) > a .item-text.item-text-badge .badge {
  display: none !important; }

.app-nav li .notification-icon-container,
.top-nav li .notification-icon-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--ui-icon-size-base);
  height: var(--ui-icon-size-base); }
  .app-nav li .notification-icon-container.notification-icon-container-svg,
  .top-nav li .notification-icon-container.notification-icon-container-svg {
    width: var(--app-nav-top-menu-svg-icon-size);
    height: var(--app-nav-top-menu-svg-icon-size); }
  .app-nav li .notification-icon-container > .badge-dot,
  .top-nav li .notification-icon-container > .badge-dot {
    height: 7px;
    width: 7px;
    min-width: 7px;
    top: -1px;
    outline-color: var(--app-nav-top-bg);
    outline-width: 1px;
    outline-style: solid;
    outline-offset: 0px;
    right: 0px;
    left: unset; }
  .app-nav li .notification-icon-container > svg + .badge-dot,
  .top-nav li .notification-icon-container > svg + .badge-dot {
    height: 12px;
    width: 12px;
    min-width: 12px;
    top: -2px;
    right: 1px;
    left: unset; }

.app-nav li .item-text.item-text-badge > .badge-dot,
.top-nav li .item-text.item-text-badge > .badge-dot {
  height: 6px;
  width: 6px;
  min-width: 6px; }

@media (min-width: 992px) {
  .app-nav .nav-item-icon-only .item-text,
  .main-top .nav-item-icon-only .item-text {
    display: none !important; } }

/*
*******************************************
App - Navigation Header
*******************************************
*/
.app-nav-header .logo {
  display: flex;
  align-items: center; }
  .app-nav-header .logo img {
    height: var(--app-nav-logo-height);
    max-width: var(--app-nav-logo-width); }
  .app-nav-header .logo-text {
    margin-right: 10px;
    white-space: nowrap;
    max-width: 280px;
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden; }

.app-nav-header .app-nav-toggle {
  border-color: transparent;
  margin-left: calc(-1 * var(--spacing-1x)); }
  .app-nav-header .app-nav-toggle:hover, .app-nav-header .app-nav-toggle:focus {
    background-color: transparent; }
    .app-nav-header .app-nav-toggle:hover .icon-bar, .app-nav-header .app-nav-toggle:focus .icon-bar {
      background-color: var(--app-nav-top-menu-icon-hover-color); }
  .app-nav-header .app-nav-toggle .icon-bar {
    background-color: var(--app-nav-top-menu-icon-color); }

.app-nav-header .top-nav .dropdown.dropdown-menu-hover .dropdown-menu-filler {
  position: absolute;
  left: 0;
  right: unset;
  width: 200px;
  top: 100%;
  height: 14px;
  z-index: 1000; }

.app-nav-header .top-nav .dropdown.dropdown-menu-hover .dropdown-menu.dropdown-menu-right + .dropdown-menu-filler {
  left: unset;
  right: 0; }

.app-nav-header .top-nav .dropdown.dropdown-menu-hover .dropdown-menu.client-alerts + .dropdown-menu-filler {
  right: unset;
  left: 50%;
  margin-left: -160px;
  width: 320px; }

.app-nav-header .top-nav .dropdown.dropdown-menu-hover.my-account .dropdown-menu-filler {
  width: 240px;
  left: auto !important;
  right: 0 !important; }

.app-nav-header .top-nav .dropdown.dropdown-menu-hover[data-language-select] .dropdown-menu-filler {
  width: 250px; }

.app-nav-header .top-nav .dropdown:not(.show):not(.sfHover).dropdown-menu-hover .dropdown-menu-filler {
  display: none; }

.app-nav-header .top-nav .dropdown-menu {
  top: calc(100% + 14px); }

.app-nav-header .container {
  display: flex;
  align-items: center;
  height: 100%; }
  .app-nav-header .container:before, .app-nav-header .container:after {
    display: none; }

/* App Header on Mobiles */
@media (max-width: 991.98px) {
  body {
    padding-top: var(--mob-app-nav-header-height) !important; }
  .app-nav-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: var(--zindex-navbar-fixed);
    height: var(--mob-app-nav-header-height);
    background: var(--mob-app-nav-header-bg);
    box-shadow: var(--mob-app-nav-header-box-shadow);
    border-bottom: var(--mob-app-nav-header-border-bottom); }
    .app-nav-header .logo img {
      max-height: var(--mob-app-nav-logo-height); }
      .app-nav-header .logo img[src$="png"], .app-nav-header .logo img[src$="jpg"] {
        height: auto; }
  .app-nav-header {
    min-height: var(--mob-app-nav-header-height); }
  .lagom:not(.page-lagom-cms) .app-nav-header .container {
    height: var(--mob-app-nav-header-height); }
  .lagom-layout-top:not(.lagom-layout-left) .app-nav-primary .app-nav-header,
  .lagom-layout-left-wide:not(.lagom-layout-left) .app-nav-primary .app-nav-header {
    background: var(--primary-block-bg-h); }
    .lagom-layout-top:not(.lagom-layout-left) .app-nav-primary .app-nav-header .app-nav-toggle .icon-bar,
    .lagom-layout-left-wide:not(.lagom-layout-left) .app-nav-primary .app-nav-header .app-nav-toggle .icon-bar {
      background-color: var(--primary-block-text-color); }
  .lagom-layout-top:not(.lagom-layout-left) .app-nav-secondary .app-nav-header,
  .lagom-layout-left-wide:not(.lagom-layout-left) .app-nav-secondary .app-nav-header {
    background: var(--secondary-block-bg-h); }
    .lagom-layout-top:not(.lagom-layout-left) .app-nav-secondary .app-nav-header .app-nav-toggle .icon-bar,
    .lagom-layout-left-wide:not(.lagom-layout-left) .app-nav-secondary .app-nav-header .app-nav-toggle .icon-bar {
      background-color: var(--primary-block-text-color); } }

@media (max-width: 479.98px) {
  .app-nav-header .container {
    position: relative; }
    .app-nav-header .container .top-nav [menuitemname="Notifications"] {
      position: static; }
      .app-nav-header .container .top-nav [menuitemname="Notifications"] .dropdown-menu {
        left: var(--layout-container-gutter);
        right: var(--layout-container-gutter);
        width: unset; } }

/*
*******************************************
App - Navigation Menu
*******************************************
*/
.app-nav-menu .menu {
  padding: 0;
  margin: 0;
  list-style: none; }
  .app-nav-menu .menu > li > a {
    display: flex;
    align-items: center; }
  .app-nav-menu .menu > li > a:not(.btn),
  .app-nav-menu .menu > li > a > .ls,
  .app-nav-menu .menu > li > a > .lm {
    transition: color var(--transition-base); }
  .app-nav-menu .menu-right {
    white-space: nowrap; }

.app-nav-menu .menu > li.nav-item-text-only > a > i,
.app-nav-menu .menu > li.nav-item-text-only > a > svg,
.app-nav-menu .menu > li.nav-item-text-only > a > img,
.app-nav-menu .menu > li.nav-item-text-only > a > .notification-icon-container {
  display: none; }

.app-nav-menu .menu > li .badge {
  margin-left: var(--spacing-1x); }

.app-nav-menu .menu > li > div.dropdown-menu > li.nav-item-text-only > a > i,
.app-nav-menu .menu > li > div.dropdown-menu > li.nav-item-text-only > a > svg,
.app-nav-menu .menu > li > div.dropdown-menu > li.nav-item-text-only > a > img,
.app-nav-menu .menu > li > ul.dropdown-menu > li.nav-item-text-only > a > i,
.app-nav-menu .menu > li > ul.dropdown-menu > li.nav-item-text-only > a > svg,
.app-nav-menu .menu > li > ul.dropdown-menu > li.nav-item-text-only > a > img {
  display: none; }

.app-nav-menu .menu > li > div.dropdown-menu .dropdown-menu-list .dropdown-menu-item.nav-item-text-only > a > i,
.app-nav-menu .menu > li > div.dropdown-menu .dropdown-menu-list .dropdown-menu-item.nav-item-text-only > a > svg,
.app-nav-menu .menu > li > div.dropdown-menu .dropdown-menu-list .dropdown-menu-item.nav-item-text-only > a > img,
.app-nav-menu .menu > li > ul.dropdown-menu .dropdown-menu-list .dropdown-menu-item.nav-item-text-only > a > i,
.app-nav-menu .menu > li > ul.dropdown-menu .dropdown-menu-list .dropdown-menu-item.nav-item-text-only > a > svg,
.app-nav-menu .menu > li > ul.dropdown-menu .dropdown-menu-list .dropdown-menu-item.nav-item-text-only > a > img {
  display: none; }

.app-nav-menu .menu > li > div.dropdown-menu > li.nav-header,
.app-nav-menu .menu > li > ul.dropdown-menu > li.nav-header {
  padding: var(--spacing-1x) var(--spacing-3x);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg);
  color: var(--text-heading-color); }

.app-nav-menu .menu > li > div.dropdown-menu > li:not(.dropdown-header) + .nav-header,
.app-nav-menu .menu > li > ul.dropdown-menu > li:not(.dropdown-header) + .nav-header {
  margin-top: var(--spacing-1x); }

.app-nav-menu .menu > li > div.dropdown-menu > li.dropdown-header + .nav-header,
.app-nav-menu .menu > li > ul.dropdown-menu > li.dropdown-header + .nav-header {
  margin-top: -4px; }

.app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu .nav-item-icon-only > a .menu-item-content,
.app-nav-menu .menu > li.dropdown-extended div.dropdown-menu .nav-item-icon-only > a .menu-item-content, .app-nav-menu .menu > li.dropdown-mega ul.dropdown-menu .nav-item-icon-only > a .menu-item-content,
.app-nav-menu .menu > li.dropdown-mega div.dropdown-menu .nav-item-icon-only > a .menu-item-content {
  display: none !important; }

.app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a i {
  align-self: center;
  margin-top: 6px; }

.app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a img {
  height: unset; }

.app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a .menu-item-content {
  display: flex;
  flex-direction: column; }
  .app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a .menu-item-content .menu-item-title {
    display: flex;
    align-items: center;
    color: var(--dropdown-header-color);
    transition: color var(--transition-base); }
  .app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a .menu-item-content .menu-item-desc {
    color: var(--text-lighter-color);
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs);
    font-weight: var(--font-weight-base);
    white-space: break-spaces; }
    @media (max-width: 991.98px) {
      .app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a .menu-item-content .menu-item-desc {
        display: none; } }

.app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a:hover .menu-item-content .menu-item-title, .app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a:focus-visible .menu-item-content .menu-item-title {
  color: var(--dropdown-link-hover-color); }

.app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li.nav-header {
  padding: var(--spacing-1x) var(--spacing-3x) var(--spacing-1x); }

.app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li .badge {
  margin-left: auto; }

.app-nav-menu .menu > li .label {
  margin-left: var(--spacing-1x); }

.app-nav-menu .menu > li .dropdown-menu-collapse > li > a i, .app-nav-menu .menu > li .dropdown-menu-collapse > li > a svg, .app-nav-menu .menu > li .dropdown-menu-collapse > li > a img {
  display: none; }

.lagom-layout-left-wide .app-nav-menu .menu > li.dropdown-extended ul.dropdown-menu > li > a .menu-item-content .menu-item-desc {
  display: none; }

.lagom-layout-left-wide .app-nav-primary .menu > li.dropdown-extended ul.dropdown-menu > li > a .menu-item-content .menu-item-title, .lagom-layout-left-wide .app-nav-secondary .menu > li.dropdown-extended ul.dropdown-menu > li > a .menu-item-content .menu-item-title {
  color: var(--primary-block-link-color); }

.lagom-layout-left-wide .app-nav-primary .menu > li.dropdown-extended ul.dropdown-menu > li > a:hover .menu-item-content .menu-item-title, .lagom-layout-left-wide .app-nav-secondary .menu > li.dropdown-extended ul.dropdown-menu > li > a:hover .menu-item-content .menu-item-title {
  color: var(--primary-block-link-hover-color); }

/*
*******************************************
Navigation Menu on Mobile
*******************************************
*/
@media (max-width: 991.98px) {
  .email-verification,
  .custom-integration,
  .app-header,
  .app-main,
  .app-nav,
  .app-nav-header {
    transition: transform var(--transition-base); }
  .app-nav {
    position: relative;
    z-index: 1001; }
  .nav-mobile-dropdown .app-nav-menu {
    display: block;
    visibility: hidden;
    opacity: 0;
    top: var(--mob-app-nav-header-height);
    position: fixed;
    margin: 0 var(--mob-dropdown-nav-margin-h);
    z-index: var(--zindex-navbar-fixed);
    width: calc(100% - calc(2* var(--mob-dropdown-nav-margin-h)));
    padding: var(--mob-dropdown-nav-padding-v) var(--mob-dropdown-nav-padding-h);
    box-shadow: var(--mob-dropdown-nav-box-shadow);
    background: var(--mob-dropdown-nav-bg);
    -webkit-backdrop-filter: var(--mob-dropdown-nav-bg-filter);
    backdrop-filter: var(--mob-dropdown-nav-bg-filter);
    border-radius: var(--mob-dropdown-nav-border-radius);
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(100vh - 150px);
    transition: var(--transition-base); }
    .nav-mobile-dropdown .app-nav-menu > .container {
      padding: 0;
      margin: 0;
      max-width: 100%; }
    .nav-mobile-dropdown .app-nav-menu .logo {
      display: none; }
    .nav-mobile-dropdown .app-nav-menu .menu > li {
      transition: color var(--transition-base); }
      .nav-mobile-dropdown .app-nav-menu .menu > li:not(.dropdown) {
        transition: var(--transition-base); }
        .nav-mobile-dropdown .app-nav-menu .menu > li:not(.dropdown).active {
          background: var(--mob-dropdown-nav-bg-active); }
          .nav-mobile-dropdown .app-nav-menu .menu > li:not(.dropdown).active > a:not(.btn) .item-text {
            color: var(--mob-dropdown-nav-link-active-color); }
          .nav-mobile-dropdown .app-nav-menu .menu > li:not(.dropdown).active > a:not(.btn) .ls.ls-caret {
            color: var(--mob-dropdown-nav-link-active-color); }
      .nav-mobile-dropdown .app-nav-menu .menu > li.show:not(.nav-item-show-md) > a .item-text, .nav-mobile-dropdown .app-nav-menu .menu > li:hover:not(.nav-item-show-md) > a .item-text {
        color: var(--mob-dropdown-nav-link-hover-color); }
      .nav-mobile-dropdown .app-nav-menu .menu > li.show:not(.nav-item-show-md) > a .ls.ls-caret, .nav-mobile-dropdown .app-nav-menu .menu > li:hover:not(.nav-item-show-md) > a .ls.ls-caret {
        color: var(--mob-dropdown-nav-link-hover-color); }
      .nav-mobile-dropdown .app-nav-menu .menu > li:before {
        display: none; }
      .nav-mobile-dropdown .app-nav-menu .menu > li.mobile-divider {
        border-bottom: 1px solid var(--brand-primary-lighter-2);
        padding: 0 var(--spacing-3x);
        padding-bottom: var(--spacing-3x);
        margin-bottom: var(--spacing-3x);
        margin-top: var(--spacing-4x); }
        .nav-mobile-dropdown .app-nav-menu .menu > li.mobile-divider > a {
          box-shadow: var(--box-shadow-base); }
      .nav-mobile-dropdown .app-nav-menu .menu > li > a.dropdown-toggle {
        position: relative;
        overflow: hidden; }
      .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) {
        padding: var(--mob-dropdown-nav-link-padding-v) var(--mob-dropdown-nav-link-padding-h);
        font-size: var(--mob-dropdown-nav-link-font-size);
        font-weight: var(--mob-dropdown-nav-link-font-weight); }
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn):before {
          display: none; }
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > i,
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i {
          color: var(--app-nav-left-icon-color); }
          .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > i:first-child,
          .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i:first-child {
            height: var(--app-nav-left-icon-size);
            width: var(--app-nav-left-icon-size);
            font-size: var(--app-nav-left-icon-size);
            text-align: center; }
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > svg + .item-text,
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > img + .item-text,
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > i + .item-text,
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container + .item-text {
          margin-left: var(--ui-nav-link-icon-spacing-lg); }
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > svg,
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > img {
          max-width: var(--mob-dropdown-nav-svg-icon-size); }
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > .item-text {
          display: block;
          max-width: 100%;
          white-space: normal;
          overflow: hidden;
          text-overflow: ellipsis;
          transition: var(--transition-base);
          color: var(--mob-dropdown-nav-link-color); }
        .nav-mobile-dropdown .app-nav-menu .menu > li > a:not(.btn) > .ls.ls-caret {
          color: var(--mob-dropdown-nav-caret-color);
          margin-left: auto;
          transition: var(--transition-base); }
      .nav-mobile-dropdown .app-nav-menu .menu > li > a.btn {
        margin: var(--spacing-2x) var(--spacing-3x); }
      .nav-mobile-dropdown .app-nav-menu .menu > li:not(.show) .dropdown-menu-arrow {
        opacity: 0;
        visibility: hidden; }
      .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu {
        position: static;
        float: none;
        padding-top: 0;
        padding-bottom: 0;
        box-shadow: var(--mob-dropdown-nav-list-box-shadow);
        margin: var(--mob-dropdown-nav-list-padding-v) var(--mob-dropdown-nav-list-padding-h);
        transition: var(--transition-base); }
        .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu-arrow-box {
          position: absolute;
          bottom: -16px;
          left: 50%; }
        .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu-arrow {
          transform: translateX(-50%) rotate(45deg);
          width: 24px;
          height: 24px;
          background: var(--mob-dropdown-nav-list-bg);
          border-radius: var(--border-radius-base);
          opacity: 1;
          transition: opacity var(--transition-base) visibility var(--transition-base);
          visibility: visible;
          transition: opacity 0.14s ease; }
        .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu:not(.show) {
          height: 0;
          padding: 0; }
        .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-body > .dropdown-menu-content > div:not(.dropdown-menu-parent) li:first-child {
          padding-top: var(--nav-divider-margin-y); }
        .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-body > .dropdown-menu-content > div:not(.dropdown-menu-parent) li:last-child {
          padding-bottom: var(--nav-divider-margin-y); }
        .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-parent .nav-header {
          background: var(--mob-dropdown-nav-list-bg); }
        .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-parent:first-child .nav-header {
          padding-top: var(--spacing-2x); }
        .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li {
          background: var(--mob-dropdown-nav-list-bg); }
          .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li.nav-divider {
            position: relative;
            margin-top: 0;
            margin-bottom: 0;
            padding: var(--nav-divider-margin-y) 0;
            border: none; }
            .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li.nav-divider:before {
              content: '';
              display: block;
              height: 1px;
              width: 100%;
              background: var(--dropdown-divider-bg); }
          .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li.active > a {
            background-color: var(--mob-dropdown-nav-link-active-bg); }
            .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li.active > a .menu-item-content .menu-item-desc {
              color: var(--dropdown-link-color); }
          .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li > a {
            background-color: var(--mob-dropdown-nav-link-bg);
            padding: var(--mob-dropdown-nav-link-list-padding-v) var(--mob-dropdown-nav-link-list-padding-h); }
            .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li > a .menu-item-content {
              font-size: var(--font-size-base);
              line-height: var(--line-height-base);
              font-weight: var(--font-weight-h5); }
              .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li > a .menu-item-content .menu-item-desc {
                margin-top: 6px;
                font-size: var(--font-size-sm);
                line-height: var(--line-height-sm);
                font-weight: var(--font-weight-light);
                display: block;
                white-space: break-spaces; }
              .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li > a .menu-item-content .label.label-default {
                background-color: var(--gray-lighter-4); }
            .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li > a > svg {
              width: var(--mob-dropdown-nav-svg-icon-size);
              height: var(--mob-dropdown-nav-svg-icon-size); }
          .nav-mobile-dropdown .app-nav-menu .menu > li .dropdown-menu li > .nav-header-item {
            padding: var(--mob-dropdown-nav-link-list-padding-v) var(--mob-dropdown-nav-link-list-padding-h); }
      .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .nav-header {
        color: var(--dropdown-link-color);
        font-size: var(--font-size-lg);
        line-height: var(--line-height-lg);
        font-weight: var(--font-weight-medium);
        padding: var(--mob-dropdown-nav-link-list-padding-v) var(--mob-dropdown-nav-link-list-padding-h); }
      .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list {
        list-style: none;
        padding-left: 0;
        flex-grow: 1;
        flex-basis: 0; }
        .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > i {
          font-size: var(--ui-nav-link-icon-size-sm);
          vertical-align: middle; }
        .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content {
          display: flex;
          align-items: flex-start;
          flex-direction: column; }
          .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content.has-desc {
            text-align: left;
            font-size: var(--font-size-lg);
            line-height: var(--line-height-lg);
            font-weight: var(--font-weight-medium);
            margin-top: var(--spacing-1x);
            margin-bottom: var(--spacing-1x); }
          .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content .menu-item-title {
            display: flex;
            align-items: center;
            white-space: break-spaces; }
          .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content .menu-item-desc {
            margin-top: var(--spacing-1x);
            color: var(--text-body-color);
            font-size: var(--font-size-sm);
            line-height: var(--line-height-sm);
            font-weight: var(--font-weight-light);
            white-space: break-spaces; } }
          @media (max-width: 991.98px) and (max-width: 991.98px) {
            .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content .menu-item-desc {
              display: none; } }

@media (max-width: 991.98px) {
      .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar {
        margin-left: auto;
        padding: var(--spacing-2x) var(--spacing-3x); }
        .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-content {
          height: 100%;
          background: var(--mob-dropdown-nav-list-sidebar-bg);
          border-radius: var(--border-radius-lg);
          color: var(--text-body-color);
          padding: var(--spacing-3x);
          font-size: var(--font-size-base);
          line-height: var(--line-height-base);
          font-weight: var(--font-weight-light); }
        .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic {
          max-width: 180px;
          width: 180px; }
          .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic.predefined-graphic {
            position: relative;
            height: 72px; }
            .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic.predefined-graphic .promo-slider-icon {
              height: 72px;
              position: absolute; }
          .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic > img,
          .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic > svg {
            max-width: 100%; }
          .nav-mobile-dropdown .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic + .dropdown-menu-sidebar-desc {
            margin-top: var(--spacing-3x); }
  .lagom.menu-open.nav-mobile-dropdown .app-nav-menu {
    visibility: visible;
    opacity: 1;
    top: calc(var(--mob-app-nav-header-height) + var(--spacing-2x)); }
  .lagom.menu-open:not(.nav-mobile-dropdown) .app-nav-menu {
    transform: translateX(0); }
  .lagom.menu-open:not(.nav-mobile-dropdown) .email-verification,
  .lagom.menu-open:not(.nav-mobile-dropdown) > .custom-integration,
  .lagom.menu-open:not(.nav-mobile-dropdown) .app-header,
  .lagom.menu-open:not(.nav-mobile-dropdown) .app-nav-header,
  .lagom.menu-open:not(.nav-mobile-dropdown) .app-main {
    transform: translateX(var(--mob-app-nav-width)); }
  .lagom.menu-open:not(.nav-mobile-dropdown) .app-main {
    position: relative; }
    .lagom.menu-open:not(.nav-mobile-dropdown) .app-main:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 1000; } }

@media (min-width: 992px) {
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu {
    display: flex;
    padding: 0;
    left: unset;
    right: -80px;
    border-radius: 24px;
    overflow-y: unset !important; }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu.dropdown-menu--fixed {
      max-width: calc(100% - calc(2* var(--layout-container-gutter))); }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li {
      width: calc(calc(var(--container-xl-max-width) - var(--layout-container-gutter))/4); }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a {
        flex-direction: column;
        font-weight: var(--font-weight-h5);
        font-size: var(--font-size-h5);
        line-height: var(--line-height-h5);
        padding: var(--spacing-4x);
        transition: color var(--transition-base), background var(--transition-base); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a > svg {
          width: 120px;
          height: 120px;
          margin-bottom: var(--spacing-3x);
          margin-right: 0; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a:hover, .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a:focus-visible {
          background: #EEF3FF;
          color: var(--brand-secondary); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a .menu-item-content {
          text-align: center; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a .menu-item-desc {
          margin-top: var(--spacing-1x);
          color: var(--text-body-color);
          font-size: var(--font-size-sm);
          line-height: var(--line-height-sm);
          font-weight: var(--font-weight-light);
          white-space: break-spaces;
          text-align: center;
          display: block; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a .menu-item-content {
          display: flex;
          align-items: center;
          flex-direction: column; } }
    @media (min-width: 992px) and (min-width: 992px) and (max-width: 1319.98px) {
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a {
        padding: var(--spacing-2x); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-horizontal .dropdown-menu > li > a svg {
          margin-bottom: 0; } }

@media (min-width: 992px) {
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu > li > a > svg,
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu > li > a > img,
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu-list > li > a > svg,
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu-list > li > a > img, .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu > li > a > svg,
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu > li > a > img,
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-list > li > a > svg,
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-list > li > a > img {
    align-self: center;
    width: var(--app-nav-top-menu-dropdown-icon-size);
    min-width: var(--app-nav-top-menu-dropdown-icon-size);
    height: var(--app-nav-top-menu-dropdown-icon-size);
    margin-right: var(--spacing-2x); }
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu > li > a img,
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu-list > li > a img, .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu > li > a img,
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-list > li > a img {
    height: unset; }
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended.dropdown-extended-right .dropdown-menu {
    right: calc(-1* var(--app-nav-top-condensed-menu-link-padding-h));
    left: auto !important; }
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu {
    padding: var(--spacing-2x) 0;
    min-width: var(--extended-nav-dropdown-width); }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu.dropdown-menu-collapse {
      margin-top: var(--spacing-1x);
      padding: 6px 0; }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu > li > a {
      padding: var(--spacing-2x) var(--spacing-4x); }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu > li > a:hover, .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu > li > a:focus-visible {
        background: var(--extended-nav-link-hover-bg);
        color: var(--extended-nav-link-hover-color);
        padding-left: var(--spacing-4x); }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu > li > a .menu-item-content {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        text-align: left;
        font-size: var(--font-size-lg);
        line-height: var(--line-height-lg);
        font-weight: var(--font-weight-medium); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu > li > a .menu-item-content .menu-item-desc {
          margin-top: var(--spacing-1x);
          color: var(--text-body-color);
          font-size: var(--font-size-sm);
          line-height: var(--line-height-sm);
          font-weight: var(--font-weight-light);
          white-space: break-spaces;
          display: block; }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu.dropdown-menu-collapse > li > a {
      padding: var(--spacing-1x) var(--spacing-2x); }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu.dropdown-menu-collapse > li > a:hover {
        padding-left: var(--spacing-3x); }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu.dropdown-menu-collapse > li > a .menu-item-content {
        font-size: var(--font-size-md);
        line-height: var(--line-height-md); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended .dropdown-menu.dropdown-menu-collapse > li > a .menu-item-content .menu-item-desc {
          margin-top: 0;
          font-size: var(--font-size-sm);
          line-height: var(--line-height-sm); }
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .nav-header-item {
    font-size: var(--font-size-lg);
    line-height: var(--line-height-lg);
    font-weight: var(--font-weight-medium);
    transition: background var(--transition-base), color var(--transition-base);
    padding-block: var(--spacing-2x); }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .nav-header-item:hover, .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .nav-header-item:focus-visible {
      color: var(--text-primary-color); }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .nav-header-item:hover > .item-header-text > i,
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .nav-header-item:hover > b, .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .nav-header-item:focus-visible > .item-header-text > i,
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .nav-header-item:focus-visible > b {
        color: var(--text-primary-color); }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .nav-header-item svg {
      width: var(--app-nav-top-menu-dropdown-icon-size);
      min-width: var(--app-nav-top-menu-dropdown-icon-size);
      height: var(--app-nav-top-menu-dropdown-icon-size); }
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse .dropdown-menu {
    margin: 0 var(--dropdown-link-padding-h) var(--spacing-2x); }
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-extended li.nav-header-collapse:last-child .dropdown-menu {
    margin-bottom: var(--spacing-1x); }
  .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega {
    position: static; }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu {
      left: var(--layout-container-gutter);
      right: var(--layout-container-gutter);
      padding: var(--spacing-3x) var(--spacing-1x); }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-parent {
        flex-grow: 1;
        flex-basis: 0; }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-body {
        display: flex; }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content {
        display: flex;
        flex: 1;
        flex-wrap: wrap; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-cols {
          display: flex; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .nav-header {
          color: var(--dropdown-header-color);
          font-size: var(--font-size-lg);
          line-height: var(--line-height-lg);
          font-weight: var(--font-weight-medium);
          padding: var(--dropdown-link-padding-v) var(--dropdown-link-padding-h);
          padding-top: 0;
          padding-bottom: 12px; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-item + .nav-header {
          padding-top: 12px; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list {
          list-style: none;
          padding-left: 0;
          flex-grow: 1;
          flex-basis: 0;
          min-width: 180px; }
          .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > i {
            font-size: var(--ui-nav-link-icon-size-sm);
            vertical-align: middle; }
          .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content {
            display: flex;
            align-items: flex-start;
            flex-direction: column; }
            .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content.has-desc {
              text-align: left;
              font-size: var(--font-size-lg);
              line-height: var(--line-height-lg);
              font-weight: var(--font-weight-medium);
              margin-top: var(--spacing-1x);
              margin-bottom: var(--spacing-1x); }
            .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content .menu-item-title {
              display: flex;
              align-items: center;
              white-space: break-spaces; }
            .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content .menu-item-desc {
              margin-top: var(--spacing-1x);
              color: var(--text-body-color);
              font-size: var(--font-size-sm);
              line-height: var(--line-height-sm);
              font-weight: var(--font-weight-light);
              white-space: break-spaces; } }
            @media (min-width: 992px) and (max-width: 991.98px) {
              .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content .menu-item-desc {
                display: none; } }

@media (min-width: 992px) {
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-item .dropdown-menu-parent a .menu-item-title {
          transition: color var(--transition-base);
          color: var(--dropdown-header-color); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-item .dropdown-menu-parent a:hover .menu-item-title, .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-item .dropdown-menu-parent a:focus-visible .menu-item-title {
          color: var(--dropdown-link-hover-color); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-item .dropdown-menu-parent:has(div.nav-header) a .menu-item-title {
          transition: color var(--transition-base);
          color: var(--dropdown-link-color); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-item .dropdown-menu-parent:has(div.nav-header) a:hover .menu-item-title, .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-content .dropdown-menu-item .dropdown-menu-parent:has(div.nav-header) a:focus-visible .menu-item-title {
          color: var(--dropdown-link-hover-color); }
      .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar {
        margin-left: auto;
        padding: var(--spacing-1x) var(--spacing-3x) var(--spacing-1x) var(--spacing-4x); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-content {
          max-width: 276px;
          width: 276px;
          height: 100%;
          background: var(--gray-faded);
          border-radius: var(--border-radius-lg);
          color: var(--text-body-color);
          padding: var(--spacing-3x);
          font-size: var(--font-size-base);
          line-height: var(--line-height-base);
          font-weight: var(--font-weight-light); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic.predefined-graphic {
          position: relative;
          height: 72px; }
          .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic.predefined-graphic .promo-slider-icon {
            height: 72px;
            position: absolute; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic > img,
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic > svg {
          max-width: 100%; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega .dropdown-menu-sidebar-graphic + .dropdown-menu-sidebar-desc {
          margin-top: var(--spacing-3x); }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega li.nav-header-collapse .nav-header {
      padding-top: 6px; }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega li.nav-header-collapse .nav-header-item .nav-header-text {
      display: flex;
      align-items: center; }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega li.nav-header-collapse .nav-header-item .ls-caret {
      margin-left: 12px; }
    .lagom-layout-top .app-nav-menu .menu > li.dropdown-mega li.nav-header-collapse li + li.nav-header {
      padding-top: 12px; }
  .lagom-layout-top .app-nav-menu .menu > li.nav-item-icon-only .badge:not(.badge-dot) {
    position: absolute;
    top: calc(var(--app-nav-top-menu-link-padding-v) + 6px);
    right: calc(var(--app-nav-top-menu-link-padding-h) - 13px); } }

.lagom-layout-top .app-nav-only-logo .app-nav-menu > .container {
  height: var(--app-nav-header-height); }

@media (min-width: 992px) {
  .lagom-layout-top.lagom-layout-condensed .app-nav-menu .menu > li.nav-item-icon-only .badge:not(.badge-dot) {
    position: absolute;
    top: calc(var(--app-nav-top-condensed-menu-link-padding-v) + 6px);
    right: calc(var(--app-nav-top-condensed-menu-link-padding-h) - 13px); } }

.app-nav-only-logo .app-nav-header > .container,
.app-nav-only-logo .app-nav-menu > .container {
  justify-content: center !important; }
  .app-nav-only-logo .app-nav-header > .container > *:not(.logo),
  .app-nav-only-logo .app-nav-menu > .container > *:not(.logo) {
    display: none; }
  .app-nav-only-logo .app-nav-header > .container .logo,
  .app-nav-only-logo .app-nav-menu > .container .logo {
    margin-right: 0; }

/*
*******************************************
Main - Body
*******************************************
*/
.no-transition *, .no-transition .tile {
  transition: none !important; }

.main-body {
  margin: 0;
  padding: var(--main-body-padding-v) 0; }
  .main-body.has-banner {
    padding-top: 0; }

@media (max-width: 991.98px) {
  .main-body {
    overflow: hidden; } }

/*
*******************************************
Main - Body Sidebar
*******************************************
*/
.page-login .main-body.main-body-has-sidebar + p[style="text-align:center;"] {
  text-align: center;
  position: absolute;
  bottom: 0;
  right: 0;
  background: #fff;
  margin: 0;
  margin-bottom: 0;
  padding: 4px;
  box-shadow: var(--login-box-shadow);
  left: calc(50% - var(--main-body-sidebar-width) - 40px); }
  @media (max-width: 1319.98px) {
    .page-login .main-body.main-body-has-sidebar + p[style="text-align:center;"] {
      left: calc(50% - var(--main-body-sidebar-width) + 115px); } }
  @media (max-width: 991.98px) {
    .page-login .main-body.main-body-has-sidebar + p[style="text-align:center;"] {
      left: 0; } }

@media (max-width: 1319.98px) {
  .page-login.register-page .main-body.main-body-has-sidebar + p[style="text-align:center;"] {
    left: 0; } }

.main-body-has-sidebar {
  display: flex;
  flex-direction: row;
  padding: 0;
  overflow: hidden;
  height: 100vh;
  min-height: 100vh; }
  .main-body-has-sidebar-right {
    flex-direction: row-reverse; }
  .main-body-has-sidebar .main-body-content {
    display: flex;
    justify-content: center;
    width: calc(100% - var(--main-body-sidebar-width));
    padding: var(--main-body-sidebar-padding-v) var(--main-body-sidebar-padding-h);
    overflow-y: scroll; }

.main-body-sidebar {
  width: var(--main-body-sidebar-width);
  padding: var(--main-body-sidebar-padding-v) var(--main-body-sidebar-padding-h);
  overflow-x: hidden;
  overflow-y: auto;
  display: flex;
  flex-direction: column; }
  .main-body-sidebar::-webkit-scrollbar {
    background-color: transparent; }
  .main-body-sidebar .sidebar-content {
    margin-top: auto;
    margin-bottom: auto; }
  .main-body-sidebar .sidebar-content {
    padding-top: var(--main-body-sidebar-padding-v); }
  .main-body-sidebar .sidebar-news-date {
    display: block;
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm); }
  .main-body-sidebar .sidebar-news-title {
    display: block;
    margin-bottom: var(--ui-block-spacing-sm); }
  .main-body-sidebar .sidebar-news-desc,
  .main-body-sidebar .sidebar-news-desc p {
    margin: 0; }

/*
*******************************************
Main - Grid
*******************************************
*/
.main-grid {
  display: flex; }
  .main-grid.row {
    margin: 0; }
  .main-grid:has(.store-order-container) {
    flex-direction: column; }

/*
*******************************************
Main - Content
*******************************************
*/
.main-content {
  flex: 1; }

/* For screens above 992px ONLY */
@media (min-width: 992px) {
  .page-supportticketsubmit-steptwo .main-grid {
    column-gap: var(--main-sidebar-spacing-h); }
    .page-supportticketsubmit-steptwo .main-grid:has(.open-ticket-form) {
      flex-direction: row-reverse; }
    .page-supportticketsubmit-steptwo .main-grid .main-sidebar {
      margin-right: 0; }
  .lagom-layout-left .main-content.main-content-m-w,
  .lagom-layout-top .main-content.main-content-m-w {
    max-width: calc(100% - (var(--main-sidebar-lg-width) * 0.8) - var(--main-sidebar-spacing-h)); }
  body:not(.lagom-layout-left-wide) .main-sidebar + .main-content {
    max-width: calc(100% - (var(--main-sidebar-width) * 0.8 + var(--main-sidebar-spacing-h))); } }

@media (min-width: 1320px) {
  .lagom-layout-left-wide .main-content.main-content-m-w,
  .lagom-layout-left .main-content.main-content-m-w,
  .lagom-layout-top .main-content.main-content-m-w {
    max-width: calc(100% - var(--main-sidebar-lg-width) - var(--main-sidebar-spacing-h)); }
  body:not(.lagom-layout-left-wide) .main-sidebar + .main-content {
    max-width: calc(100% - (var(--main-sidebar-width) + var(--main-sidebar-spacing-h))); }
  .lagom-layout-left-wide .main-sidebar + .main-content {
    max-width: calc(100% - (var(--main-sidebar-width) + var(--main-sidebar-spacing-h))); }
  .lagom-layout-left-wide .main-content + .main-sidebar {
    margin-left: var(--main-sidebar-spacing-h);
    margin-right: 0; }
    .lagom-layout-left-wide .main-content + .main-sidebar.main-sidebar-right {
      order: 2;
      margin-left: var(--main-sidebar-spacing-h);
      margin-right: 0; } }

/*
*******************************************
Main - Sidebar
*******************************************
*/
@media (min-width: 992px) {
  .scroll-up .main-sidebar .sidebar-sticky {
    top: calc(var(--app-nav-header-height) + var(--main-sidebar-sticky-top)); }
  .main-sidebar {
    width: var(--main-sidebar-width);
    margin-right: var(--main-sidebar-spacing-h); }
    .main-sidebar-lg {
      width: var(--main-sidebar-lg-width); }
    .main-sidebar .sidebar-sticky {
      position: sticky;
      top: var(--main-sidebar-sticky-top); }
      .main-sidebar .sidebar-sticky[data-sidebar-sticky] {
        transition: top var(--transition-base); }
  .lagom-layout-left .main-content + .main-sidebar,
  .lagom-layout-top .main-content + .main-sidebar {
    margin-left: var(--main-sidebar-spacing-h);
    margin-right: 0; }
    .lagom-layout-left .main-content + .main-sidebar.main-sidebar-right,
    .lagom-layout-top .main-content + .main-sidebar.main-sidebar-right {
      order: 2;
      margin-left: var(--main-sidebar-spacing-h);
      margin-right: 0; } }

/* For screens below 1199px */
@media (max-width: 1319.98px) {
  .main-grid .main-sidebar {
    width: calc(var(--main-sidebar-width) * 0.8); }
    .main-grid .main-sidebar-lg {
      width: calc(var(--main-sidebar-lg-width) * 0.8); }
  .lagom-layout-left-wide .main-grid {
    flex-direction: column; }
    .lagom-layout-left-wide .main-grid .main-sidebar {
      order: 2;
      margin-top: var(--main-sidebar-spacing-h);
      width: 100%; }
  .page-viewcart .main-grid .main-sidebar-lg {
    min-width: calc(var(--main-sidebar-lg-width) * 0.8); } }

/* For screens below 992px */
@media (max-width: 991.98px) {
  .main-grid {
    flex-direction: column; }
    .main-grid .main-sidebar {
      order: 2;
      margin-top: var(--main-sidebar-spacing-h);
      width: 100%; }
  .main-body-has-sidebar {
    min-height: 100%;
    height: 100%; } }

/*
*******************************************
Main - Top
*******************************************
*/
.main-top {
  padding: var(--main-top-padding);
  background: var(--main-top-bg);
  border-bottom: var(--main-top-border-bottom);
  box-shadow: var(--main-top-box-shadow); }
  .main-top .top-nav {
    float: right; }

/*
*******************************************
Main - Header
*******************************************
*/
.main-header {
  padding-top: var(--main-header-padding-v); }
  .main-header-top {
    column-gap: var(--ui-block-padding-lg); }
    .main-header-top .search-group {
      align-items: center; }
  .main-header-top, .main-header-bottom {
    display: flex;
    justify-content: space-between; }
  .main-header-title {
    margin: 0;
    color: var(--main-header-title-color);
    font-size: var(--main-header-title-font-size);
    font-weight: var(--main-header-title-font-weight);
    line-height: var(--main-header-title-line-height); }
    .main-header-title + p {
      margin: 16px 0 0 0;
      font-size: var(--font-size-base);
      color: var(--text-lighter-color); }
  .main-header-label {
    display: flex;
    gap: var(--spacing-2x);
    margin-top: 12px; }
    .main-header-label-desc {
      display: flex;
      align-items: center;
      max-width: max-content;
      padding: 6px 12px;
      color: var(--main-header-label-desc-color);
      font-size: var(--font-size-base);
      background-color: var(--main-header-label-bg);
      border-radius: var(--border-radius-xs); }
    .main-header-label-name {
      color: var(--main-header-label-name-color); }
    .main-header-label-promo.label-savings {
      max-width: max-content;
      margin-bottom: 0;
      padding: 0; }
      @media (max-width: 767.98px) {
        .main-header-label-promo.label-savings {
          align-items: unset; } }
    .main-header-label-promo i {
      display: flex;
      align-items: center;
      height: 100%; }
      @media (max-width: 767.98px) {
        .main-header-label-promo i {
          height: 24px; } }
    .main-header-label-promo > span {
      display: flex;
      align-items: center;
      height: 100%;
      font-size: var(--font-size-base);
      line-height: var(--line-height-base);
      font-weight: 400;
      white-space: normal;
      padding-inline: 12px; }
      .main-header-label-promo > span b {
        font-weight: 500;
        padding-inline: 8px 12px; }
      .main-header-label-promo > span span {
        height: 100%;
        display: flex;
        align-items: center;
        border-left: 1px solid var(--label-savings-border);
        padding-block: 6px;
        padding-inline: 12px 8px; }
      @media (max-width: 767.98px) {
        .main-header-label-promo > span {
          text-align: left; } }
    .main-header-label-promo .promo-info-icon {
      cursor: pointer; }
  .main-header .search-group .search-field {
    max-width: 256px; }
    .main-header .search-group .search-field:has([data-clear-table-search]) input {
      padding-right: 44px; }
    .main-header .search-group .search-field:has([data-clear-table-search]) button[data-clear-table-search] {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: 50%;
      right: 16px;
      transform: translateY(-50%);
      padding: 0;
      border: none;
      background: transparent;
      padding: var(--ui-block-padding-xs-v); }
      .main-header .search-group .search-field:has([data-clear-table-search]) button[data-clear-table-search] i {
        transition: var(--btn-transition);
        color: var(--gray-icons); }
      .main-header .search-group .search-field:has([data-clear-table-search]) button[data-clear-table-search]:hover i {
        color: var(--link-hover-color); }
  .main-header .breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 6px 0 0;
    background: transparent;
    font-size: var(--main-header-breadcrumb-font-size); }
    .main-header .breadcrumb li {
      display: flex;
      align-items: center; }
      .main-header .breadcrumb li a {
        display: flex;
        align-items: center;
        color: var(--main-header-breadcrumb-color); }
        .main-header .breadcrumb li a:focus-visible, .main-header .breadcrumb li a:hover {
          color: var(--main-header-breadcrumb-color-hover); }
    .main-header .breadcrumb > .active {
      color: var(--main-header-breadcrumb-color-active); }
    .main-header .breadcrumb small {
      white-space: nowrap;
      overflow: hidden; }

@media (max-width: 991.98px) {
  .page-configureproductdomain .main-header-label {
    flex-direction: column; } }

@media (max-width: 767.98px) {
  .main-header-top {
    flex-wrap: wrap; }
  .main-header .breadcrumb li:first-of-type a:before {
    display: none; }
  .main-header .search-group {
    margin-top: var(--ui-block-padding-base);
    width: 100%; } }

/*
*******************************************
Main - Header Banner
*******************************************
*/
.main-header-banner,
.lagom-layout-banner .main-header {
  background: var(--main-header-banner-bg);
  padding: var(--main-header-padding-v) 0;
  margin: 0; }
  .main-header-banner .main-header-title,
  .lagom-layout-banner .main-header .main-header-title {
    margin: 0;
    color: var(--main-header-banner-title-color); }
    .main-header-banner .main-header-title + p,
    .lagom-layout-banner .main-header .main-header-title + p {
      color: var(--main-header-banner-breadcrumb-color); }
  .main-header-banner .main-header-bottom li::before,
  .lagom-layout-banner .main-header .main-header-bottom li::before {
    color: var(--main-header-banner-breadcrumb-color); }
  .main-header-banner-label-desc,
  .lagom-layout-banner .main-header-label-desc {
    background-color: var(--main-header-banner-label-bg);
    color: var(--main-header-banner-label-desc-color); }
  .main-header-banner-label-name,
  .lagom-layout-banner .main-header-label-name {
    color: var(--main-header-banner-label-name-color); }
  .main-header-banner-label .main-header-label-promo,
  .lagom-layout-banner .main-header-label .main-header-label-promo {
    background-color: var(--main-header-banner-save-label-bg);
    color: var(--main-header-banner-save-label-color); }
    .main-header-banner-label .main-header-label-promo .fill-change,
    .lagom-layout-banner .main-header-label .main-header-label-promo .fill-change {
      fill: var(--main-header-banner-save-label-color); }
    .main-header-banner-label .main-header-label-promo > span span,
    .lagom-layout-banner .main-header-label .main-header-label-promo > span span {
      border-left: 1px solid var(--main-header-banner-save-label-border); }
  .main-header-banner .main-header-bottom .breadcrumb > li > a,
  .lagom-layout-banner .main-header .main-header-bottom .breadcrumb > li > a {
    color: var(--main-header-banner-breadcrumb-color); }
  .main-header-banner .main-header-bottom .breadcrumb > .active,
  .lagom-layout-banner .main-header .main-header-bottom .breadcrumb > .active {
    color: var(--main-header-banner-breadcrumb-color-active); }
  .main-header-banner .main-header-bottom .text-lighter,
  .lagom-layout-banner .main-header .main-header-bottom .text-lighter {
    color: var(--main-header-banner-breadcrumb-color); }

.banner-domain-register .main-header-label {
  justify-content: center;
  margin-top: 16px; }
  .banner-domain-register .main-header-label-promo {
    width: 100%;
    max-width: var(--search-group-max-width); }

/*
*******************************************
Main - Section
*******************************************
*/
.main-section {
  padding: 56px 0; }
  .main-section:last-child {
    padding-bottom: 0; }

/*
*******************************************
Main - Banner
*******************************************
*/
.main-banner {
  position: relative;
  display: flex;
  align-items: center;
  padding: var(--site-banner-padding-v) 0;
  background: var(--site-banner-bg); }
  .main-banner > * {
    position: relative;
    z-index: 2; }
  .main-banner.has-subnav {
    padding-bottom: 146px; }
  .main-banner .banner-title {
    margin-bottom: var(--site-banner-element-spacing);
    font-size: var(--site-banner-title-font-size);
    font-weight: var(--site-banner-title-font-weight);
    line-height: var(--site-banner-title-line-height); }
  .main-banner .banner-desc {
    font-size: var(--site-banner-desc-font-size);
    font-weight: var(--site-banner-desc-font-weight);
    line-height: var(--site-banner-desc-line-height); }
  .main-banner .banner-actions {
    margin-top: var(--site-banner-element-spacing); }

@media (max-width: 991.98px) {
  .main-banner {
    min-height: auto; }
  .page-type-full {
    padding-top: 0 !important; } }

/*
*******************************************
Main - Footer
*******************************************
*/
.main-footer {
  margin: 0;
  background: var(--main-footer-bg);
  box-shadow: var(--main-footer-box-shadow); }
  .main-footer .footer-nav {
    list-style: none;
    padding: 0;
    margin: 0; }
    .main-footer .footer-nav > li > a {
      display: flex;
      align-items: center;
      padding: var(--main-footer-link-padding-v) var(--main-footer-link-padding-h);
      color: var(--main-footer-link-color);
      font-size: var(--main-footer-link-font-size);
      line-height: var(--main-footer-link-line-height);
      font-weight: var(--main-footer-link-font-weight);
      transition: var(--transition-base); }
      .main-footer .footer-nav > li > a > i,
      .main-footer .footer-nav > li > a > svg,
      .main-footer .footer-nav > li > a > img {
        height: var(--main-footer-link-icon-size);
        width: var(--main-footer-link-icon-size);
        transition: var(--transition-base); }
        .main-footer .footer-nav > li > a > i:not(:last-child),
        .main-footer .footer-nav > li > a > svg:not(:last-child),
        .main-footer .footer-nav > li > a > img:not(:last-child) {
          margin-right: var(--ui-nav-link-icon-spacing); }
      .main-footer .footer-nav > li > a > img {
        height: unset; }
      .main-footer .footer-nav > li > a > i {
        color: var(--main-footer-link-icon-color);
        font-size: var(--main-footer-link-icon-size); }
      .main-footer .footer-nav > li > a > svg {
        width: var(--main-footer-link-icon-size); }
        .main-footer .footer-nav > li > a > svg:not(.svg-icon) > path {
          fill: var(--main-footer-link-icon-color); }
      .main-footer .footer-nav > li > a:hover, .main-footer .footer-nav > li > a:focus, .main-footer .footer-nav > li > a:active {
        color: var(--main-footer-link-hover-color); }
        .main-footer .footer-nav > li > a:hover > i, .main-footer .footer-nav > li > a:focus > i, .main-footer .footer-nav > li > a:active > i {
          color: var(--main-footer-link-icon-hover-color); }
        .main-footer .footer-nav > li > a:hover svg:not(.svg-icon) > path, .main-footer .footer-nav > li > a:focus svg:not(.svg-icon) > path, .main-footer .footer-nav > li > a:active svg:not(.svg-icon) > path {
          fill: var(--main-footer-link-icon-hover-color); }
  .main-footer .footer-nav-h {
    display: flex;
    margin: 0 calc(-1 * var(--main-footer-h-link-padding-h)); }
    .main-footer .footer-nav-h > li > a {
      padding: var(--main-footer-h-link-padding-v) var(--main-footer-h-link-padding-h); }
  .main-footer .footer-bottom {
    width: 100%;
    padding: var(--spacing-2x) 0;
    border-top: var(--main-footer-border-top); }
    .main-footer .footer-bottom > .container {
      display: flex;
      align-items: center; }
    .main-footer .footer-bottom .footer-payment-gateway {
      margin-right: var(--spacing-2x);
      margin-left: var(--spacing-2x);
      justify-content: center; }
    .main-footer .footer-bottom:has(.footer-payment-gateway) .footer-copyright {
      min-width: 220px; }
    .main-footer .footer-bottom:has(.footer-payment-gateway) .footer-nav a {
      white-space: nowrap; }
  .main-footer .footer-copyright {
    flex: 1; }
  .main-footer .footer-payment {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: var(--spacing-2x); }
    .main-footer .footer-payment-gateway {
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      gap: var(--spacing-1x); }
      .main-footer .footer-payment-gateway .gateway-icon-lg svg, .main-footer .footer-payment-gateway .gateway-icon-lg img {
        min-width: 62px;
        min-height: 42px; }
      .main-footer .footer-payment-gateway svg {
        background: var(--gray-faded);
        border-radius: var(--border-radius-xs); }
      .main-footer .footer-payment-gateway img {
        border-radius: var(--border-radius-xs);
        max-height: 32px;
        min-width: 48px; }
    .main-footer .footer-payment-header {
      color: var(--text-body-color);
      font-size: var(--font-size-xs);
      line-height: var(--line-height-xs);
      font-weight: var(--font-weight-light); }
  .main-footer-extended-gray .footer-payment-gateway svg {
    background: #EFEFF1; }
  .main-footer-extended-secondary .fill-white, .main-footer-extended-primary .fill-white {
    fill: #fff; }
  .main-footer-extended-secondary .fill-gray, .main-footer-extended-primary .fill-gray {
    fill: #E0E0E0; }
  .main-footer-extended-secondary .fill-transparent, .main-footer-extended-primary .fill-transparent {
    fill: transparent; }
  .main-footer-extended-secondary .footer-payment-gateway svg, .main-footer-extended-primary .footer-payment-gateway svg {
    background: rgba(255, 255, 255, 0.25); }
  .main-footer-extended-secondary .footer-payment-header, .main-footer-extended-primary .footer-payment-header {
    color: var(--text-secondary-body-color); }

@media (max-width: 991.98px) {
  .main-footer .footer-bottom .container {
    flex-direction: column-reverse;
    row-gap: 16px; }
  .main-footer .footer-bottom p {
    text-align: center;
    font-weight: var(--font-weight-light); }
  .main-footer .footer-bottom .footer-copyright {
    text-align: center; } }

@media (max-width: 767.98px) {
  .main-footer .footer-bottom .footer-nav-h {
    flex-direction: column;
    align-items: center; }
    .main-footer .footer-bottom .footer-nav-h .dropdown-menu {
      left: 50%;
      transform: translate(-50%, -16px); }
      .main-footer .footer-bottom .footer-nav-h .dropdown-menu.show {
        transform: translate(-50%, 0); } }

/*
*******************************************
Main - Footer Extended
*******************************************
*/
.main-footer-extended {
  border-top: var(--main-footer-extended-border-top); }
  .main-footer-extended .container {
    display: flex; }
  .main-footer-extended .footer-top {
    padding: var(--main-footer-extended-padding) 0; }
    .main-footer-extended .footer-top > .container {
      column-gap: var(--spacing-7x); }
  .main-footer-extended .footer-company-logo {
    display: block; }
    .main-footer-extended .footer-company-logo img {
      height: var(--app-nav-logo-height);
      display: block; }
  .main-footer-extended .footer-company-desc {
    min-width: var(--main-footer-extended-side-min-width);
    margin: var(--main-footer-extended-desc-margin);
    color: var(--main-footer-extended-desc-color);
    font-size: var(--main-footer-extended-desc-font-size);
    line-height: var(--main-footer-extended-desc-line-height);
    font-weight: var(--main-footer-extended-desc-font-weight); }
  .main-footer-extended .footer-company-socials {
    flex-wrap: wrap; }
    .main-footer-extended .footer-company-socials .footer-social-wide {
      flex-basis: 100%; }
  .main-footer-extended .footer-site-map {
    width: 100%;
    margin-bottom: calc(-1 * var(--main-footer-extended-spacing)); }
    .main-footer-extended .footer-site-map .footer-col {
      margin-bottom: var(--main-footer-extended-spacing); }
    .main-footer-extended .footer-site-map .footer-nav li > a:hover, .main-footer-extended .footer-site-map .footer-nav li > a:active, .main-footer-extended .footer-site-map .footer-nav li > a:focus {
      padding-left: var(--main-footer-link-hover-padding-h); }
    .main-footer-extended .footer-site-map .footer-nav li > a > span {
      display: flex;
      align-items: center; }
    .main-footer-extended .footer-site-map .label {
      margin-left: var(--spacing-1x); }
  .main-footer-extended .footer-title {
    pointer-events: none;
    display: flex;
    align-items: center;
    margin-bottom: var(--main-footer-extended-title-margin-bottom);
    color: var(--main-footer-extended-title-color);
    font-size: var(--main-footer-extended-title-font-size);
    line-height: var(--main-footer-extended-title-line-height);
    font-weight: var(--main-footer-extended-title-font-weight); }
    .main-footer-extended .footer-title .footer-icon {
      display: none; }
    .main-footer-extended .footer-title > svg,
    .main-footer-extended .footer-title > span > svg,
    .main-footer-extended .footer-title > i,
    .main-footer-extended .footer-title > img {
      margin-right: var(--ui-nav-link-icon-spacing);
      font-size: var(--main-footer-link-icon-size);
      height: var(--main-footer-link-icon-size);
      width: var(--main-footer-link-icon-size); }
    .main-footer-extended .footer-title > img {
      height: unset; }
  @media (min-width: 992px) {
    .main-footer-extended .footer-brand {
      width: 100%;
      max-width: 280px; } }
  @media (min-width: 768px) {
    .main-footer-extended .footer-top .footer-site-map .footer-nav.collapse {
      display: block !important; } }
  @media (min-width: 768px) and (max-width: 991.98px) {
    .main-footer-extended .footer-top > .container {
      flex-direction: column;
      align-items: flex-start; }
      .main-footer-extended .footer-top > .container .d-flex {
        width: 100%; } }
  @media (max-width: 991.98px) {
    .main-footer-extended .footer-company {
      max-width: unset;
      margin-bottom: var(--main-footer-extended-padding);
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      width: 100%; }
      .main-footer-extended .footer-company-intro {
        flex: 1; }
      .main-footer-extended .footer-company:has(+ .footer-payment) {
        margin-bottom: 0; }
    .main-footer-extended .footer-payment {
      margin-bottom: var(--spacing-6x); } }
  @media (max-width: 767.98px) {
    .main-footer-extended .footer-top {
      padding-right: 0;
      flex-direction: column;
      align-items: flex-start; }
      .main-footer-extended .footer-top .footer-site-map {
        padding: 0 !important; }
        .main-footer-extended .footer-top .footer-site-map .row {
          margin-right: 0 !important;
          margin-left: 0 !important; }
        .main-footer-extended .footer-top .footer-site-map .footer-col {
          padding-left: 0;
          padding-right: 0; }
          .main-footer-extended .footer-top .footer-site-map .footer-col .footer-title:last-child {
            margin-bottom: 0; }
        .main-footer-extended .footer-top .footer-site-map .footer-title {
          cursor: pointer;
          position: relative;
          pointer-events: visible;
          transition: var(--transition-base); }
          .main-footer-extended .footer-top .footer-site-map .footer-title:hover, .main-footer-extended .footer-top .footer-site-map .footer-title:active, .main-footer-extended .footer-top .footer-site-map .footer-title:focus {
            color: var(--main-footer-link-color); }
            .main-footer-extended .footer-top .footer-site-map .footer-title:hover .footer-icon svg path, .main-footer-extended .footer-top .footer-site-map .footer-title:active .footer-icon svg path, .main-footer-extended .footer-top .footer-site-map .footer-title:focus .footer-icon svg path {
              fill: var(--main-footer-link-color); }
          .main-footer-extended .footer-top .footer-site-map .footer-title .footer-icon {
            display: inline;
            position: absolute;
            height: 16px;
            display: flex;
            align-items: center;
            right: 5px; }
            .main-footer-extended .footer-top .footer-site-map .footer-title .footer-icon svg path {
              transition: var(--transition-base); }
          .main-footer-extended .footer-top .footer-site-map .footer-title:not(.collapsed) .footer-icon svg {
            transform: rotate(180deg); }
            .main-footer-extended .footer-top .footer-site-map .footer-title:not(.collapsed) .footer-icon svg path {
              fill: ar(--main-footer-link-color); }
    .main-footer-extended .container {
      display: block; } }
  @media (max-width: 479.98px) {
    .main-footer-extended .footer-company {
      margin-bottom: var(--spacing-2x);
      flex-direction: column;
      align-items: flex-start; }
      .main-footer-extended .footer-company-intro {
        margin-bottom: var(--spacing-2x); } }
  .main-footer-extended.main-footer-extended-primary {
    border-top: none;
    background: var(--primary-block-bg); }
    .main-footer-extended.main-footer-extended-primary .footer-company-desc {
      color: var(--primary-block-total-font-color); }
    .main-footer-extended.main-footer-extended-primary .footer-top .footer-site-map .footer-title {
      color: var(--primary-block-total-font-color); }
      @media (max-width: 767.98px) {
        .main-footer-extended.main-footer-extended-primary .footer-top .footer-site-map .footer-title:hover, .main-footer-extended.main-footer-extended-primary .footer-top .footer-site-map .footer-title:active, .main-footer-extended.main-footer-extended-primary .footer-top .footer-site-map .footer-title:focus {
          color: var(--primary-block-link-color); } }
      .main-footer-extended.main-footer-extended-primary .footer-top .footer-site-map .footer-title:hover .footer-icon > svg > path, .main-footer-extended.main-footer-extended-primary .footer-top .footer-site-map .footer-title:active .footer-icon > svg > path, .main-footer-extended.main-footer-extended-primary .footer-top .footer-site-map .footer-title:focus .footer-icon > svg > path {
        fill: var(--primary-block-link-color); }
    .main-footer-extended.main-footer-extended-primary .footer-nav > li > a {
      color: var(--primary-block-link-color); }
      .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:hover, .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:active, .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:focus {
        color: var(--primary-block-link-hover-color); }
        .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:hover > i, .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:active > i, .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:focus > i {
          color: var(--primary-block-link-hover-color); }
        .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:hover > svg:not(.svg-icon) path, .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:active > svg:not(.svg-icon) path, .main-footer-extended.main-footer-extended-primary .footer-nav > li > a:focus > svg:not(.svg-icon) path {
          fill: var(--primary-block-link-hover-color); }
      .main-footer-extended.main-footer-extended-primary .footer-nav > li > a svg:not(.svg-icon) path {
        fill: var(--primary-block-link-color); }
      .main-footer-extended.main-footer-extended-primary .footer-nav > li > a > i {
        color: var(--primary-block-link-color); }
    .main-footer-extended.main-footer-extended-primary .footer-copyright {
      color: var(--primary-block-total-font-color); }
    .main-footer-extended.main-footer-extended-primary .footer-bottom {
      border-top: 1px solid var(--primary-block-divider-color); }
  .main-footer-extended.main-footer-extended-secondary {
    border-top: none;
    background: var(--secondary-block-bg); }
    .main-footer-extended.main-footer-extended-secondary .footer-company-desc {
      color: var(--secondary-block-total-font-color); }
    .main-footer-extended.main-footer-extended-secondary .footer-top .footer-site-map .footer-title {
      color: var(--secondary-block-total-font-color); }
      @media (max-width: 767.98px) {
        .main-footer-extended.main-footer-extended-secondary .footer-top .footer-site-map .footer-title:hover, .main-footer-extended.main-footer-extended-secondary .footer-top .footer-site-map .footer-title:active, .main-footer-extended.main-footer-extended-secondary .footer-top .footer-site-map .footer-title:focus {
          color: var(--secondary-block-link-color); } }
      .main-footer-extended.main-footer-extended-secondary .footer-top .footer-site-map .footer-title:hover .footer-icon > svg > path, .main-footer-extended.main-footer-extended-secondary .footer-top .footer-site-map .footer-title:active .footer-icon > svg > path, .main-footer-extended.main-footer-extended-secondary .footer-top .footer-site-map .footer-title:focus .footer-icon > svg > path {
        fill: var(--secondary-block-link-color); }
    .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a {
      color: var(--secondary-block-link-color); }
      .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:hover, .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:active, .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:focus {
        color: var(--secondary-block-link-hover-color); }
        .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:hover > i, .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:active > i, .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:focus > i {
          color: var(--secondary-block-link-hover-color); }
        .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:hover > svg:not(.svg-icon) path, .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:active > svg:not(.svg-icon) path, .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a:focus > svg:not(.svg-icon) path {
          fill: var(--secondary-block-link-hover-color); }
      .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a svg:not(.svg-icon) path {
        fill: var(--secondary-block-link-color); }
      .main-footer-extended.main-footer-extended-secondary .footer-nav > li > a > i {
        color: var(--secondary-block-link-color); }
    .main-footer-extended.main-footer-extended-secondary .footer-copyright {
      color: var(--secondary-block-total-font-color); }
    .main-footer-extended.main-footer-extended-secondary .footer-bottom {
      border-top: 1px solid var(--secondary-block-divider-color); }
  .main-footer-extended.main-footer-extended-gray {
    border-top: none;
    background: var(--gray-gradient-h); }

/*
*******************************************
Layout - General
*******************************************
*/
.container {
  max-width: 1360px;
  padding-left: var(--layout-container-gutter);
  padding-right: var(--layout-container-gutter); }

/*
*******************************************
Layout - Top Navigation
*******************************************
*/
.lagom-layout-top.scrolling .sticky-navigation {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%; }

.lagom-layout-top.menu-open.scroll-down .sticky-navigation, .lagom-layout-top.scroll-up .sticky-navigation {
  position: fixed;
  box-shadow: var(--ui-block-overlay-shadow);
  border: transparent;
  z-index: var(--zindex-navbar-fixed);
  width: 100%; }

.lagom-layout-top.scrolled-top .sticky-navigation.sticky-navigation--default #header {
  display: block; }

.lagom-layout-top .sticky-navigation.sticky-navigation--sticky {
  position: sticky;
  top: 0; }

/* For screens above 992px ONLY */
@media (min-width: 992px) {
  .lagom-layout-top .app-nav {
    position: relative;
    z-index: 1002;
    background: var(--app-nav-top-bg);
    border-bottom: var(--app-nav-top-border-bottom);
    box-shadow: var(--app-nav-top-box-shadow); }
  .lagom-layout-top .app-nav-header {
    height: var(--app-nav-header-height);
    margin: 0; }
  .lagom-layout-top .app-nav-menu {
    background: var(--app-nav-navbar-bg); }
    .lagom-layout-top .app-nav-menu > .container {
      display: flex;
      justify-content: space-between;
      align-items: center;
      position: relative; }
      .lagom-layout-top .app-nav-menu > .container:before, .lagom-layout-top .app-nav-menu > .container:after {
        display: none; }
      .lagom-layout-top .app-nav-menu > .container--fixed-dropdown .menu > li {
        position: initial; }
    .lagom-layout-top .app-nav-menu .menu {
      display: flex;
      align-items: center;
      flex: 1;
      flex-wrap: wrap;
      margin-left: calc(-1 * var(--app-nav-top-menu-link-padding-h));
      margin-right: calc(-1 * var(--app-nav-top-menu-link-padding-h)); }
      .lagom-layout-top .app-nav-menu .menu > li {
        display: flex;
        align-items: center;
        min-height: calc((2 * var(--app-nav-top-menu-link-padding-v)) + var(--ui-height-base));
        /* menu item underline */ }
        .lagom-layout-top .app-nav-menu .menu > li.open .dropdown-menu {
          top: calc(100% - 8px); }
        .lagom-layout-top .app-nav-menu .menu > li:not(.is-right) + .is-right {
          margin-left: auto; }
        .lagom-layout-top .app-nav-menu .menu > li.is-right:first-child {
          margin-left: auto; }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-menu-hover:not(.show):not(.sfHover) > a:not(.btn):focus {
          color: var(--app-nav-top-menu-link-color); }
          .lagom-layout-top .app-nav-menu .menu > li.dropdown-menu-hover:not(.show):not(.sfHover) > a:not(.btn):focus > .ls {
            color: var(--app-nav-top-menu-icon-color); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-menu-hover:not(.show):not(.sfHover) > a:not(.btn):focus {
          color: var(--app-nav-top-menu-link-color); }
          .lagom-layout-top .app-nav-menu .menu > li.dropdown-menu-hover:not(.show):not(.sfHover) > a:not(.btn):focus > .ls {
            color: var(--app-nav-top-menu-icon-color); }
        .lagom-layout-top .app-nav-menu .menu > li.dropdown-menu-hover.sfHover .dropdown-menu {
          opacity: 1;
          visibility: visible;
          transform: translateY(0); }
        .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) {
          position: relative;
          height: calc((2 * var(--app-nav-top-menu-link-padding-v)) + var(--ui-height-base));
          padding: var(--app-nav-top-menu-link-padding-v) var(--app-nav-top-menu-link-padding-h);
          color: var(--app-nav-top-menu-link-color);
          font-size: var(--app-nav-top-menu-link-font-size);
          font-weight: var(--app-nav-top-menu-link-font-weight);
          line-height: var(--app-nav-top-menu-link-line-height); }
          .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .ls,
          .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .lm,
          .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > .ls,
          .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > .lm {
            color: var(--app-nav-top-menu-icon-color);
            font-size: var(--ui-icon-size-base);
            transition: var(--transition-base); }
            .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > i:not(.ls-caret),
            .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .ls:not(.ls-caret),
            .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .lm:not(.ls-caret),
            .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > .ls:not(.ls-caret),
            .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > .lm:not(.ls-caret) {
              line-height: var(--line-height-base); }
          .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > .ls-caret {
            font-size: var(--ui-icon-size-small);
            margin-left: 6px; }
          .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > svg {
            height: var(--app-nav-top-menu-svg-icon-size);
            width: var(--app-nav-top-menu-svg-icon-size); }
          .lagom-layout-top .app-nav-menu .menu > li > a:not(.btn) > img {
            width: var(--app-nav-top-menu-svg-icon-size); }
        .lagom-layout-top .app-nav-menu .menu > li > a:hover:not(.btn),
        .lagom-layout-top .app-nav-menu .menu > li > a:focus:not(.btn),
        .lagom-layout-top .app-nav-menu .menu > li.active > a:not(.btn),
        .lagom-layout-top .app-nav-menu .menu > li.active > a:hover:not(.btn),
        .lagom-layout-top .app-nav-menu .menu > li.active > a:focus:not(.btn),
        .lagom-layout-top .app-nav-menu .menu > li.open > a:not(.btn),
        .lagom-layout-top .app-nav-menu .menu > li.open > a:hover:not(.btn),
        .lagom-layout-top .app-nav-menu .menu > li.open > a:focus:not(.btn) {
          color: var(--app-nav-top-menu-link-hover-color); }
          .lagom-layout-top .app-nav-menu .menu > li > a:hover:not(.btn) > b,
          .lagom-layout-top .app-nav-menu .menu > li > a:hover:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li > a:hover:not(.btn) > .notification-icon-container > i,
          .lagom-layout-top .app-nav-menu .menu > li > a:focus:not(.btn) > b,
          .lagom-layout-top .app-nav-menu .menu > li > a:focus:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li > a:focus:not(.btn) > .notification-icon-container > i,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:not(.btn) > b,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:not(.btn) > .notification-icon-container > i,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:hover:not(.btn) > b,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:hover:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:hover:not(.btn) > .notification-icon-container > i,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:focus:not(.btn) > b,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:focus:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li.active > a:focus:not(.btn) > .notification-icon-container > i,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:not(.btn) > b,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:not(.btn) > .notification-icon-container > i,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:hover:not(.btn) > b,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:hover:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:hover:not(.btn) > .notification-icon-container > i,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:focus:not(.btn) > b,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:focus:not(.btn) > i,
          .lagom-layout-top .app-nav-menu .menu > li.open > a:focus:not(.btn) > .notification-icon-container > i {
            color: var(--app-nav-top-menu-icon-hover-color); }
        .lagom-layout-top .app-nav-menu .menu > li.active > a:not(.btn):after {
          display: block;
          content: '';
          position: absolute;
          bottom: 0;
          left: 18px;
          right: 18px;
          height: 3px;
          background: var(--app-nav-top-menu-link-hover-color); }
        .lagom-layout-top .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > i + span,
        .lagom-layout-top .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > .ls + span,
        .lagom-layout-top .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > .lm + span,
        .lagom-layout-top .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > svg + span,
        .lagom-layout-top .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > img + span,
        .lagom-layout-top .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > .notification-icon-container + span {
          margin-left: var(--ui-nav-link-icon-spacing-lg); }
        .lagom-layout-top .app-nav-menu .menu > li:not(.show):not(.sfHover) .dropdown-menu > li > a .badge {
          display: none; }
        .lagom-layout-top .app-nav-menu .menu > li .dropdown-menu {
          top: calc(100% + var(--spacing-2x));
          left: var(--app-nav-top-menu-link-padding-h);
          padding: 6px 0;
          min-width: var(--app-nav-top-menu-dropdown-width); }
          .lagom-layout-top .app-nav-menu .menu > li .dropdown-menu > li > a > i.lm {
            font-size: var(--ui-nav-link-icon-size-sm);
            vertical-align: middle; }
          .lagom-layout-top .app-nav-menu .menu > li .dropdown-menu > svg,
          .lagom-layout-top .app-nav-menu .menu > li .dropdown-menu > img {
            height: var(--app-nav-top-menu-svg-icon-size);
            width: var(--app-nav-top-menu-svg-icon-size);
            margin-right: var(--spacing-2x); }
          .lagom-layout-top .app-nav-menu .menu > li .dropdown-menu > img {
            height: unset; }
          .lagom-layout-top .app-nav-menu .menu > li .dropdown-menu-collapse {
            position: static;
            opacity: 1;
            visibility: visible;
            transform: unset;
            background: none;
            box-shadow: none;
            border-radius: unset;
            float: none; }
        .lagom-layout-top .app-nav-menu .menu > li.is-right:not(.dropdown-mega) .dropdown-menu {
          left: auto;
          right: var(--app-nav-top-menu-link-padding-h); }
        .lagom-layout-top .app-nav-menu .menu > li.pull-right .dropdown-menu {
          right: var(--app-nav-top-menu-link-padding-h);
          left: unset; }
      .lagom-layout-top .app-nav-menu .menu li.nav-header-collapse .nav-header-item {
        cursor: pointer;
        justify-content: space-between; }
      .lagom-layout-top .app-nav-menu .menu li.nav-header-collapse .dropdown-menu {
        background: var(--gray-faded);
        margin: 0 var(--dropdown-link-padding-h) var(--spacing-1x);
        border-radius: var(--ui-block-border-radius-lg);
        min-width: unset;
        padding: 8px 0; }
        .lagom-layout-top .app-nav-menu .menu li.nav-header-collapse .dropdown-menu > li > a .menu-item-content .label.label-default {
          background-color: var(--gray-lighter-4); }
      .lagom-layout-top .app-nav-menu .menu li.nav-item-btn.is-right .dropdown-menu {
        right: 0;
        left: auto; }
      .lagom-layout-top .app-nav-menu .menu li.nav-item-btn:first-child:not(.is-right) {
        margin-left: var(--app-nav-top-menu-link-padding-h); }
      .lagom-layout-top .app-nav-menu .menu li.nav-item-btn:last-child {
        margin-right: var(--app-nav-top-menu-link-padding-h); }
      .lagom-layout-top .app-nav-menu .menu li.nav-item-btn + .nav-item-btn > .btn {
        margin-left: var(--btn-spacing-between); }
      .lagom-layout-top .app-nav-menu .menu li.nav-item-btn .dropdown-menu {
        right: auto;
        left: 0; }
      .lagom-layout-top .app-nav-menu .menu li.nav-item-btn + .dark-mode-switcher {
        margin-left: var(--app-nav-top-menu-link-padding-h); }
  .lagom-layout-top:not(.page-user-logged) .my-account {
    display: none; } }

@media (min-width: 992px) and (max-width: 991.98px) {
  .lagom-layout-top.scroll-up .sticky-navigation {
    min-height: 60px; } }

@media (max-width: 767.98px) {
  .modal-open.lagom-layout-top {
    padding-right: 0 !important; }
    .modal-open.lagom-layout-top .app-nav-header {
      padding-right: 0 !important; }
    .modal-open.lagom-layout-top .order-summary-mob {
      padding-right: 0 !important; }
    .modal-open.lagom-layout-top .bottom-action-sticky {
      padding-right: 0 !important; } }

.modal-open.lagom-layout-top.scrolling .sticky-navigation {
  padding-right: var(--scrollbar-width, 17px); }

@media (max-width: 991.98px) {
  .modal-open .app-nav-header {
    padding-right: var(--scrollbar-width, 17px); } }

/*
*******************************************
Layout - Top Condensed Navigation
*******************************************
*/
.lagom-layout-condensed .app-nav-header .logo {
  display: none; }

.lagom-layout-condensed .app-nav-header .top-nav {
  float: right; }
  .lagom-layout-condensed .app-nav-header .top-nav .client-avatar--small img {
    height: 24px;
    width: 24px; }

.lagom-layout-condensed .app-nav-menu .logo,
.lagom-layout-condensed .app-nav-menu .logo > img {
  height: var(--app-nav-logo-height);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

@media (min-width: 992px) {
  .lagom-layout-condensed .app-nav-header {
    height: auto;
    min-height: var(--app-nav-top-condensed-header-height);
    border-bottom: var(--app-nav-top-condensed-header-border-bottom);
    display: flex;
    align-items: center; }
    .lagom-layout-condensed .app-nav-header .my-account .active-client span:not(.item-text) {
      display: none; }
  .lagom-layout-condensed .app-nav-menu .logo {
    margin-right: var(--app-nav-top-condensed-logo-spacing); }
  .lagom-layout-condensed .app-nav-menu .menu {
    width: auto;
    flex: unset;
    margin-right: calc(-1 * var(--app-nav-top-condensed-menu-link-padding-h));
    margin-left: auto; }
    .lagom-layout-condensed .app-nav-menu .menu > li {
      min-height: var(--app-nav-header-height); }
      .lagom-layout-condensed .app-nav-menu .menu > li > a:not(.btn) {
        padding: var(--app-nav-top-condensed-menu-link-padding-v) var(--app-nav-top-condensed-menu-link-padding-h);
        height: var(--app-nav-header-height); }
      .lagom-layout-condensed .app-nav-menu .menu > li.nav-item-btn:first-child {
        margin-left: var(--app-nav-top-condensed-menu-link-padding-h); }
      .lagom-layout-condensed .app-nav-menu .menu > li.nav-item-btn:last-child {
        margin-right: var(--app-nav-top-condensed-menu-link-padding-h); }
      .lagom-layout-condensed .app-nav-menu .menu > li .dropdown-menu {
        left: var(--app-nav-top-condensed-menu-link-padding-h); }
      .lagom-layout-condensed .app-nav-menu .menu > li.pull-right .dropdown-menu {
        right: var(--app-nav-top-condensed-menu-link-padding-h);
        left: unset; }
    .lagom-layout-condensed .app-nav-menu .menu li:not(.nav-item-btn) + li.nav-item-btn {
      margin-left: var(--app-nav-top-condensed-menu-link-padding-h); }
    .lagom-layout-condensed .app-nav-menu .menu li.nav-item-btn + .dark-mode-switcher {
      margin-left: var(--app-nav-top-condensed-menu-link-padding-h); } }

@-webkit-keyframes fadeInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    opacity: 0; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes fadeInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    opacity: 0; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

/*
*******************************************
Layout - Top Navigation - Style
*******************************************
*/
.lagom-layout-top .app-nav ul.top-nav > li.dropdown-menu-hover.sfHover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0); }

@media (min-width: 992px) {
  .lagom-layout-top .app-nav-primary {
    background: var(--primary-block-bg-h); }
  .lagom-layout-top .app-nav-secondary {
    background: var(--secondary-block-bg-h); }
  .lagom-layout-top .app-nav-menu-primary .menu > li > a:not(.btn), .lagom-layout-top .app-nav-menu-secondary .menu > li > a:not(.btn) {
    color: var(--primary-block-text-color); }
    .lagom-layout-top .app-nav-menu-primary .menu > li > a:not(.btn):hover, .lagom-layout-top .app-nav-menu-primary .menu > li > a:not(.btn):active, .lagom-layout-top .app-nav-menu-primary .menu > li > a:not(.btn):focus, .lagom-layout-top .app-nav-menu-secondary .menu > li > a:not(.btn):hover, .lagom-layout-top .app-nav-menu-secondary .menu > li > a:not(.btn):active, .lagom-layout-top .app-nav-menu-secondary .menu > li > a:not(.btn):focus {
      color: var(--primary-block-link-active-color); }
      .lagom-layout-top .app-nav-menu-primary .menu > li > a:not(.btn):hover > .ls, .lagom-layout-top .app-nav-menu-primary .menu > li > a:not(.btn):active > .ls, .lagom-layout-top .app-nav-menu-primary .menu > li > a:not(.btn):focus > .ls, .lagom-layout-top .app-nav-menu-secondary .menu > li > a:not(.btn):hover > .ls, .lagom-layout-top .app-nav-menu-secondary .menu > li > a:not(.btn):active > .ls, .lagom-layout-top .app-nav-menu-secondary .menu > li > a:not(.btn):focus > .ls {
        color: var(--primary-block-link-active-color); }
    .lagom-layout-top .app-nav-menu-primary .menu > li > a:not(.btn) > .ls, .lagom-layout-top .app-nav-menu-secondary .menu > li > a:not(.btn) > .ls {
      color: var(--primary-block-text-faded-color); }
  .lagom-layout-top .app-nav-menu-primary .menu > li.dropdown-menu-hover:not(.show):not(.sfHover) > a:not(.btn):focus, .lagom-layout-top .app-nav-menu-secondary .menu > li.dropdown-menu-hover:not(.show):not(.sfHover) > a:not(.btn):focus {
    color: var(--primary-block-text-color); }
    .lagom-layout-top .app-nav-menu-primary .menu > li.dropdown-menu-hover:not(.show):not(.sfHover) > a:not(.btn):focus > .ls, .lagom-layout-top .app-nav-menu-secondary .menu > li.dropdown-menu-hover:not(.show):not(.sfHover) > a:not(.btn):focus > .ls {
      color: var(--primary-block-text-faded-color); }
  .lagom-layout-top .app-nav-menu-primary .menu > li.active > a:not(.btn), .lagom-layout-top .app-nav-menu-secondary .menu > li.active > a:not(.btn) {
    color: var(--primary-block-link-active-color); }
    .lagom-layout-top .app-nav-menu-primary .menu > li.active > a:not(.btn):after, .lagom-layout-top .app-nav-menu-secondary .menu > li.active > a:not(.btn):after {
      background: var(--primary-block-link-active-color); }
    .lagom-layout-top .app-nav-menu-primary .menu > li.active > a:not(.btn):hover, .lagom-layout-top .app-nav-menu-primary .menu > li.active > a:not(.btn):active, .lagom-layout-top .app-nav-menu-primary .menu > li.active > a:not(.btn):focus, .lagom-layout-top .app-nav-menu-secondary .menu > li.active > a:not(.btn):hover, .lagom-layout-top .app-nav-menu-secondary .menu > li.active > a:not(.btn):active, .lagom-layout-top .app-nav-menu-secondary .menu > li.active > a:not(.btn):focus {
      color: var(--primary-block-link-active-color); }
    .lagom-layout-top .app-nav-menu-primary .menu > li.active > a:not(.btn) > b, .lagom-layout-top .app-nav-menu-secondary .menu > li.active > a:not(.btn) > b {
      color: var(--primary-block-link-active-color); }
  .lagom-layout-top .app-nav-menu-primary .menu .nav-item-btn .btn-primary, .lagom-layout-top .app-nav-menu-secondary .menu .nav-item-btn .btn-primary {
    color: var(--btn-primary-faded-color);
    background: var(--btn-primary-faded-bg);
    border-color: var(--btn-primary-faded-border); }
    .lagom-layout-top .app-nav-menu-primary .menu .nav-item-btn .btn-primary:hover, .lagom-layout-top .app-nav-menu-secondary .menu .nav-item-btn .btn-primary:hover {
      color: var(--btn-primary-faded-hover-color);
      background: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
  .lagom-layout-top .app-nav-menu-primary .logo-text, .lagom-layout-top .app-nav-menu-secondary .logo-text {
    color: var(--primary-block-text-color); }
  .lagom-layout-top .app-nav-menu-primary {
    background: var(--primary-block-bg-h); }
  .lagom-layout-top .app-nav-menu-secondary {
    background: var(--secondary-block-bg-h); } }

.lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn), .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn),
.lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn),
.lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn) {
  color: var(--primary-block-text-color); }
  .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn) > i, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn) > i,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn) > i,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn) > i {
    color: var(--primary-block-text-faded-color); }
    .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn) > i:hover, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn) > i:hover,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn) > i:hover,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn) > i:hover {
      color: var(--primary-block-link-active-color); }
  .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):hover, .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn).sfHover, .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):active, .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):focus, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):hover, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn).sfHover, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):active, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):focus,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):hover,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn).sfHover,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):active,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):focus,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):hover,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn).sfHover,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):active,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):focus {
    color: var(--primary-block-link-active-color); }
    .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):hover > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):hover > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn).sfHover > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn).sfHover > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):active > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):active > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):focus > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn):focus > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):hover > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):hover > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn).sfHover > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn).sfHover > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):active > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):active > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):focus > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn):focus > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):hover > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):hover > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn).sfHover > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn).sfHover > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):active > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):active > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):focus > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn):focus > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):hover > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):hover > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn).sfHover > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn).sfHover > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):active > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):active > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):focus > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn):focus > .ls-caret {
      color: var(--primary-block-link-active-color); }
  .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn) > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn) > .ls-caret,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn) > .ls-caret,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn) > .ls-caret {
    color: var(--primary-block-text-color); }
  .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn) > .notification-icon-container > i, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn) > .notification-icon-container > i,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn) > .notification-icon-container > i,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn) > .notification-icon-container > i {
    color: var(--primary-block-text-faded-color); }
    .lagom-layout-top .app-nav-primary ul.top-nav > li > a:not(.btn) > .notification-icon-container > i:hover, .lagom-layout-top .app-nav-secondary ul.top-nav > li > a:not(.btn) > .notification-icon-container > i:hover,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li > a:not(.btn) > .notification-icon-container > i:hover,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li > a:not(.btn) > .notification-icon-container > i:hover {
      color: var(--primary-block-link-active-color); }

.lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn), .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn), .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn), .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn),
.lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn),
.lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn),
.lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn),
.lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn) {
  color: var(--primary-block-link-active-color); }
  .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):hover, .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):active, .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):focus, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):hover, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):active, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):focus, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):hover, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):active, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):focus, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):hover, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):active, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):focus,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):hover,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):active,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):focus,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):hover,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):active,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):focus,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):hover,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):active,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):focus,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):hover,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):active,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):focus {
    color: var(--primary-block-link-active-color); }
    .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):hover > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):hover > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):active > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):active > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):focus > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):focus > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):hover > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):hover > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):active > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):active > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):focus > i,
    .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):focus > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):hover > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):hover > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):active > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):active > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):focus > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):focus > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):hover > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):hover > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):active > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):active > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):focus > i,
    .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):focus > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):hover > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):hover > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):active > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):active > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):focus > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):focus > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):hover > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):hover > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):active > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):active > .ls-caret,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):focus > i,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):focus > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):hover > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):hover > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):active > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):active > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):focus > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):focus > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):hover > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):hover > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):active > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):active > .ls-caret,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):focus > i,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):focus > .ls-caret {
      color: var(--primary-block-link-active-color); }
    .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):hover .item-text, .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):active .item-text, .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):focus .item-text, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):hover .item-text, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):active .item-text, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn):focus .item-text, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):hover .item-text, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):active .item-text, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):focus .item-text, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):hover .item-text, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):active .item-text, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn):focus .item-text,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):hover .item-text,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):active .item-text,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn):focus .item-text,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):hover .item-text,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):active .item-text,
    .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn):focus .item-text,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):hover .item-text,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):active .item-text,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn):focus .item-text,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):hover .item-text,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):active .item-text,
    .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn):focus .item-text {
      color: var(--primary-block-link-active-color); }
  .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn) .item-text, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn) .item-text, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn) .item-text, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn) .item-text,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn) .item-text,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn) .item-text,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn) .item-text,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn) .item-text {
    color: var(--primary-block-link-active-color); }
  .lagom-layout-top .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn) > .ls-caret, .lagom-layout-top .app-nav-primary ul.top-nav > li.show > a:not(.btn) > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn) > .ls-caret, .lagom-layout-top .app-nav-secondary ul.top-nav > li.show > a:not(.btn) > .ls-caret,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.sfHover > a:not(.btn) > .ls-caret,
  .lagom-layout-left-wide .app-nav-primary ul.top-nav > li.show > a:not(.btn) > .ls-caret,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.sfHover > a:not(.btn) > .ls-caret,
  .lagom-layout-left-wide .app-nav-secondary ul.top-nav > li.show > a:not(.btn) > .ls-caret {
    color: var(--primary-block-link-active-color); }

.lagom-layout-top .app-nav-primary ul.top-nav .my-account .active-client span:not(.item-text), .lagom-layout-top .app-nav-secondary ul.top-nav .my-account .active-client span:not(.item-text),
.lagom-layout-left-wide .app-nav-primary ul.top-nav .my-account .active-client span:not(.item-text),
.lagom-layout-left-wide .app-nav-secondary ul.top-nav .my-account .active-client span:not(.item-text) {
  color: var(--text-secondary-faded-color); }

.lagom-layout-top .app-nav-primary .app-nav-header, .lagom-layout-top .app-nav-secondary .app-nav-header,
.lagom-layout-left-wide .app-nav-primary .app-nav-header,
.lagom-layout-left-wide .app-nav-secondary .app-nav-header {
  border-color: var(--ui-block-secondary-divider-border-color); }
  .lagom-layout-top .app-nav-primary .app-nav-header .logo-text, .lagom-layout-top .app-nav-secondary .app-nav-header .logo-text,
  .lagom-layout-left-wide .app-nav-primary .app-nav-header .logo-text,
  .lagom-layout-left-wide .app-nav-secondary .app-nav-header .logo-text {
    color: var(--primary-block-text-color); }

/*
*******************************************
Layout Left - General
*******************************************
*/
.lagom-layout-left.lagom-depth.page-login .main-top,
.lagom-layout-left-wide.lagom-depth.page-login .main-top {
  background: var(--body-bg); }

.lagom-layout-left.lagom-depth.page-login .main-footer,
.lagom-layout-left-wide.lagom-depth.page-login .main-footer {
  background: var(--body-bg); }

.lagom-layout-left .app-nav .menu li.active > a:after,
.lagom-layout-left-wide .app-nav .menu li.active > a:after {
  display: none; }

.lagom-layout-left .main-header,
.lagom-layout-left-wide .main-header {
  width: 100%; }

.lagom-layout-left.scrolling .sticky-navigation,
.lagom-layout-left-wide.scrolling .sticky-navigation {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%; }

@media (min-width: 992px) {
  .lagom-layout-left.scroll-up .sticky-navigation,
  .lagom-layout-left-wide.scroll-up .sticky-navigation {
    position: fixed;
    box-shadow: var(--ui-block-overlay-shadow);
    border: transparent;
    animation-duration: .3s;
    animation-fill-mode: both;
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
    z-index: var(--zindex-navbar-fixed);
    width: 100%; } }

.lagom-layout-left.scrolled-top .sticky-navigation.sticky-navigation--default #header,
.lagom-layout-left-wide.scrolled-top .sticky-navigation.sticky-navigation--default #header {
  display: block; }

.lagom-layout-left .sticky-navigation.sticky-navigation--sticky,
.lagom-layout-left-wide .sticky-navigation.sticky-navigation--sticky {
  position: sticky;
  top: 0; }

.lagom-layout-left .app-nav .menu-primary li > a .notification-icon-container {
  position: relative; }
  .lagom-layout-left .app-nav .menu-primary li > a .notification-icon-container > i {
    transition: color var(--transition-base); }

.lagom-layout-left .app-nav .menu-primary li > a i {
  position: relative; }
  .lagom-layout-left .app-nav .menu-primary li > a i .badge {
    font-family: var(--font-family-base), sans-serif;
    position: absolute;
    top: -6px;
    left: 4px; }
    .lagom-layout-left .app-nav .menu-primary li > a i .badge.badge-primary-faded {
      color: var(--badge-primary-color);
      background-color: var(--badge-primary-bg); }

.lagom-layout-left .app-nav .menu-primary li > a .item-text .badge {
  margin-left: 4px; }

@media (min-width: 992px) {
  .lagom-layout-left .app-nav .menu-primary li:not(.nav-item-text-only) > a .item-text .badge {
    display: none; }
  .lagom-layout-left .app-nav .menu-primary li:not(.nav-item-text-only) > a svg + .item-text .nav-badge {
    display: inline-block !important; }
    .lagom-layout-left .app-nav .menu-primary li:not(.nav-item-text-only) > a svg + .item-text .nav-badge.hidden {
      display: none !important; } }

@media (max-width: 991.98px) {
  .lagom-layout-left .app-nav .menu-primary li > a i .badge {
    display: none; } }

.lagom-layout-left .container,
.lagom-layout-left-wide .container {
  max-width: none;
  width: 100%; }

@media (max-width: 991.98px) {
  .lagom-layout-left .app-main .main-top,
  .lagom-layout-left-wide .app-main .main-top {
    display: none; } }

@media (min-width: 480px) {
  .lagom-layout-left .container,
  .lagom-layout-left-wide .container {
    max-width: calc(var(--layout-left-container-gutter) + var(--container-xl-max-width));
    padding-left: var(--layout-left-container-gutter);
    padding-right: var(--layout-left-container-gutter); } }

/*
*******************************************
Layout Left - Navigation
*******************************************
*/
/* For screens above 992px ONLY */
@media (min-width: 992px) {
  .lagom-layout-left .alert.alert-floating,
  .lagom-layout-left-wide .alert.alert-floating {
    left: var(--app-nav-left-width); }
  .lagom-layout-left .app-nav:not(.app-nav-only-logo),
  .lagom-layout-left-wide .app-nav:not(.app-nav-only-logo) {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1004;
    display: flex;
    flex-direction: column;
    width: var(--app-nav-left-width);
    box-shadow: var(--app-nav-left-box-shadow); }
    .lagom-layout-left .app-nav:not(.app-nav-only-logo) .container,
    .lagom-layout-left-wide .app-nav:not(.app-nav-only-logo) .container {
      width: 100%;
      max-width: 100%;
      padding: 0;
      margin: 0; }
  .lagom-layout-left .app-nav .app-nav-header > .container,
  .lagom-layout-left-wide .app-nav .app-nav-header > .container {
    padding: var(--app-nav-left-wide-link-padding-h); }
  .lagom-layout-left .app-nav .app-nav-header .top-nav,
  .lagom-layout-left-wide .app-nav .app-nav-header .top-nav {
    display: none; }
  .lagom-layout-left .app-nav-menu,
  .lagom-layout-left-wide .app-nav-menu {
    position: static;
    overflow-y: auto;
    overflow: -moz-scrollbars-none;
    -ms-overflow-style: none;
    touch-action: auto;
    -ms-touch-action: auto;
    flex: 1; }
    .lagom-layout-left .app-nav-menu > .container,
    .lagom-layout-left-wide .app-nav-menu > .container {
      height: 100%; }
    .lagom-layout-left .app-nav-menu .menu,
    .lagom-layout-left-wide .app-nav-menu .menu {
      display: flex;
      flex-direction: column;
      height: 100%; }
      .lagom-layout-left .app-nav-menu .menu > li,
      .lagom-layout-left-wide .app-nav-menu .menu > li {
        position: static; }
        .lagom-layout-left .app-nav-menu .menu > li:not(.is-right) + .is-right,
        .lagom-layout-left-wide .app-nav-menu .menu > li:not(.is-right) + .is-right {
          margin-top: auto; }
        .lagom-layout-left .app-nav-menu .menu > li.is-right:first-child,
        .lagom-layout-left-wide .app-nav-menu .menu > li.is-right:first-child {
          margin-top: auto; }
        .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn),
        .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) {
          font-size: var(--app-nav-left-link-font-size);
          font-weight: var(--app-nav-left-link-font-weight); }
          .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > i,
          .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > i,
          .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i {
            color: var(--app-nav-left-icon-color); }
            .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > i:first-child,
            .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i:first-child,
            .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > i:first-child,
            .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i:first-child {
              height: var(--app-nav-left-icon-size);
              width: var(--app-nav-left-icon-size);
              font-size: var(--app-nav-left-icon-size);
              text-align: center; }
          .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > .item-text,
          .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > .item-text {
            display: block;
            max-width: 100%;
            white-space: normal;
            overflow: hidden;
            text-overflow: ellipsis; }
        .lagom-layout-left .app-nav-menu .menu > li.dropdown-mega .menu-item-content,
        .lagom-layout-left-wide .app-nav-menu .menu > li.dropdown-mega .menu-item-content {
          display: flex;
          flex-direction: column; }
          .lagom-layout-left .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-title,
          .lagom-layout-left-wide .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-title {
            display: flex;
            align-items: center; }
          .lagom-layout-left .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc,
          .lagom-layout-left-wide .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc {
            color: var(--text-lighter-color);
            font-size: var(--font-size-xs);
            line-height: var(--line-height-xs);
            font-weight: var(--font-weight-base);
            white-space: break-spaces; } }
          @media (min-width: 992px) and (max-width: 991.98px) {
            .lagom-layout-left .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc,
            .lagom-layout-left-wide .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc {
              display: none; } }

@media (min-width: 992px) {
        .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu li > a > i,
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu li > a > i {
          width: var(--app-nav-left-dropdown-icon-size);
          height: var(--app-nav-left-dropdown-icon-size);
          font-size: var(--app-nav-left-dropdown-icon-size); }
        .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-parent + .dropdown-menu-parent,
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-parent + .dropdown-menu-parent {
          margin-top: var(--spacing-3x); }
        .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .nav-header,
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .nav-header {
          color: var(--dropdown-link-color);
          font-size: var(--font-size-lg);
          line-height: var(--line-height-lg);
          font-weight: var(--font-weight-medium);
          padding: var(--dropdown-link-padding-v) var(--dropdown-link-padding-h);
          padding-top: 0;
          padding-bottom: 12px; }
        .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list,
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list {
          list-style: none;
          padding-left: 0; }
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > svg,
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > img,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > svg,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > img {
            height: var(--app-nav-top-menu-svg-icon-size);
            width: var(--app-nav-top-menu-svg-icon-size);
            min-width: var(--app-nav-top-menu-svg-icon-size);
            margin-right: var(--spacing-2x); }
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > img,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > img {
            height: unset; }
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content {
            display: flex;
            align-items: center;
            white-space: normal; }
        .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar,
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar {
          padding: 0 var(--spacing-3x);
          padding-top: var(--spacing-2x); }
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-content,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-content {
            width: 100%;
            background: var(--gray-faded);
            border-radius: var(--border-radius-lg);
            color: var(--text-body-color);
            padding: var(--spacing-3x);
            font-size: var(--font-size-base);
            line-height: var(--line-height-base);
            font-weight: var(--font-weight-light); }
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic.predefined-graphic,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic.predefined-graphic {
            position: relative;
            height: 72px; }
            .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic.predefined-graphic .promo-slider-icon,
            .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic.predefined-graphic .promo-slider-icon {
              height: 72px;
              position: absolute; }
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic > img,
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic > svg,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic > img,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic > svg {
            max-width: 100%; }
          .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic + .dropdown-menu-sidebar-desc,
          .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic + .dropdown-menu-sidebar-desc {
            margin-top: var(--spacing-3x); }
      .lagom-layout-left .app-nav-menu .menu > .nav-item-btn > .btn,
      .lagom-layout-left-wide .app-nav-menu .menu > .nav-item-btn > .btn {
        width: 100%; }
        .lagom-layout-left .app-nav-menu .menu > .nav-item-btn > .btn > span,
        .lagom-layout-left-wide .app-nav-menu .menu > .nav-item-btn > .btn > span {
          max-width: 100%;
          overflow: hidden;
          text-overflow: ellipsis; }
      .lagom-layout-left .app-nav-menu .menu > .nav-item-btn + .nav-item-btn,
      .lagom-layout-left-wide .app-nav-menu .menu > .nav-item-btn + .nav-item-btn {
        padding-top: 0 !important; }
    .lagom-layout-left .app-nav-menu .menu-right,
    .lagom-layout-left .app-nav-menu .menu-language,
    .lagom-layout-left-wide .app-nav-menu .menu-right,
    .lagom-layout-left-wide .app-nav-menu .menu-language {
      display: none; }
    .lagom-layout-left .app-nav-menu::-webkit-scrollbar,
    .lagom-layout-left-wide .app-nav-menu::-webkit-scrollbar {
      width: 0 !important; }
  .lagom-layout-left .app-main,
  .lagom-layout-left .bottom-action-sticky.is-fixed,
  .lagom-layout-left-wide .app-main,
  .lagom-layout-left-wide .bottom-action-sticky.is-fixed {
    margin-left: var(--app-nav-left-width); }
  .lagom-layout-left:has(.app-nav-only-logo) .app-main,
  .lagom-layout-left-wide:has(.app-nav-only-logo) .app-main {
    margin-left: unset; }
  .lagom-layout-left.page-type-full .app-main,
  .lagom-layout-left-wide.page-type-full .app-main {
    margin-right: 0;
    margin-left: 0; }
  .lagom-layout-left :-moz-any(body) .app-nav-menu,
  .lagom-layout-left-wide :-moz-any(body) .app-nav-menu {
    margin-right: -14px !important;
    overflow-y: scroll;
    margin-bottom: -14px !important;
    overflow-x: scroll; }
  /* Styles for left navigation only */
  .lagom-layout-left .app-nav-header > .container {
    justify-content: center; }
  .lagom-layout-left .app-nav-menu .menu > li {
    margin-bottom: 1px; }
    .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) {
      flex-direction: column;
      padding: var(--app-nav-left-link-padding-v) var(--app-nav-left-link-padding-h);
      text-align: center; }
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > i,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > svg,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > img {
        transition: all var(--transition-base) !important; }
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > .ls-caret {
        display: none; }
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > svg {
        height: var(--app-nav-left-svg-icon-size);
        width: var(--app-nav-left-svg-icon-size); }
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn) > img {
        width: var(--app-nav-left-svg-icon-size); }
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).open > i:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).open > svg:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).open > img:first-child, .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).sfHover > i:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).sfHover > svg:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).sfHover > img:first-child, .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).active > i:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).active > svg:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn).active > img:first-child, .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn):hover > svg:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn):hover > img:first-child, .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn):focus > i:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn):focus > svg:first-child,
      .lagom-layout-left .app-nav-menu .menu > li > a:not(.btn):focus > img:first-child {
        transform: translate3d(0, -4px, 0); }
    .lagom-layout-left .app-nav-menu .menu > li.sfHover .dropdown-menu, .lagom-layout-left .app-nav-menu .menu > li.open .dropdown-menu, .lagom-layout-left .app-nav-menu .menu > li.show .dropdown-menu {
      opacity: 1;
      visibility: visible;
      transform: translateX(0); }
    .lagom-layout-left .app-nav-menu .menu > li:not(.sfHover) .dropdown-menu > li > a .badge {
      display: none; }
    .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu {
      display: block !important;
      top: 0 !important;
      bottom: 0;
      min-width: var(--app-nav-left-dropdown-width);
      box-shadow: var(--app-nav-left-box-shadow);
      left: 100%;
      transform: translateX(32px);
      border-radius: 0;
      border: 0; }
      .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-body:first-of-type {
        padding-top: var(--spacing-2x); }
    .lagom-layout-left .app-nav-menu .menu > li .dropdown-header {
      padding: var(--spacing-2x) var(--spacing-3x) var(--spacing-3x);
      font-size: var(--font-size-lg);
      font-weight: var(--font-weight-medium);
      line-height: var(--line-height-lg); }
    .lagom-layout-left .app-nav-menu .menu > li.dark-mode-switcher {
      display: flex;
      align-items: center;
      justify-content: center; }
      .lagom-layout-left .app-nav-menu .menu > li.dark-mode-switcher label {
        margin: var(--app-nav-left-wide-link-padding-v) var(--app-nav-left-wide-link-padding-h); }
    .lagom-layout-left .app-nav-menu .menu > li .dark-mode-switcher.is-right:last-child {
      border-top: 1px solid var(--gray-lighter-4); }
  .lagom-layout-left .app-nav-menu .menu > .nav-item-btn {
    padding: var(--app-nav-left-link-padding-v) var(--app-nav-left-link-padding-h); }
  .lagom-layout-left .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > i + span,
  .lagom-layout-left .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > svg + span,
  .lagom-layout-left .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > img + span,
  .lagom-layout-left .app-nav-menu .menu > li:not(.nav-item-text-only) > a:not(.btn) > .notification-icon-container + span {
    margin-top: var(--app-nav-left-link-padding-h); } }

.lagom-layout-left .app-main ul.top-nav > li.dropdown-menu-hover.sfHover .dropdown-menu,
.lagom-layout-left-wide .app-main ul.top-nav > li.dropdown-menu-hover.sfHover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0); }

.lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item,
.lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item {
  justify-content: space-between;
  cursor: pointer; }
  .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item .nav-header-text,
  .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item .nav-header-text {
    display: flex;
    align-items: center; }

.lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .dropdown-menu,
.lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .dropdown-menu {
  background: var(--dropdown-collapse-bg);
  margin: 4px var(--dropdown-link-padding-h) var(--spacing-1x);
  border-radius: var(--ui-block-border-radius-lg);
  min-width: unset;
  padding: 6px 0;
  transform: none;
  box-shadow: none;
  width: calc(100% - (2 * var(--dropdown-link-padding-h)));
  float: none;
  position: static;
  display: block !important; }
  .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .dropdown-menu > li > a,
  .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .dropdown-menu > li > a {
    white-space: unset; }
  .lagom-layout-left .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .dropdown-menu .nav-header,
  .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .dropdown-menu .nav-header {
    padding: 6px var(--dropdown-link-padding-h); }

/*
*******************************************
Layout Left - Styles
*******************************************
*/
html:not(.lagom-dark-mode) .lagom-layout-left.lagom-depth:not(.page-login) .main-footer:not(.main-footer-extended-secondary):not(.main-footer-extended-primary):not(.main-footer-extended-gray),
html:not(.lagom-dark-mode) .lagom-layout-left-wide.lagom-depth:not(.page-login) .main-footer:not(.main-footer-extended-secondary):not(.main-footer-extended-primary):not(.main-footer-extended-gray) {
  background: transparent; }

/* For screens above 992px ONLY */
@supports (-webkit-hyphens: none) {
  @media (min-width: 992px) {
    .lagom-layout-left .app-nav-menu .menu > li.dropdown {
      cursor: pointer; }
      .lagom-layout-left .app-nav-menu .menu > li.dropdown .dropdown-menu {
        cursor: default; }
      .lagom-layout-left .app-nav-menu .menu > li.dropdown > a {
        pointer-events: none; }
      .lagom-layout-left .app-nav-menu .menu > li.dropdown:hover > a:not(.btn) svg {
        transform: translate3d(0, -4px, 0); }
      .lagom-layout-left .app-nav-menu .menu > li.dropdown:hover > a:not(.btn) .item-text {
        transition: var(--transition-base); }
    .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.dropdown:hover > a:not(.btn) .item-text {
      color: var(--app-nav-left-link-hover-color); }
    .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li.dropdown:hover > a:not(.btn) .item-text {
      color: var(--primary-block-link-hover-color); }
    .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li.dropdown:hover > a:not(.btn) .item-text {
      color: var(--secondary-block-link-hover-color); } } }

@media (min-width: 992px) {
  .lagom-layout-left .app-nav-default,
  .lagom-layout-left-wide .app-nav-default {
    background: var(--app-nav-left-bg); }
    .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn),
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn) {
      color: var(--app-nav-left-link-color); }
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn) > i,
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn) > i,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i {
        color: var(--app-nav-left-icon-color); }
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn) > .ls-caret,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn) > .ls-caret {
        color: var(--gray-icons); }
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn):hover, .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn):focus-visible,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn):hover,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn):focus-visible {
        color: var(--app-nav-left-link-hover-color);
        background: var(--app-nav-left-link-hover-bg); }
        .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn):hover > .notification-icon-container > i:first-child, .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn):focus-visible > i:first-child,
        .lagom-layout-left .app-nav-default .app-nav-menu .menu > li > a:not(.btn):focus-visible > .notification-icon-container > i:first-child,
        .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn):hover > .notification-icon-container > i:first-child,
        .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn):focus-visible > i:first-child,
        .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li > a:not(.btn):focus-visible > .notification-icon-container > i:first-child {
          color: var(--app-nav-left-icon-hover-color); }
    .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn), .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.sfHover > a:not(.btn),
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn),
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.sfHover > a:not(.btn) {
      color: var(--app-nav-left-link-hover-color);
      background: var(--app-nav-left-link-hover-bg); }
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child,
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) > svg:first-child, .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.sfHover > a:not(.btn) > i:first-child,
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.sfHover > a:not(.btn) > svg:first-child,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) > svg:first-child,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.sfHover > a:not(.btn) > i:first-child,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.sfHover > a:not(.btn) > svg:first-child {
        color: var(--app-nav-left-icon-hover-color); }
    .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.active:not(.open) > a:not(.btn), .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.open:not(.open) > a:not(.btn),
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.active:not(.open) > a:not(.btn),
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open:not(.open) > a:not(.btn) {
      background: var(--app-nav-left-link-active-bg); }
    .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.active > a:not(.btn), .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn),
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.active > a:not(.btn),
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) {
      color: var(--app-nav-left-link-active-color); }
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.active > a:not(.btn) > i,
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.active > a:not(.btn) > .ls-caret, .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) > i,
      .lagom-layout-left .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) > .ls-caret,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.active > a:not(.btn) > i,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.active > a:not(.btn) > .ls-caret,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) > i,
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open > a:not(.btn) > .ls-caret {
        color: var(--app-nav-left-icon-active-color); }
    .lagom-layout-left .app-nav-default .app-nav-menu .menu > li .dropdown-header,
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-header {
      color: var(--text-heading-color); }
  .lagom-layout-left .app-nav-primary,
  .lagom-layout-left-wide .app-nav-primary {
    background: var(--primary-block-bg); }
    .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn),
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) {
      color: var(--primary-block-link-color); }
      .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container {
        color: var(--primary-block-link-color); }
        .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > i,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > i {
          color: var(--primary-block-icon-color); }
      .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) > i,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) > i {
        color: var(--primary-block-icon-color); }
      .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus {
        color: var(--primary-block-link-hover-color);
        background: var(--primary-block-link-hover-bg); }
        .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container {
          color: var(--primary-block-link-hover-color); }
          .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container > i, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container > i, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container > i, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container > i, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container > i {
            color: var(--primary-block-link-hover-color); }
        .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open > i:first-child,
        .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open > svg:first-child, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover > i:first-child,
        .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover > svg:first-child, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active > i:first-child,
        .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active > svg:first-child, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover > svg:first-child, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus > i:first-child,
        .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus > svg:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open > i:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open > svg:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover > i:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover > svg:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active > i:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active > svg:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover > svg:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus > i:first-child,
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus > svg:first-child {
          color: var(--primary-block-icon-hover-color); }
      .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > .badge-dot,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > .badge-dot {
        outline-color: var(--primary-block-link-color); }
    .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li.active:not(.open) > a:not(.btn),
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.active:not(.open) > a:not(.btn) {
      background: var(--primary-block-link-active-bg); }
    .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li.active > a:not(.btn), .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li.open > a:not(.btn),
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.active > a:not(.btn),
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.open > a:not(.btn) {
      color: var(--primary-block-link-active-color); }
      .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li.active > a:not(.btn) > i:first-child, .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.active > a:not(.btn) > i:first-child,
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child {
        color: var(--primary-block-icon-active-color); }
    .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li .dropdown-header,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-header {
      color: var(--text-heading-color); }
    .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
      border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
    .lagom-layout-left .app-nav-primary .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc {
      color: var(--text-secondary-faded-color); }
  .lagom-layout-left .app-nav-secondary,
  .lagom-layout-left-wide .app-nav-secondary {
    background: var(--secondary-block-bg); }
    .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn),
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) {
      color: var(--secondary-block-link-color); }
      .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container {
        color: var(--secondary-block-link-color); }
        .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > i,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > i {
          color: var(--secondary-block-icon-color); }
      .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) > i,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) > i {
        color: var(--secondary-block-icon-color); }
      .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus {
        color: var(--secondary-block-link-hover-color);
        background: var(--secondary-block-link-hover-bg); }
        .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container {
          color: var(--secondary-block-link-hover-color); }
          .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container > i, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container > i, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container > i, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container > i, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container > i,
          .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container > i {
            color: var(--secondary-block-link-hover-color); }
        .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open > i:first-child,
        .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open > svg:first-child, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover > i:first-child,
        .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover > svg:first-child, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active > i:first-child,
        .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active > svg:first-child, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover > svg:first-child, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus > i:first-child,
        .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus > svg:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open > i:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open > svg:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover > i:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover > svg:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active > i:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active > svg:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover > svg:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus > i:first-child,
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus > svg:first-child {
          color: var(--secondary-block-icon-hover-color); }
      .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > .badge-dot,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > .badge-dot {
        outline-color: var(--secondary-block-link-color); }
    .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li.active:not(.open) > a:not(.btn),
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.active:not(.open) > a:not(.btn) {
      background: var(--secondary-block-link-active-bg); }
    .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li.active > a:not(.btn), .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li.open > a:not(.btn),
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.active > a:not(.btn),
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.open > a:not(.btn) {
      color: var(--secondary-block-link-active-color); }
      .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li.active > a:not(.btn) > i:first-child, .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.active > a:not(.btn) > i:first-child,
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child {
        color: var(--secondary-block-icon-active-color); }
    .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li .dropdown-header,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-header {
      color: var(--text-heading-color); }
    .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
      border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
    .lagom-layout-left .app-nav-secondary .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc {
      color: var(--text-secondary-faded-color); } }

/*
*******************************************
Layout Left - Container
*******************************************
*/
@media (min-width: 768px) {
  .lagom-layout-left .container {
    padding-left: var(--layout-left-container-gutter);
    padding-right: var(--layout-left-container-gutter); } }

/*
*******************************************
Layout Left - Bottom Sticky
*******************************************
*/
@media (max-width: 1319.98px) {
  .lagom-layout-left.page-clientareadomains .bottom-action-sticky .content-actions,
  .lagom-layout-left-wide.page-clientareadomains .bottom-action-sticky .content-actions {
    display: none; }
  .lagom-layout-left.page-clientareadomains .bottom-action-sticky .content-dropdown,
  .lagom-layout-left-wide.page-clientareadomains .bottom-action-sticky .content-dropdown {
    display: block; } }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .lagom-layout-left.page-clientareadomains .bottom-action-sticky .content + .content,
  .lagom-layout-left-wide.page-clientareadomains .bottom-action-sticky .content + .content {
    flex-basis: auto; } }

/*
*******************************************
Layout Left Wide - Navigation
*******************************************
*/
/* For screens above 992px ONLY */
@media (min-width: 992px) {
  .lagom-layout-left-wide .app-nav:not(.app-nav-only-logo) {
    width: var(--app-nav-left-wide-width); }
  .lagom-layout-left-wide .app-nav-menu .menu > li {
    padding: 0;
    transition: var(--transition-base); }
    .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) {
      padding: var(--app-nav-left-wide-link-padding-v) var(--app-nav-left-wide-link-padding-h);
      transition: var(--transition-base); }
      .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > svg + .item-text,
      .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > img + .item-text,
      .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > i + .item-text,
      .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container + .item-text {
        margin-left: var(--ui-nav-link-icon-spacing-lg); }
      .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > b {
        margin-left: auto; }
      .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > svg,
      .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > img {
        height: var(--app-nav-left-wide-svg-icon-size);
        width: var(--app-nav-left-wide-svg-icon-size); }
      .lagom-layout-left-wide .app-nav-menu .menu > li > a:not(.btn) > img {
        height: unset; }
    .lagom-layout-left-wide .app-nav-menu .menu > li:not(.open) > a:not(.btn):hover {
      padding-left: calc(var(--app-nav-left-wide-link-hover-padding-h) + var(--app-nav-left-wide-link-padding-h)); }
    .lagom-layout-left-wide .app-nav-menu .menu > li.active, .lagom-layout-left-wide .app-nav-menu .menu > li.open, .lagom-layout-left-wide .app-nav-menu .menu > li.show, .lagom-layout-left-wide .app-nav-menu .menu > li.item-open, .lagom-layout-left-wide .app-nav-menu .menu > li.sfHover {
      z-index: 1000; }
      .lagom-layout-left-wide .app-nav-menu .menu > li.active .dropdown-menu, .lagom-layout-left-wide .app-nav-menu .menu > li.open .dropdown-menu, .lagom-layout-left-wide .app-nav-menu .menu > li.show .dropdown-menu, .lagom-layout-left-wide .app-nav-menu .menu > li.item-open .dropdown-menu, .lagom-layout-left-wide .app-nav-menu .menu > li.sfHover .dropdown-menu {
        display: block;
        opacity: 1;
        visibility: visible;
        position: static;
        transition: none; }
    .lagom-layout-left-wide .app-nav-menu .menu > li.nav-item-text-only > a:not(.btn) > svg + .item-text,
    .lagom-layout-left-wide .app-nav-menu .menu > li.nav-item-text-only > a:not(.btn) > i + .item-text,
    .lagom-layout-left-wide .app-nav-menu .menu > li.nav-item-text-only > a:not(.btn) > .notification-icon-container + .item-text {
      margin-left: 0; }
    .lagom-layout-left-wide .app-nav-menu .menu > li.nav-item-text-only > a:not(.btn):hover {
      padding-left: var(--app-nav-left-wide-link-padding-h); }
    .lagom-layout-left-wide .app-nav-menu .menu > li.nav-item-text-only .dropdown-menu {
      padding-left: var(--app-nav-left-wide-dropdown-padding-h); }
    .lagom-layout-left-wide .app-nav-menu .menu > li.dark-mode-switcher label {
      margin: var(--app-nav-left-wide-link-padding-v) var(--app-nav-left-wide-link-padding-h); }
    .lagom-layout-left-wide .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
      border-top: 1px solid var(--gray-lighter-4); }
  .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu {
    position: static;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    padding: 2px var(--app-nav-left-wide-dropdown-padding-h) var(--app-nav-left-wide-dropdown-padding-v);
    padding-left: calc(var(--app-nav-left-wide-dropdown-padding-h) + calc(var(--app-nav-left-wide-svg-icon-size) / 2));
    border-radius: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    overflow: hidden;
    opacity: 1;
    visibility: visible;
    transition: none;
    transform: none;
    float: none; }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item {
      border-left: var(--app-nav-left-wide-dropdown-border-left);
      border-radius: 0 var(--ui-nav-link-border-radius) var(--ui-nav-link-border-radius) 0; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li > a:not(.btn), .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn), .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item > a:not(.btn) {
        display: block;
        max-width: 100%;
        width: 100%;
        padding-right: 0;
        white-space: normal;
        padding-left: calc(var(--app-nav-left-wide-dropdown-padding-h) - calc(var(--app-nav-left-dropdown-icon-size) / 2)); }
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i {
          margin: 0 calc((var(--app-nav-left-icon-size) - var(--app-nav-left-dropdown-icon-size)) / 2 + var(--spacing-2x)) 0 calc((var(--app-nav-left-icon-size) - var(--app-nav-left-dropdown-icon-size)) / 2); }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li.nav-divider, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.nav-divider, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item.nav-divider {
        display: none; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:hover:not(.active) > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:focus:not(.active) > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:active:not(.active) > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover:not(.active) > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus:not(.active) > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active:not(.active) > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:hover:not(.active) > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:focus:not(.active) > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:active:not(.active) > a {
        background: transparent;
        transform: translateX(var(--app-nav-left-wide-dropdown-link-hover-padding-h)); }
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:hover:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:hover:not(.active) > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:focus:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:focus:not(.active) > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:active:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:active:not(.active) > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover:not(.active) > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus:not(.active) > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active:not(.active) > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:hover:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:hover:not(.active) > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:focus:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:focus:not(.active) > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:active:not(.active) > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:active:not(.active) > a .badge-danger {
          transform: translateX(-12px); }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li.active > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item.active > a {
        background: transparent;
        transform: translateX(var(--app-nav-left-wide-dropdown-link-hover-padding-h)); }
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li.active > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li.active > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item.active > a .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item.active > a .badge-danger {
          margin-right: var(--spacing-3x);
          margin-left: var(--spacing-1x); }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li .badge-danger, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item .badge-info, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item .badge-danger {
        margin-right: 12px;
        margin-left: var(--spacing-1x); }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li .menu-item-content, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li .menu-item-content, .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item .menu-item-content {
        flex-grow: 1; }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item {
      justify-content: space-between;
      cursor: pointer; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item .nav-header-text {
        display: flex;
        align-items: center; }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu.dropdown-menu-collapse {
      background: var(--gray-faded);
      margin: var(--spacing-1x) var(--dropdown-link-padding-h);
      border-radius: var(--ui-block-border-radius-lg);
      min-width: unset;
      padding: 6px 0;
      max-width: calc(100% - var(--dropdown-link-padding-h));
      width: 100% !important; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu.dropdown-menu-collapse .nav-divider {
        display: none; }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item {
      padding-right: 0; }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-header {
      display: none; }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-parent + .dropdown-menu-parent {
      margin-top: var(--spacing-3x); }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .nav-header {
      color: var(--dropdown-link-color);
      font-size: var(--font-size-lg);
      line-height: var(--line-height-lg);
      font-weight: var(--font-weight-medium);
      padding-right: var(--dropdown-link-padding-h);
      padding-top: 0;
      padding-bottom: 12px; }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list {
      list-style: none;
      padding-left: 0; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list > li {
        border-radius: 0 var(--ui-nav-link-border-radius) var(--ui-nav-link-border-radius) 0; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > svg,
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > img {
        height: var(--app-nav-top-menu-svg-icon-size);
        width: var(--app-nav-top-menu-svg-icon-size);
        margin-right: var(--spacing-2x); }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > img {
        height: unset; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content {
        display: flex;
        align-items: flex-start;
        white-space: normal; }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar {
      padding-top: var(--spacing-2x); }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-content {
        width: 100%;
        background: var(--gray-faded);
        border-radius: var(--border-radius-lg);
        color: var(--text-body-color);
        padding: var(--spacing-3x);
        font-size: var(--font-size-base);
        line-height: var(--line-height-base);
        font-weight: var(--font-weight-light); }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic.predefined-graphic {
        position: relative;
        height: 72px; }
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic.predefined-graphic .promo-slider-icon {
          height: 72px;
          position: absolute; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic > img,
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic > svg {
        max-width: 100%; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic + .dropdown-menu-sidebar-desc {
        margin-top: var(--spacing-3x); }
    .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu.client-alerts {
      margin-left: 0;
      margin-right: 0; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu.client-alerts .client-alerts-header {
        display: none; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu.client-alerts > li[menuitemname="Alert_0"] {
        display: none; }
      .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) {
        align-items: flex-start; }
        .lagom-layout-left-wide .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) > i {
          padding-top: 5px; }
  .lagom-layout-left-wide .app-nav-menu .menu > li.nav-item-btn {
    padding: var(--app-nav-left-wide-link-padding-v) var(--app-nav-left-wide-link-padding-h); }
    .lagom-layout-left-wide .app-nav-menu .menu > li.nav-item-btn .dropdown-menu {
      padding-bottom: 0;
      padding-right: 0;
      padding-left: calc(var(--app-nav-left-wide-dropdown-padding-h) + calc(var(--app-nav-left-wide-svg-icon-size) / 2 - var(--app-nav-left-wide-link-padding-h))); }
    .lagom-layout-left-wide .app-nav-menu .menu > li.nav-item-btn + .nav-item-btn {
      padding-top: 0; } }

/*
*******************************************
Layout Left Wide - Navigation Style
*******************************************
*/
/* For screens above 992px ONLY */
@media (min-width: 992px) {
  .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open {
    background: var(--app-nav-left-wide-link-active-bg); }
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.active .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.active .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.active .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active {
      border-left: 2px solid var(--ui-nav-link-active-color); }
  .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li.open {
    background: var(--app-nav-left-wide-dropdown-open-bg); }
  .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:hover, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:focus, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:hover, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:focus, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active {
    background: var(--app-nav-left-wide-dropdown-link-hover-bg); }
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:hover > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:focus > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:active > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:hover > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:focus > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:active > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a {
      color: var(--app-nav-left-wide-dropdown-link-hover-color); }
      .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:hover > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:focus > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li:active > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:hover > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:focus > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li:active > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a > i {
        color: var(--app-nav-left-wide-dropdown-link-icon-hover-color); }
  .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active {
    background: var(--app-nav-left-wide-dropdown-link-active-bg);
    color: var(--app-nav-left-wide-dropdown-link-active-color); }
    .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > li.active a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > li.active a, .lagom-layout-left-wide .app-nav-default .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active a {
      color: var(--app-nav-left-wide-dropdown-icon-active-color); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.active .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.active .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.active .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.open .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.open .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.open .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active {
    border-left: 2px solid var(--primary-block-divider-active-color); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.open, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.active {
    background: var(--app-nav-left-wide-dropdown-open-bg-on-primary); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .notification-icon-container > .badge-dot {
    outline-color: var(--primary-block-link-color); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
    border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item,
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item,
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header {
    color: var(--primary-block-link-color); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item b,
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item span > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item b,
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item span > i {
    color: var(--primary-block-link-icon-hover-color); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item {
    border-color: var(--primary-block-divider-color); }
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn), .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) span.menu-item-title, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn), .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn), .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) span.menu-item-title, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn), .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title {
      color: var(--primary-block-link-color); }
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) span.menu-item-title > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) span.menu-item-title > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title > i {
        color: var(--primary-block-link-icon-hover-color); }
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:hover, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:focus, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active {
      background: var(--primary-block-link-hover-bg); }
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:hover > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:focus > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:active > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a {
        color: var(--primary-block-link-hover-color); }
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:hover > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:focus > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:active > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a > i {
          color: var(--primary-block-link-hover-icon-color); }
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active {
      background: var(--primary-block-link-active-bg); }
      .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li.active > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active > a {
        color: var(--primary-block-link-active-color); }
        .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li.active > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active > a > i {
          color: var(--primary-block-link-icon-active-color); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed),
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover,
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed),
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover,
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus {
    color: var(--primary-block-link-hover-color); }
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed) b,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed) span > i,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover b,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover span > i,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus b,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus span > i, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed) b,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed) span > i,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover b,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover span > i,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus b,
    .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus span > i {
      color: var(--primary-block-link-hover-icon-color); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-collapse, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .dropdown-menu-collapse {
    background: var(--app-nav-left-wide-dropdown-open-bg-on-primary); }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-primary, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-primary {
    color: var(--brand-primary-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-info, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-info {
    color: var(--brand-info-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-danger, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-danger {
    color: var(--brand-danger-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-warning, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-warning {
    color: var(--brand-warning-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-success, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-success {
    color: var(--brand-success-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li:not(:last-of-type):after, .lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li:not(:last-of-type):after {
    background: var(--secondary-block-divider-color); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.active .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.active .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.active .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.open .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.open .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.open .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active {
    border-left: 2px solid var(--secondary-block-divider-active-color); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.open, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.active {
    background: var(--app-nav-left-wide-dropdown-open-bg-on-secondary); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .notification-icon-container > .badge-dot {
    outline-color: var(--secondary-block-link-color); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
    border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item,
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item,
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header {
    color: var(--secondary-block-link-color); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item b,
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item span > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item b,
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item span > i {
    color: var(--secondary-block-link-icon-hover-color); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item {
    border-left-color: var(--secondary-block-divider-color); }
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn), .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) span.menu-item-title, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn), .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn), .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) span.menu-item-title, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn), .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title {
      color: var(--secondary-block-link-color); }
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) span.menu-item-title > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) span.menu-item-title > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title > i {
        color: var(--secondary-block-link-icon-hover-color); }
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:hover, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:focus, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active {
      background: var(--secondary-block-link-hover-bg); }
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:hover > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:focus > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:active > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a {
        color: var(--secondary-block-link-hover-color); }
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:hover > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:focus > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:active > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a > i {
          color: var(--secondary-block-link-hover-icon-color); }
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li.active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active {
      background: var(--secondary-block-link-active-bg); }
      .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li.active > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active > a {
        color: var(--secondary-block-link-active-color); }
        .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li.active > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active > a > i {
          color: var(--secondary-block-link-icon-active-color); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed),
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover,
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed),
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover,
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus {
    color: var(--secondary-block-link-hover-color); }
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed) b,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed) span > i,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover b,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover span > i,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus b,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus span > i, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed) b,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed) span > i,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover b,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover span > i,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus b,
    .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus span > i {
      color: var(--secondary-block-link-hover-icon-color); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-collapse, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .dropdown-menu-collapse {
    background: var(--app-nav-left-wide-dropdown-open-bg-on-secondary); }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-primary, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-primary {
    color: var(--brand-primary-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-info, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-info {
    color: var(--brand-info-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-danger, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-danger {
    color: var(--brand-danger-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-warning, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-warning {
    color: var(--brand-warning-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-success, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-success {
    color: var(--brand-success-lighter-2) !important; }
  .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li:not(:last-of-type):after, .lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li:not(:last-of-type):after {
    background: var(--secondary-block-divider-color); } }

/*
*******************************************
Layout Left Wide - Body
*******************************************
*/
/* For screens above 992px ONLY */
@media (min-width: 992px) {
  .lagom-layout-left-wide .app-main {
    position: relative;
    margin-left: var(--app-nav-left-wide-width); }
  .lagom-layout-left-wide .alert.alert-floating {
    left: var(--app-nav-left-wide-width); }
  .lagom-layout-left-wide.page-type-full .app-main {
    margin-right: 0;
    margin-left: 0; }
  .lagom-layout-left-wide.page-type-full .app-main .main-body {
    margin-top: 0px; } }

/*
*******************************************
Layout Left Wide - Content
*******************************************
*/
@media (min-width: 1320px) {
  .lagom-layout-left-wide .is-affixed .order-summary {
    margin-top: var(--ui-block-spacing-xlg); } }

/*
*******************************************
Layout Left Wide - Container
*******************************************
*/
@media (max-width: 1319.98px) {
  .lagom-layout-left-wide .order-summary-mob {
    margin-bottom: 0; }
    .lagom-layout-left-wide .order-summary-mob .summary-container {
      padding: 0; }
      .lagom-layout-left-wide .order-summary-mob .summary-container .order-summary-actions button {
        border-radius: 0; } }

@media (min-width: 992px) {
  .lagom-layout-left-wide .main-content {
    min-height: 0px; } }

@media (max-width: 991.98px) {
  .lagom-layout-left-wide .order-summary-mob {
    left: 0;
    display: block; }
    .lagom-layout-left-wide .order-summary-mob .summary-container {
      padding: 0; } }

/*
*******************************************
Layout Left Wide - Bottom Sticky
*******************************************
*/
/* For screens above 992px ONLY */
@media (min-width: 992px) {
  .lagom-layout-left-wide .bottom-action-sticky.is-fixed {
    margin-left: var(--app-nav-left-wide-width); } }

/*
*******************************************
Layout Left Wide - Main
*******************************************
*/
.lagom-layout-wide .main-sidebar {
  order: 2;
  padding-left: var(--main-sidebar-spacing-h);
  padding-right: 0; }

@media (min-width: 768px) and (max-width: 991.98px) {
  .lagom-layout-left-wide .panel-sidebar > .list-group .list-group-item {
    flex-basis: calc(33% - 16px); }
  .lagom-layout-left-wide .hidden-sm {
    display: none; } }

/*
*******************************************
Layout Left Wide - Order
*******************************************
*/
@media (max-width: 1319.98px) {
  .lagom-layout-left-wide #sticky-sidebar.is-affixed .inner-wrapper-sticky {
    position: relative !important;
    width: 100% !important; }
  .lagom-layout-left-wide .main-grid-order .main-content .order-sidebar {
    width: 100%;
    padding-left: 0px; }
  .lagom-layout-left-wide .main-grid-order .main-content .order-content {
    flex: unset; }
  .lagom-layout-left-wide .order-summary-mob .total-due-today {
    padding-left: var(--ui-block-padding-base);
    padding-right: var(--ui-block-padding-base); }
  .lagom-layout-left-wide .order-summary-mob .btn.hidden-md {
    display: block !important; }
  .lagom-layout-left-wide .categories-collapsed.visible-xs {
    margin-bottom: var(--ui-block-spacing-sm);
    display: block !important; } }

@media (max-width: 1319.98px) {
  .lagom-layout-left-wide .order-summary-mob {
    border-radius: 0;
    display: block;
    position: fixed;
    left: var(--app-nav-left-wide-width);
    z-index: var(--zindex-navbar-fixed);
    width: unset !important;
    bottom: 0;
    padding: 0;
    right: 0; }
    .lagom-layout-left-wide .order-summary-mob .btn {
      border-radius: 0;
      width: 100%; } }

@media (max-width: 991.98px) {
  .lagom-layout-left-wide .order-summary-mob {
    left: 0; } }

/*
*******************************************
Navigation Menu on Mobile
*******************************************
*/
@media (max-width: 991.98px) {
  .lagom:not(.nav-mobile-dropdown) .app-nav-menu {
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--zindex-navbar-fixed);
    height: 100%;
    width: var(--mob-app-nav-width);
    padding: var(--mob-app-nav-menu-padding-h) 0;
    border: 0;
    box-shadow: var(--app-nav-left-box-shadow);
    transition: transform var(--transition-base);
    background: var(--mob-app-nav-bg);
    transform: translateX(calc(-1 * var(--mob-app-nav-width) - 24px));
    overflow-y: auto;
    overflow-x: hidden; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .container {
      padding: 0 !important;
      width: 100% !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .logo {
      display: none; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) {
      color: var(--app-nav-left-link-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i {
        color: var(--app-nav-left-icon-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > .ls-caret {
        color: var(--gray-icons); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn):hover, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn):focus-visible {
        color: var(--app-nav-left-link-hover-color);
        background: var(--app-nav-left-link-hover-bg); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn):hover > .notification-icon-container > i:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn):focus-visible > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn):focus-visible > .notification-icon-container > i:first-child {
          color: var(--app-nav-left-icon-hover-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.sfHover > a:not(.btn) {
      color: var(--app-nav-left-link-hover-color);
      background: var(--app-nav-left-link-hover-bg); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child,
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open > a:not(.btn) > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.sfHover > a:not(.btn) > i:first-child,
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.sfHover > a:not(.btn) > svg:first-child {
        color: var(--app-nav-left-icon-hover-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active:not(.open) > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open:not(.open) > a:not(.btn) {
      background: var(--app-nav-left-link-active-bg); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open > a:not(.btn) {
      color: var(--app-nav-left-link-active-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active > a:not(.btn) > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active > a:not(.btn) > .ls-caret, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open > a:not(.btn) > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open > a:not(.btn) > .ls-caret {
        color: var(--app-nav-left-icon-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-header {
      color: var(--text-heading-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li {
      padding: 0;
      transition: var(--transition-base); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) {
        padding: var(--app-nav-left-wide-link-padding-v) var(--app-nav-left-wide-link-padding-h);
        transition: var(--transition-base); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > svg + .item-text,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > img + .item-text,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > i + .item-text,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container + .item-text {
          margin-left: var(--ui-nav-link-icon-spacing-lg); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > b {
          margin-left: auto; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > svg,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > img {
          height: var(--app-nav-left-wide-svg-icon-size);
          width: var(--app-nav-left-wide-svg-icon-size); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > img {
          height: unset; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li:not(.open) > a:not(.btn):hover {
        padding-left: calc(var(--app-nav-left-wide-link-hover-padding-h) + var(--app-nav-left-wide-link-padding-h)); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.show, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.item-open, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.sfHover {
        z-index: 1000; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active .dropdown-menu, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open .dropdown-menu, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.show .dropdown-menu, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.item-open .dropdown-menu, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.sfHover .dropdown-menu {
          display: block;
          opacity: 1;
          visibility: visible;
          position: static;
          transition: none; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.nav-item-text-only > a:not(.btn) > svg + .item-text,
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.nav-item-text-only > a:not(.btn) > i + .item-text,
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.nav-item-text-only > a:not(.btn) > .notification-icon-container + .item-text {
        margin-left: 0; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.nav-item-text-only > a:not(.btn):hover {
        padding-left: var(--app-nav-left-wide-link-padding-h); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.nav-item-text-only .dropdown-menu {
        padding-left: var(--app-nav-left-wide-dropdown-padding-h); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.dark-mode-switcher label {
        margin: var(--app-nav-left-wide-link-padding-v) var(--app-nav-left-wide-link-padding-h); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
        border-top: 1px solid var(--gray-lighter-4); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu {
      position: static;
      top: 0;
      left: 0;
      display: none;
      width: 100%;
      padding: 2px var(--app-nav-left-wide-dropdown-padding-h) var(--app-nav-left-wide-dropdown-padding-v);
      padding-left: calc(var(--app-nav-left-wide-dropdown-padding-h) + calc(var(--app-nav-left-wide-svg-icon-size) / 2));
      border-radius: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
      overflow: hidden;
      opacity: 1;
      visibility: visible;
      transition: none;
      transform: none;
      float: none; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item {
        border-left: var(--app-nav-left-wide-dropdown-border-left);
        border-radius: 0 var(--ui-nav-link-border-radius) var(--ui-nav-link-border-radius) 0; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item > a:not(.btn) {
          display: block;
          max-width: 100%;
          width: 100%;
          padding-right: 0;
          white-space: normal;
          padding-left: calc(var(--app-nav-left-wide-dropdown-padding-h) - calc(var(--app-nav-left-dropdown-icon-size) / 2)); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i {
            margin: 0 calc((var(--app-nav-left-icon-size) - var(--app-nav-left-dropdown-icon-size)) / 2 + var(--spacing-2x)) 0 calc((var(--app-nav-left-icon-size) - var(--app-nav-left-dropdown-icon-size)) / 2); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li.nav-divider, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.nav-divider, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item.nav-divider {
          display: none; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:hover:not(.active) > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:focus:not(.active) > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:active:not(.active) > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover:not(.active) > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus:not(.active) > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active:not(.active) > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:hover:not(.active) > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:focus:not(.active) > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:active:not(.active) > a {
          background: transparent;
          transform: translateX(var(--app-nav-left-wide-dropdown-link-hover-padding-h)); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:hover:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:hover:not(.active) > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:focus:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:focus:not(.active) > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:active:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li:active:not(.active) > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover:not(.active) > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus:not(.active) > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active:not(.active) > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:hover:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:hover:not(.active) > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:focus:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:focus:not(.active) > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:active:not(.active) > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item:active:not(.active) > a .badge-danger {
            transform: translateX(-12px); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li.active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item.active > a {
          background: transparent;
          transform: translateX(var(--app-nav-left-wide-dropdown-link-hover-padding-h)); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li.active > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li.active > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item.active > a .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item.active > a .badge-danger {
            margin-right: var(--spacing-3x);
            margin-left: var(--spacing-1x); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li .badge-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item .badge-info, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item .badge-danger {
          margin-right: 12px;
          margin-left: var(--spacing-1x); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) > li .menu-item-content, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li .menu-item-content, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-items .dropdown-menu-item .menu-item-content {
          flex-grow: 1; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item {
        justify-content: space-between;
        cursor: pointer; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item .nav-header-text {
          display: flex;
          align-items: center; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu.dropdown-menu-collapse {
        background: var(--gray-faded);
        margin: var(--spacing-1x) var(--dropdown-link-padding-h);
        border-radius: var(--ui-block-border-radius-lg);
        min-width: unset;
        padding: 6px 0;
        max-width: calc(100% - var(--dropdown-link-padding-h));
        width: 100% !important; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu.dropdown-menu-collapse .nav-divider {
          display: none; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .nav-header-collapse .nav-header-item {
        padding-right: 0; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-header {
        display: none; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-parent + .dropdown-menu-parent {
        margin-top: var(--spacing-3x); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .nav-header {
        color: var(--dropdown-link-color);
        font-size: var(--font-size-lg);
        line-height: var(--line-height-lg);
        font-weight: var(--font-weight-medium);
        padding-right: var(--dropdown-link-padding-h);
        padding-top: 0;
        padding-bottom: 12px; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list {
        list-style: none;
        padding-left: 0; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list > li {
          border-radius: 0 var(--ui-nav-link-border-radius) var(--ui-nav-link-border-radius) 0; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > svg,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > img {
          height: var(--app-nav-top-menu-svg-icon-size);
          width: var(--app-nav-top-menu-svg-icon-size);
          margin-right: var(--spacing-2x); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a > img {
          height: unset; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-content .dropdown-menu-list .dropdown-menu-item > a .menu-item-content {
          display: flex;
          align-items: flex-start;
          white-space: normal; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar {
        padding-top: var(--spacing-2x); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-content {
          width: 100%;
          background: var(--gray-faded);
          border-radius: var(--border-radius-lg);
          color: var(--text-body-color);
          padding: var(--spacing-3x);
          font-size: var(--font-size-base);
          line-height: var(--line-height-base);
          font-weight: var(--font-weight-light); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic.predefined-graphic {
          position: relative;
          height: 72px; }
          .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic.predefined-graphic .promo-slider-icon {
            height: 72px;
            position: absolute; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic > img,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic > svg {
          max-width: 100%; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-sidebar-graphic + .dropdown-menu-sidebar-desc {
          margin-top: var(--spacing-3x); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu.client-alerts {
        margin-left: 0;
        margin-right: 0; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu.client-alerts .client-alerts-header {
          display: none; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu.client-alerts > li[menuitemname="Alert_0"] {
          display: none; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) {
          align-items: flex-start; }
          .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) > i {
            padding-top: 5px; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.nav-item-btn {
      padding: var(--app-nav-left-wide-link-padding-v) var(--app-nav-left-wide-link-padding-h); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.nav-item-btn .dropdown-menu {
        padding-bottom: 0;
        padding-right: 0;
        padding-left: calc(var(--app-nav-left-wide-dropdown-padding-h) + calc(var(--app-nav-left-wide-svg-icon-size) / 2 - var(--app-nav-left-wide-link-padding-h))); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.nav-item-btn + .nav-item-btn {
        padding-top: 0; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open {
      background: var(--app-nav-left-wide-link-active-bg); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.active .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active {
        border-left: 2px solid var(--ui-nav-link-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.open {
      background: var(--app-nav-left-wide-dropdown-open-bg); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active {
      background: var(--app-nav-left-wide-dropdown-link-hover-bg); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a {
        color: var(--app-nav-left-wide-dropdown-link-hover-color); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a > i {
          color: var(--app-nav-left-wide-dropdown-link-icon-hover-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active {
      background: var(--app-nav-left-wide-dropdown-link-active-bg);
      color: var(--app-nav-left-wide-dropdown-link-active-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > li.active a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > li.active a, .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active a {
        color: var(--app-nav-left-wide-dropdown-icon-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) {
      font-size: var(--app-nav-left-link-font-size);
      font-weight: var(--app-nav-left-link-font-weight); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i {
        color: var(--app-nav-left-icon-color); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > .notification-icon-container > i:first-child {
          height: var(--app-nav-left-icon-size);
          width: var(--app-nav-left-icon-size);
          font-size: var(--app-nav-left-icon-size);
          text-align: center; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > .item-text {
        display: block;
        max-width: 100%;
        white-space: normal;
        overflow: hidden;
        text-overflow: ellipsis; }
        .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li > a:not(.btn) > .item-text.item-text-badge {
          display: flex; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li .dropdown-menu li > a > i {
      width: var(--app-nav-left-dropdown-icon-size);
      height: var(--app-nav-left-dropdown-icon-size);
      font-size: var(--app-nav-left-dropdown-icon-size); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.dropdown-mega .menu-item-content {
      display: flex;
      flex-direction: column;
      align-items: flex-start; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-title {
        display: flex;
        align-items: center; }
      .lagom:not(.nav-mobile-dropdown) .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc {
        color: var(--text-lighter-color);
        font-size: var(--font-size-xs);
        line-height: var(--line-height-xs);
        font-weight: var(--font-weight-base);
        white-space: break-spaces; }
  .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu {
    background: var(--primary-block-bg); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) {
      color: var(--primary-block-link-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container {
        color: var(--primary-block-link-color); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > i {
          color: var(--primary-block-icon-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) > i {
        color: var(--primary-block-icon-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus {
        color: var(--primary-block-link-hover-color);
        background: var(--primary-block-link-hover-bg); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container {
          color: var(--primary-block-link-hover-color); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container > i {
            color: var(--primary-block-link-hover-color); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).open > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).sfHover > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn).active > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):hover > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus > svg:first-child {
          color: var(--primary-block-icon-hover-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > .badge-dot {
        outline-color: var(--primary-block-link-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.active:not(.open) > a:not(.btn) {
      background: var(--primary-block-link-active-bg); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.active > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.open > a:not(.btn) {
      color: var(--primary-block-link-active-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.active > a:not(.btn) > i:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child {
        color: var(--primary-block-icon-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-header {
      color: var(--text-heading-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
      border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc {
      color: var(--text-secondary-faded-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.active .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.active .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.active .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.open .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.open .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.open .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active {
      border-left: 2px solid var(--primary-block-divider-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.open, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.active {
      background: var(--app-nav-left-wide-dropdown-open-bg-on-primary); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .notification-icon-container > .badge-dot {
      outline-color: var(--primary-block-link-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
      border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item,
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item,
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header {
      color: var(--primary-block-link-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item b,
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item span > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item b,
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item span > i {
      color: var(--primary-block-link-icon-hover-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item {
      border-color: var(--primary-block-divider-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) span.menu-item-title, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) span.menu-item-title, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title {
        color: var(--primary-block-link-color); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) span.menu-item-title > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) span.menu-item-title > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title > i {
          color: var(--primary-block-link-icon-hover-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active {
        background: var(--primary-block-link-hover-bg); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a {
          color: var(--primary-block-link-hover-color); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a > i {
            color: var(--primary-block-link-hover-icon-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active {
        background: var(--primary-block-link-active-bg); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li.active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active > a {
          color: var(--primary-block-link-active-color); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > li.active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active > a > i {
            color: var(--primary-block-link-icon-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed),
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover,
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed),
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover,
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus {
      color: var(--primary-block-link-hover-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed) b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed) span > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover span > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus span > i, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed) b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed) span > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover span > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus span > i {
        color: var(--primary-block-link-hover-icon-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-collapse, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .dropdown-menu-collapse {
      background: var(--app-nav-left-wide-dropdown-open-bg-on-primary); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-primary, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-primary {
      color: var(--brand-primary-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-info, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-info {
      color: var(--brand-info-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-danger {
      color: var(--brand-danger-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-warning, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-warning {
      color: var(--brand-warning-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-success, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-success {
      color: var(--brand-success-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li:not(:last-of-type):after, .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li:not(:last-of-type):after {
      background: var(--secondary-block-divider-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc {
      color: var(--text-secondary-faded-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn) > .ls {
      color: var(--primary-block-text-faded-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-primary .app-nav-menu .menu > li > a:not(.btn):focus > .ls {
      color: var(--primary-block-link-active-color); }
  .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu {
    background: var(--secondary-block-bg); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) {
      color: var(--secondary-block-link-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container {
        color: var(--secondary-block-link-color); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > i {
          color: var(--secondary-block-icon-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) > i {
        color: var(--secondary-block-icon-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus {
        color: var(--secondary-block-link-hover-color);
        background: var(--secondary-block-link-hover-bg); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container {
          color: var(--secondary-block-link-hover-color); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open .notification-icon-container > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover .notification-icon-container > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active .notification-icon-container > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover .notification-icon-container > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus .notification-icon-container > i {
            color: var(--secondary-block-link-hover-color); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).open > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).sfHover > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn).active > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):hover > svg:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus > i:first-child,
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus > svg:first-child {
          color: var(--secondary-block-icon-hover-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) .notification-icon-container > .badge-dot {
        outline-color: var(--secondary-block-link-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.active:not(.open) > a:not(.btn) {
      background: var(--secondary-block-link-active-bg); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.active > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.open > a:not(.btn) {
      color: var(--secondary-block-link-active-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.active > a:not(.btn) > i:first-child, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.open > a:not(.btn) > i:first-child {
        color: var(--secondary-block-icon-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-header {
      color: var(--text-heading-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
      border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.dropdown-mega .menu-item-content .menu-item-desc {
      color: var(--text-secondary-faded-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.active .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.active .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.active .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.open .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.open .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.open .dropdown-menu .dropdown-menu-items .dropdown-menu-item.active {
      border-left: 2px solid var(--secondary-block-divider-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.open, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.active {
      background: var(--app-nav-left-wide-dropdown-open-bg-on-secondary); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .notification-icon-container > .badge-dot {
      outline-color: var(--secondary-block-link-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li.dark-mode-switcher.is-right:last-child {
      border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item,
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item,
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header {
      color: var(--secondary-block-link-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item b,
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item span > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item b,
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item span > i {
      color: var(--secondary-block-link-icon-hover-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item {
      border-left-color: var(--secondary-block-divider-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) span.menu-item-title, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) span.menu-item-title, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn), .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title {
        color: var(--secondary-block-link-color); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li > a:not(.btn) span.menu-item-title > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li > a:not(.btn) span.menu-item-title > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item > a:not(.btn) span.menu-item-title > i {
          color: var(--secondary-block-link-icon-hover-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active {
        background: var(--secondary-block-link-hover-bg); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a {
          color: var(--secondary-block-link-hover-color); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li:active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:hover > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:focus > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item:active > a > i {
            color: var(--secondary-block-link-hover-icon-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active {
        background: var(--secondary-block-link-active-bg); }
        .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li.active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active > a {
          color: var(--secondary-block-link-active-color); }
          .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > li.active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu > .dropdown-menu-items .dropdown-menu-item.active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > li.active > a > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list > .dropdown-menu-items .dropdown-menu-item.active > a > i {
            color: var(--secondary-block-link-icon-active-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed),
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover,
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed),
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover,
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus {
      color: var(--secondary-block-link-hover-color); }
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed) b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:not(.collapsed) span > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:hover span > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .nav-header-item:focus span > i, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed) b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:not(.collapsed) span > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:hover span > i,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus b,
      .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .nav-header-item:focus span > i {
        color: var(--secondary-block-link-hover-icon-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu .dropdown-menu-collapse, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list .dropdown-menu-collapse {
      background: var(--app-nav-left-wide-dropdown-open-bg-on-secondary); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-primary, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-primary {
      color: var(--brand-primary-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-info, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-info {
      color: var(--brand-info-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-danger, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-danger {
      color: var(--brand-danger-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-warning, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-warning {
      color: var(--brand-warning-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li > a:not(.btn) i.text-success, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li > a:not(.btn) i.text-success {
      color: var(--brand-success-lighter-2) !important; }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu.client-alerts > li:not(:last-of-type):after, .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li .dropdown-menu:not(.dropdown-menu-collapse) .dropdown-menu-list.client-alerts > li:not(:last-of-type):after {
      background: var(--secondary-block-divider-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn) > .ls {
      color: var(--secondary-block-text-faded-color); }
    .lagom:not(.nav-mobile-dropdown) .app-nav-secondary .app-nav-menu .menu > li > a:not(.btn):focus > .ls {
      color: var(--secondary-block-link-active-color); } }

/*
*******************************************
Layout Left Wide - Package - page upgrade
*******************************************
*/
@media (min-width: 992px) and (max-width: 1620px) {
  .lagom-layout-left-wide.page-upgrade .main-content .section-body .package {
    padding: 24px; }
    .lagom-layout-left-wide.page-upgrade .main-content .section-body .package-actions {
      width: 100%; }
      .lagom-layout-left-wide.page-upgrade .main-content .section-body .package-actions .btn {
        min-width: unset;
        width: 100%;
        height: var(--ui-height-xlg);
        font-size: var(--font-size-md);
        line-height: var(--line-height-sm);
        white-space: normal;
        word-wrap: break-word; } }

/*
*******************************************
Top Nav - General
*******************************************
*/
ul.top-nav {
  display: flex;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  white-space: nowrap;
  width: 100%;
  justify-content: flex-end; }
  ul.top-nav > li,
  ul.top-nav > a:not(.btn) {
    display: flex;
    position: relative;
    align-items: center; }
  ul.top-nav > li.show > a:not(.btn), ul.top-nav > li.show > a:not(.btn):hover, ul.top-nav > li.show > a:not(.btn):focus, ul.top-nav > li.show > a:not(.btn):active,
  ul.top-nav > li.show > a:not(.btn) .item-text,
  ul.top-nav > li.open > a:not(.btn),
  ul.top-nav > li.open > a:not(.btn):hover,
  ul.top-nav > li.open > a:not(.btn):focus,
  ul.top-nav > li.open > a:not(.btn):active,
  ul.top-nav > li.open > a:not(.btn) .item-text,
  ul.top-nav > li.active > a:not(.btn),
  ul.top-nav > li.active > a:not(.btn):hover,
  ul.top-nav > li.active > a:not(.btn):focus,
  ul.top-nav > li.active > a:not(.btn):active,
  ul.top-nav > li.active > a:not(.btn) .item-text {
    color: var(--top-nav-link-active-color); }
    ul.top-nav > li.show > a:not(.btn) > i,
    ul.top-nav > li.show > a:not(.btn) > .ls-caret, ul.top-nav > li.show > a:not(.btn):hover > i,
    ul.top-nav > li.show > a:not(.btn):hover > .ls-caret, ul.top-nav > li.show > a:not(.btn):focus > i,
    ul.top-nav > li.show > a:not(.btn):focus > .ls-caret, ul.top-nav > li.show > a:not(.btn):active > i,
    ul.top-nav > li.show > a:not(.btn):active > .ls-caret,
    ul.top-nav > li.show > a:not(.btn) .item-text > i,
    ul.top-nav > li.show > a:not(.btn) .item-text > .ls-caret,
    ul.top-nav > li.open > a:not(.btn) > i,
    ul.top-nav > li.open > a:not(.btn) > .ls-caret,
    ul.top-nav > li.open > a:not(.btn):hover > i,
    ul.top-nav > li.open > a:not(.btn):hover > .ls-caret,
    ul.top-nav > li.open > a:not(.btn):focus > i,
    ul.top-nav > li.open > a:not(.btn):focus > .ls-caret,
    ul.top-nav > li.open > a:not(.btn):active > i,
    ul.top-nav > li.open > a:not(.btn):active > .ls-caret,
    ul.top-nav > li.open > a:not(.btn) .item-text > i,
    ul.top-nav > li.open > a:not(.btn) .item-text > .ls-caret,
    ul.top-nav > li.active > a:not(.btn) > i,
    ul.top-nav > li.active > a:not(.btn) > .ls-caret,
    ul.top-nav > li.active > a:not(.btn):hover > i,
    ul.top-nav > li.active > a:not(.btn):hover > .ls-caret,
    ul.top-nav > li.active > a:not(.btn):focus > i,
    ul.top-nav > li.active > a:not(.btn):focus > .ls-caret,
    ul.top-nav > li.active > a:not(.btn):active > i,
    ul.top-nav > li.active > a:not(.btn):active > .ls-caret,
    ul.top-nav > li.active > a:not(.btn) .item-text > i,
    ul.top-nav > li.active > a:not(.btn) .item-text > .ls-caret {
      color: var(--top-nav-link-icon-active-color); }
  ul.top-nav > li:not(.nav-item-text-only) > a .item-text.item-text-badge .badge-dot,
  ul.top-nav > li:not(.nav-item-text-only) > a .item-text.item-text-badge .badge-icon {
    display: none; }
  ul.top-nav > li:not(.nav-item-icon-only) > a > i:not(.ls-caret) {
    margin-right: var(--spacing-1x); }
  ul.top-nav > li.nav-item-icon-only > a:has(> span.badge:not(.hidden):not(.opacity-0)) {
    padding-right: var(--spacing-3x); }
    ul.top-nav > li.nav-item-icon-only > a:has(> span.badge:not(.hidden):not(.opacity-0)) .badge {
      right: 8px; }
  ul.top-nav > li > a:not(.btn) {
    display: flex;
    align-items: center;
    position: relative;
    height: 100%;
    padding: var(--top-nav-link-padding-v) var(--top-nav-link-padding-h);
    color: var(--top-nav-link-color);
    text-decoration: none; }
    ul.top-nav > li > a:not(.btn) > i,
    ul.top-nav > li > a:not(.btn) > .ls-caret,
    ul.top-nav > li > a:not(.btn) > .notification-icon-container > i {
      color: var(--top-nav-link-icon-color);
      transition: color var(--transition-base); }
    ul.top-nav > li > a:not(.btn):hover, ul.top-nav > li > a:not(.btn):focus, ul.top-nav > li > a:not(.btn):active {
      text-decoration: none;
      background: transparent;
      color: var(--top-nav-link-hover-color); }
      ul.top-nav > li > a:not(.btn):hover > i,
      ul.top-nav > li > a:not(.btn):hover > .ls-caret,
      ul.top-nav > li > a:not(.btn):hover > .notification-icon-container > i, ul.top-nav > li > a:not(.btn):focus > i,
      ul.top-nav > li > a:not(.btn):focus > .ls-caret,
      ul.top-nav > li > a:not(.btn):focus > .notification-icon-container > i, ul.top-nav > li > a:not(.btn):active > i,
      ul.top-nav > li > a:not(.btn):active > .ls-caret,
      ul.top-nav > li > a:not(.btn):active > .notification-icon-container > i {
        color: var(--top-nav-link-icon-hover-color); }
    ul.top-nav > li > a:not(.btn) > svg {
      width: var(--app-nav-top-menu-svg-icon-size);
      height: var(--app-nav-top-menu-svg-icon-size); }
    ul.top-nav > li > a:not(.btn) > .ls-caret {
      margin-left: var(--spacing-1x); }
    ul.top-nav > li > a:not(.btn) > i:not(.ls-caret) {
      position: relative;
      width: var(--ui-nav-link-icon-size);
      height: var(--ui-nav-link-icon-size);
      display: inline-flex;
      justify-content: center;
      align-items: center;
      font-size: var(--ui-nav-link-icon-size);
      vertical-align: middle; }
      ul.top-nav > li > a:not(.btn) > i:not(.ls-caret) + .badge {
        position: absolute;
        top: 0px;
        right: -4px; }
    ul.top-nav > li > a:not(.btn) > svg,
    ul.top-nav > li > a:not(.btn).notification-icon-container > svg {
      width: var(--app-nav-top-menu-svg-icon-size);
      height: var(--app-nav-top-menu-svg-icon-size); }
    ul.top-nav > li > a:not(.btn) > .client-avatar + .item-text:not(:empty),
    ul.top-nav > li > a:not(.btn) > .client-avatar + .active-client,
    ul.top-nav > li > a:not(.btn) > .notification-icon-container + .item-text:not(:empty),
    ul.top-nav > li > a:not(.btn) > .notification-icon-container + .active-client {
      margin-left: var(--ui-nav-link-icon-spacing); }
    ul.top-nav > li > a:not(.btn).btn-logged-in-admin i {
      color: var(--top-nav-link-icon-color);
      margin: 0; }
    ul.top-nav > li > a:not(.btn) .label:last-child {
      margin-left: 8px; }
    ul.top-nav > li > a:not(.btn) .lm-basket {
      margin-bottom: 2px; }
  ul.top-nav > li.order-neg-1 > a:not(.btn) {
    padding-left: 0; }
  ul.top-nav > li > label.switch {
    margin: var(--top-nav-link-padding-v) var(--top-nav-link-padding-h); }
  ul.top-nav > li:last-child > a:not(.btn) {
    padding-right: 0; }
  ul.top-nav > li:last-child > label.switch {
    margin-right: 0; }
  ul.top-nav > li > .btn {
    margin: 0; }
  ul.top-nav > li.nav-item-cart .badge {
    margin-left: var(--spacing-1x); }
  ul.top-nav .tooltip-inner {
    margin-left: -200px;
    min-width: 250px;
    width: 250px; }
  ul.top-nav #languageChooserContent {
    max-height: 288px;
    overflow-y: auto;
    right: var(--spacing-1x); }
  ul.top-nav .account .dropdown-menu {
    min-width: 202px; }
  ul.top-nav .admin-masquerade-notice {
    display: block;
    text-align: center;
    line-height: 16px;
    padding: 12px;
    margin: 12px; }
  ul.top-nav .dropdown-menu {
    top: calc(100% + var(--spacing-1x)); }
    ul.top-nav .dropdown-menu:not(.dropdown-list) {
      max-height: var(--navbar-dropdown-max-height); }

/*
*******************************************
Top Nav - Responsive
*******************************************
*/
@media (min-width: 992px) {
  ul.top-nav li.nav-item-text-only .language-flag {
    display: none; }
  ul.top-nav li.nav-item-cart > a:not(.btn) {
    padding-right: var(--top-nav-link-padding-h); }
  ul.top-nav li.nav-item-cart.nav-item-icon-only > a {
    max-height: 36px; }
  ul.top-nav li.nav-item-cart.nav-item-icon-only .badge {
    position: absolute;
    top: calc(var(--top-nav-link-padding-v) - 2px);
    right: calc(var(--top-nav-link-padding-h) - 14px);
    left: unset !important; }
  ul.top-nav li.nav-item-text-only a:not(.btn) i,
  ul.top-nav li.nav-item-text-only a:not(.btn) svg,
  ul.top-nav li.nav-item-text-only a:not(.btn) img,
  ul.top-nav li.nav-item-text-only a:not(.btn) .notification-icon-container {
    display: none; } }

@media (max-width: 991.98px) {
  ul.top-nav li.account .item-text,
  ul.top-nav li.account > a > b {
    display: none !important; }
  ul.top-nav li:not(.nav-item-currency) > a .item-text,
  ul.top-nav li:not(.nav-item-currency) > a .active-client {
    display: none !important; }
  ul.top-nav li:not(.nav-item-currency) > a .client-avatar {
    margin-right: 0; }
  ul.top-nav .nav-item-cart .badge {
    position: absolute;
    top: 0px;
    right: -4px; } }

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important; }
  a:not(.btn) {
    text-decoration: underline; }
  abbr[title]::after {
    content: " (" attr(title) ")"; }
  pre {
    white-space: pre-wrap !important; }
  pre,
  blockquote {
    border: var(--border-width-base) solid #adb5bd;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  @page {
    size: var(--print-page-size); }
  body {
    min-width: var(--print-body-min-width) !important; }
  .container {
    min-width: var(--print-body-min-width) !important; }
  .navbar {
    display: none; }
  .badge {
    border: var(--border-width-base) solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important; }
  .table-dark {
    color: inherit; }
    .table-dark th,
    .table-dark td,
    .table-dark thead th,
    .table-dark tbody + tbody {
      border-color: var(--table-border-color); }
  .table .thead-dark th {
    color: inherit;
    border-color: var(--table-border-color); } }

pre,
code,
kbd,
samp {
  font-family: var(--font-family-monospace);
  font-size: 1em; }

code {
  font-size: var(--code-font-size);
  color: var(--code-color);
  background: var(--code-bg);
  border-radius: var(--border-radius-sm);
  padding: 0 4px;
  display: inline-block;
  word-wrap: break-word;
  line-height: var(--code-line-height); }
  a > code {
    color: inherit; }

kbd {
  padding: var(--kbd-padding-y) var(--kbd-padding-x);
  font-size: var(--code-font-size);
  color: var(--kbd-color);
  background-color: var(--kbd-bg);
  border-radius: var(--border-radius-sm);
  box-shadow: var(--kbd-box-shadow); }
  kbd kbd {
    padding: 0;
    font-size: var(--nested-kbd-font-size);
    font-weight: var(--nested-kbd-font-weight);
    box-shadow: none; }

pre {
  overflow: auto;
  -ms-overflow-style: scrollbar;
  display: block;
  padding: var(--pre-padding);
  margin: 0 0 12px;
  font-size: var(--pre-font-size);
  line-height: var(--pre-line-height);
  word-break: break-all;
  word-wrap: break-word;
  color: var(--pre-color);
  background: var(--pre-bg);
  border: 1px solid var(--pre-border-color);
  border-radius: var(--pre-border-radius); }
  pre code {
    padding: 0;
    font-size: inherit;
    color: inherit;
    white-space: pre-wrap;
    background-color: transparent;
    border-radius: 0; }

.code {
  font-family: var(--font-family-monospace); }

table,
.table {
  position: relative;
  background: var(--table-bg);
  border-collapse: unset;
  border-spacing: 0;
  /* IE 11 */ }
  table:before,
  .table:before {
    content: '';
    position: absolute;
    bottom: 7px;
    top: 7px;
    left: 0;
    width: 1px;
    background: var(--gray-lighter-4); }
  table .ssl-info img,
  .table .ssl-info img {
    height: 12px;
    width: 12px; }

caption {
  padding-top: var(--table-td-padding);
  padding-bottom: var(--table-td-padding);
  color: var(--text-lighter-color);
  text-align: left; }

table,
.table {
  width: 100%;
  max-width: 100%; }
  table:before,
  .table:before {
    content: none; }
  table > thead > tr > th,
  table > tbody > tr > th,
  .table > thead > tr > th,
  .table > tbody > tr > th {
    background: var(--table-th-bg);
    border-top: 1px solid var(--table-border-color);
    height: var(--table-th-height);
    padding: var(--table-th-padding);
    vertical-align: var(--table-vertical-align);
    color: var(--table-th-font-color);
    font-size: var(--table-th-font-size);
    font-weight: var(--table-th-font-weight);
    text-align: var(--table-horizontal-align);
    margin-right: 5px; }
    table > thead > tr > th:focus-visible,
    table > tbody > tr > th:focus-visible,
    .table > thead > tr > th:focus-visible,
    .table > tbody > tr > th:focus-visible {
      color: var(--text-primary-color); }
    table > thead > tr > th:first-child,
    table > tbody > tr > th:first-child,
    .table > thead > tr > th:first-child,
    .table > tbody > tr > th:first-child {
      padding-left: var(--table-th-first-last-padding); }
    table > thead > tr > th:last-child,
    table > tbody > tr > th:last-child,
    .table > thead > tr > th:last-child,
    .table > tbody > tr > th:last-child {
      padding-right: var(--table-th-first-last-padding); }
  table > tbody > tr > td,
  table > tfoot > tr > td,
  .table > tbody > tr > td,
  .table > tfoot > tr > td {
    background: var(--table-td-bg);
    border-top: 1px solid var(--table-border-color);
    height: var(--table-td-height);
    padding: var(--table-td-padding);
    vertical-align: var(--table-vertical-align);
    color: var(--table-td-font-color);
    font-size: var(--table-td-font-size);
    text-align: var(--table-horizontal-align); }
    table > tbody > tr > td:first-child,
    table > tfoot > tr > td:first-child,
    .table > tbody > tr > td:first-child,
    .table > tfoot > tr > td:first-child {
      padding-left: var(--table-td-first-last-padding); }
    table > tbody > tr > td:last-child,
    table > tfoot > tr > td:last-child,
    .table > tbody > tr > td:last-child,
    .table > tfoot > tr > td:last-child {
      padding-right: var(--table-td-first-last-padding); }
    table > tbody > tr > td a:not(.btn):focus-visible,
    table > tfoot > tr > td a:not(.btn):focus-visible,
    .table > tbody > tr > td a:not(.btn):focus-visible,
    .table > tfoot > tr > td a:not(.btn):focus-visible {
      box-shadow: var(--ui-block-bg) 0px 0px 0px 3px, var(--brand-primary-lighter) 0px 0px 0px 4px; }
  table > tbody > tr[data-url],
  .table > tbody > tr[data-url] {
    cursor: pointer; }
    table > tbody > tr[data-url] > td,
    .table > tbody > tr[data-url] > td {
      transition: background var(--transition-base); }
    table > tbody > tr[data-url]:has(td:focus-visible),
    .table > tbody > tr[data-url]:has(td:focus-visible) {
      outline: black solid 1px; }
      table > tbody > tr[data-url]:has(td:focus-visible) td,
      .table > tbody > tr[data-url]:has(td:focus-visible) td {
        background: var(--table-bg-hover); }
    table > tbody > tr[data-url]:hover > td, table > tbody > tr[data-url]:focus-visible > td,
    .table > tbody > tr[data-url]:hover > td,
    .table > tbody > tr[data-url]:focus-visible > td {
      background: var(--table-bg-hover); }
  table > caption + thead > tr:first-child > th,
  table > caption + thead > tr:first-child > td,
  table > colgroup + thead > tr:first-child > th,
  table > colgroup + thead > tr:first-child > td,
  table > thead:first-child > tr:first-child > th,
  table > thead:first-child > tr:first-child > td,
  .table > caption + thead > tr:first-child > th,
  .table > caption + thead > tr:first-child > td,
  .table > colgroup + thead > tr:first-child > th,
  .table > colgroup + thead > tr:first-child > td,
  .table > thead:first-child > tr:first-child > th,
  .table > thead:first-child > tr:first-child > td {
    border-top: 0; }
  table > tbody + tbody,
  .table > tbody + tbody {
    border-top: 2px solid var(--table-border-color); }

.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th {
  padding: var(--table-condensed-cell-th-padding); }

.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: var(--table-condensed-cell-padding); }

.table-condensed > thead > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > th,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > th,
.table-condensed > tfoot > tr > td {
  background: none; }
  .table-condensed > thead > tr > th:first-of-type,
  .table-condensed > thead > tr > td:first-of-type,
  .table-condensed > tbody > tr > th:first-of-type,
  .table-condensed > tbody > tr > td:first-of-type,
  .table-condensed > tfoot > tr > th:first-of-type,
  .table-condensed > tfoot > tr > td:first-of-type {
    padding-left: 0; }
  .table-condensed > thead > tr > th:last-of-type,
  .table-condensed > thead > tr > td:last-of-type,
  .table-condensed > tbody > tr > th:last-of-type,
  .table-condensed > tbody > tr > td:last-of-type,
  .table-condensed > tfoot > tr > th:last-of-type,
  .table-condensed > tfoot > tr > td:last-of-type {
    padding-right: 0; }

.table-condensed > thead > tr:hover,
.table-condensed > tbody > tr:hover,
.table-condensed > tfoot > tr:hover {
  background: none; }

.table-bordered {
  border: 1px solid var(--table-border-color); }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td,
  .table-bordered > tbody > tr > th,
  .table-bordered > tbody > tr > td,
  .table-bordered > tfoot > tr > th,
  .table-bordered > tfoot > tr > td {
    border: 1px solid var(--table-border-color);
    border-bottom: 0px;
    border-left: 0px; }
  .table-bordered > thead tr th:last-child,
  .table-bordered > tbody tr th:last-child,
  .table-bordered > tfoot tr th:last-child {
    border-right: 0px !important; }
  .table-bordered > thead tr td:last-child,
  .table-bordered > tbody tr td:last-child,
  .table-bordered > tfoot tr td:last-child {
    border-right: 0px !important; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td {
    border-bottom-width: 2px; }

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: var(--table-bg-accent); }

.table-hover > tbody > tr:hover {
  background-color: var(--table-bg-hover); }

table col[class*="col-"] {
  position: static;
  float: none;
  display: table-column; }

table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  float: none;
  display: table-cell; }

.table-active,
.table-active > th,
.table-active > td {
  background-color: var(--table-bg-active); }

.table-hover .table-active:hover {
  background-color: var(--table-bg-hover); }
  .table-hover .table-active:hover > td,
  .table-hover .table-active:hover > th {
    background-color: var(--table-bg-hover); }

.table-success,
.table-success > th,
.table-success > td {
  background-color: var(--brand-success-lighter-4); }

.table-hover .table-success:hover {
  background-color: var(--brand-success-lighter-3); }
  .table-hover .table-success:hover > td,
  .table-hover .table-success:hover > th {
    background-color: var(--brand-success-lighter-3); }

.table-info,
.table-info > th,
.table-info > td {
  background-color: var(--brand-info-lighter-3); }

.table-hover .table-info:hover {
  background-color: var(--brand-info-lighter-2); }
  .table-hover .table-info:hover > td,
  .table-hover .table-info:hover > th {
    background-color: var(--brand-info-lighter-2); }

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: var(--brand-warning-lighter-4); }

.table-hover .table-warning:hover {
  background-color: var(--brand-warning-lighter-3); }
  .table-hover .table-warning:hover > td,
  .table-hover .table-warning:hover > th {
    background-color: var(--brand-warning-lighter-3); }

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: var(--brand-danger-lighter-4); }

.table-hover .table-danger:hover {
  background-color: var(--brand-danger-lighter-3); }
  .table-hover .table-danger:hover > td,
  .table-hover .table-danger:hover > th {
    background-color: var(--brand-danger-lighter-3); }

.table-responsive {
  overflow-x: auto;
  min-height: 0.01%; }
  @media (max-width: 767.98px) {
    .table-responsive {
      width: 100%;
      margin-bottom: calc(var(--line-height-base) * 0.75);
      overflow-y: hidden;
      -ms-overflow-style: -ms-autohiding-scrollbar; }
      .table-responsive > .table {
        margin-bottom: 0; }
        .table-responsive > .table > thead > tr > th,
        .table-responsive > .table > thead > tr > td,
        .table-responsive > .table > tbody > tr > th,
        .table-responsive > .table > tbody > tr > td,
        .table-responsive > .table > tfoot > tr > th,
        .table-responsive > .table > tfoot > tr > td {
          white-space: nowrap; }
      .table-responsive > .table-bordered {
        border: 0; }
        .table-responsive > .table-bordered > thead > tr > th:first-child,
        .table-responsive > .table-bordered > thead > tr > td:first-child,
        .table-responsive > .table-bordered > tbody > tr > th:first-child,
        .table-responsive > .table-bordered > tbody > tr > td:first-child,
        .table-responsive > .table-bordered > tfoot > tr > th:first-child,
        .table-responsive > .table-bordered > tfoot > tr > td:first-child {
          border-left: 0; }
        .table-responsive > .table-bordered > thead > tr > th:last-child,
        .table-responsive > .table-bordered > thead > tr > td:last-child,
        .table-responsive > .table-bordered > tbody > tr > th:last-child,
        .table-responsive > .table-bordered > tbody > tr > td:last-child,
        .table-responsive > .table-bordered > tfoot > tr > th:last-child,
        .table-responsive > .table-bordered > tfoot > tr > td:last-child {
          border-right: 0; }
        .table-responsive > .table-bordered > tbody > tr:last-child > th,
        .table-responsive > .table-bordered > tbody > tr:last-child > td,
        .table-responsive > .table-bordered > tfoot > tr:last-child > th,
        .table-responsive > .table-bordered > tfoot > tr:last-child > td {
          border-bottom: 0; } }

#linked-accounts .table-container.table-responsive {
  overflow-x: visible; }

fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0; }

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: var(--line-height-base);
  font-size: var(--font-size-base);
  line-height: inherit;
  color: var(--legend-color);
  border: 0; }

label {
  display: block;
  max-width: 100%;
  margin-bottom: var(--input-label-margin-bottom);
  color: var(--input-label-color);
  font-size: var(--input-label-font-size);
  font-weight: var(--input-label-font-weight); }

input[type="file"] {
  display: block; }

input[type="range"] {
  display: block;
  width: 100%; }

select[multiple],
select[size] {
  height: auto; }

output {
  display: block;
  padding-top: var(--ui-padding-base-v)1;
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--input-color); }

input[type="text"]:not(.form-control),
input[type="password"]:not(.form-control),
select:not(.form-control),
.form-control {
  display: block;
  width: 100%;
  height: var(--ui-height-base);
  padding: var(--ui-padding-base-v) var(--ui-padding-base-h);
  font-size: var(--input-font-size);
  font-weight: var(--input-font-weight);
  line-height: var(--input-line-height);
  color: var(--input-color);
  background: var(--input-bg);
  background-clip: padding-box;
  border: var(--input-border);
  border-radius: var(--input-border-radius);
  transition: border-color var(--transition-base), box-shadow var(--transition-base), background var(--transition-base); }
  @media (prefers-reduced-motion: reduce) {
    input[type="text"]:not(.form-control),
    input[type="password"]:not(.form-control),
    select:not(.form-control),
    .form-control {
      transition: none; } }
  input[type="text"]:not(.form-control):focus,
  input[type="password"]:not(.form-control):focus,
  select:not(.form-control):focus,
  .form-control:focus {
    color: var(--input-focus-color);
    background-color: var(--input-focus-bg);
    border-color: var(--input-focus-border-color);
    outline: 0;
    box-shadow: var(--input-box-shadow), var(--input-focus-box-shadow); }
  input[type="text"]:not(.form-control)::placeholder,
  input[type="password"]:not(.form-control)::placeholder,
  select:not(.form-control)::placeholder,
  .form-control::placeholder {
    color: var(--input-color-placeholder);
    opacity: 1; }
  input[type="text"]:not(.form-control):hover,
  input[type="password"]:not(.form-control):hover,
  select:not(.form-control):hover,
  .form-control:hover {
    background-color: var(--input-hover-bg);
    border-color: var(--input-hover-border-color);
    color: var(--input-hover-color); }
    input[type="text"]:not(.form-control):hover::placeholder,
    input[type="password"]:not(.form-control):hover::placeholder,
    select:not(.form-control):hover::placeholder,
    .form-control:hover::placeholder {
      color: var(--input-hover-placeholder-color); }
  input[type="text"]:not(.form-control):focus,
  input[type="password"]:not(.form-control):focus,
  select:not(.form-control):focus,
  .form-control:focus {
    background-color: var(--input-focus-bg);
    border-color: var(--input-focus-border-color);
    color: var(--input-focus-color); }
    input[type="text"]:not(.form-control):focus::placeholder,
    input[type="password"]:not(.form-control):focus::placeholder,
    select:not(.form-control):focus::placeholder,
    .form-control:focus::placeholder {
      color: var(--input-focus-placeholder-color); }
  input[type="text"]:not(.form-control)::-ms-expand,
  input[type="password"]:not(.form-control)::-ms-expand,
  select:not(.form-control)::-ms-expand,
  .form-control::-ms-expand {
    border: 0;
    background-color: transparent; }
  input[type="text"]:not(.form-control):disabled, input[type="text"]:not(.form-control):disabled:hover, input[type="text"]:not(.form-control):disabled:focus, input[type="text"]:not(.form-control)[disabled], input[type="text"]:not(.form-control)[disabled]:hover, input[type="text"]:not(.form-control)[disabled]:focus, input[type="text"]:not(.form-control)[readonly], input[type="text"]:not(.form-control)[readonly]:hover, input[type="text"]:not(.form-control)[readonly]:focus,
  fieldset[disabled] input[type="text"]:not(.form-control),
  fieldset[disabled] input[type="text"]:not(.form-control):hover,
  fieldset[disabled] input[type="text"]:not(.form-control):focus,
  input[type="password"]:not(.form-control):disabled,
  input[type="password"]:not(.form-control):disabled:hover,
  input[type="password"]:not(.form-control):disabled:focus,
  input[type="password"]:not(.form-control)[disabled],
  input[type="password"]:not(.form-control)[disabled]:hover,
  input[type="password"]:not(.form-control)[disabled]:focus,
  input[type="password"]:not(.form-control)[readonly],
  input[type="password"]:not(.form-control)[readonly]:hover,
  input[type="password"]:not(.form-control)[readonly]:focus,
  fieldset[disabled]
  input[type="password"]:not(.form-control),
  fieldset[disabled]
  input[type="password"]:not(.form-control):hover,
  fieldset[disabled]
  input[type="password"]:not(.form-control):focus,
  select:not(.form-control):disabled,
  select:not(.form-control):disabled:hover,
  select:not(.form-control):disabled:focus,
  select:not(.form-control)[disabled],
  select:not(.form-control)[disabled]:hover,
  select:not(.form-control)[disabled]:focus,
  select:not(.form-control)[readonly],
  select:not(.form-control)[readonly]:hover,
  select:not(.form-control)[readonly]:focus,
  fieldset[disabled]
  select:not(.form-control),
  fieldset[disabled]
  select:not(.form-control):hover,
  fieldset[disabled]
  select:not(.form-control):focus,
  .form-control:disabled,
  .form-control:disabled:hover,
  .form-control:disabled:focus,
  .form-control[disabled],
  .form-control[disabled]:hover,
  .form-control[disabled]:focus,
  .form-control[readonly],
  .form-control[readonly]:hover,
  .form-control[readonly]:focus,
  fieldset[disabled]
  .form-control,
  fieldset[disabled]
  .form-control:hover,
  fieldset[disabled]
  .form-control:focus {
    color: var(--input-disabled-color);
    background: var(--input-disabled-bg);
    border-color: var(--input-disabled-border-color);
    opacity: 1; }
    input[type="text"]:not(.form-control):disabled::placeholder, input[type="text"]:not(.form-control):disabled:hover::placeholder, input[type="text"]:not(.form-control):disabled:focus::placeholder, input[type="text"]:not(.form-control)[disabled]::placeholder, input[type="text"]:not(.form-control)[disabled]:hover::placeholder, input[type="text"]:not(.form-control)[disabled]:focus::placeholder, input[type="text"]:not(.form-control)[readonly]::placeholder, input[type="text"]:not(.form-control)[readonly]:hover::placeholder, input[type="text"]:not(.form-control)[readonly]:focus::placeholder,
    fieldset[disabled] input[type="text"]:not(.form-control)::placeholder,
    fieldset[disabled] input[type="text"]:not(.form-control):hover::placeholder,
    fieldset[disabled] input[type="text"]:not(.form-control):focus::placeholder,
    input[type="password"]:not(.form-control):disabled::placeholder,
    input[type="password"]:not(.form-control):disabled:hover::placeholder,
    input[type="password"]:not(.form-control):disabled:focus::placeholder,
    input[type="password"]:not(.form-control)[disabled]::placeholder,
    input[type="password"]:not(.form-control)[disabled]:hover::placeholder,
    input[type="password"]:not(.form-control)[disabled]:focus::placeholder,
    input[type="password"]:not(.form-control)[readonly]::placeholder,
    input[type="password"]:not(.form-control)[readonly]:hover::placeholder,
    input[type="password"]:not(.form-control)[readonly]:focus::placeholder,
    fieldset[disabled]
    input[type="password"]:not(.form-control)::placeholder,
    fieldset[disabled]
    input[type="password"]:not(.form-control):hover::placeholder,
    fieldset[disabled]
    input[type="password"]:not(.form-control):focus::placeholder,
    select:not(.form-control):disabled::placeholder,
    select:not(.form-control):disabled:hover::placeholder,
    select:not(.form-control):disabled:focus::placeholder,
    select:not(.form-control)[disabled]::placeholder,
    select:not(.form-control)[disabled]:hover::placeholder,
    select:not(.form-control)[disabled]:focus::placeholder,
    select:not(.form-control)[readonly]::placeholder,
    select:not(.form-control)[readonly]:hover::placeholder,
    select:not(.form-control)[readonly]:focus::placeholder,
    fieldset[disabled]
    select:not(.form-control)::placeholder,
    fieldset[disabled]
    select:not(.form-control):hover::placeholder,
    fieldset[disabled]
    select:not(.form-control):focus::placeholder,
    .form-control:disabled::placeholder,
    .form-control:disabled:hover::placeholder,
    .form-control:disabled:focus::placeholder,
    .form-control[disabled]::placeholder,
    .form-control[disabled]:hover::placeholder,
    .form-control[disabled]:focus::placeholder,
    .form-control[readonly]::placeholder,
    .form-control[readonly]:hover::placeholder,
    .form-control[readonly]:focus::placeholder,
    fieldset[disabled]
    .form-control::placeholder,
    fieldset[disabled]
    .form-control:hover::placeholder,
    fieldset[disabled]
    .form-control:focus::placeholder {
      color: var(--input-disabled-color-placeholder); }
  input[type="text"]:not(.form-control)[disabled],
  fieldset[disabled] input[type="text"]:not(.form-control),
  input[type="password"]:not(.form-control)[disabled],
  fieldset[disabled]
  input[type="password"]:not(.form-control),
  select:not(.form-control)[disabled],
  fieldset[disabled]
  select:not(.form-control),
  .form-control[disabled],
  fieldset[disabled]
  .form-control {
    cursor: var(--cursor-disabled); }

textarea:not(#message).form-control {
  height: auto; }

select.form-control {
  padding-top: 0;
  padding-bottom: 0;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("../img/arrow-drop.svg");
  background-position-y: 50%;
  background-position-x: calc(100% - 11px);
  background-repeat: no-repeat;
  padding-right: 24px;
  cursor: pointer; }
  select.form-control:focus::-ms-value {
    color: var(--input-color);
    background-color: var(--input-bg); }
  select.form-control:hover {
    background-image: url(../img/arrow-drop.svg);
    background-position-y: 50%;
    background-position-x: calc(100% - 11px);
    background-repeat: no-repeat; }
  select.form-control option {
    color: var(--select-option-color);
    background: var(--select-option-bg); }

.radio,
.checkbox {
  position: relative;
  margin-top: var(--checkbox-spacing);
  margin-bottom: var(--checkbox-spacing);
  cursor: pointer; }
  .radio label,
  .checkbox label {
    min-height: var(--line-height-base);
    margin-bottom: 0;
    font-weight: normal;
    cursor: pointer; }

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer; }

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px; }

input[type="radio"][disabled], input[type="radio"].disabled,
fieldset[disabled] input[type="radio"],
input[type="checkbox"][disabled],
input[type="checkbox"].disabled,
fieldset[disabled]
input[type="checkbox"] {
  cursor: var(--cursor-disabled); }

.radio-inline.disabled,
fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled]
.checkbox-inline {
  cursor: var(--cursor-disabled); }

.radio.disabled label,
fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled]
.checkbox label {
  cursor: var(--cursor-disabled); }

.input-lg {
  height: var(--ui-height-lg);
  padding: var(--ui-padding-lg-v) var(--ui-padding-lg-h);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg);
  border-radius: var(--input-lg-border-radius); }
  .input-lg select {
    height: var(--ui-height-lg);
    line-height: var(--ui-height-lg); }
  .input-lg textarea,
  .input-lg select[multiple] {
    height: auto; }

.form-group-lg .form-control {
  height: var(--ui-height-lg);
  padding: 0 var(--ui-padding-lg-h);
  border-radius: var(--input-lg-border-radius); }

.form-group-lg select.form-control {
  height: var(--ui-height-lg);
  line-height: var(--ui-height-lg); }

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto; }

.form-group-lg .form-control-static {
  height: var(--ui-height-lg);
  min-height: var(--line-height-base)var(--font-size-lg);
  padding: var(--padding-lg-vertical)1 var(--ui-padding-lg-h);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg); }

.has-feedback {
  position: relative; }
  .has-feedback .form-control {
    padding-right: var(--ui-height-base); }

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: var(--ui-height-base);
  height: var(--ui-height-base);
  line-height: var(--ui-height-base);
  text-align: center;
  pointer-events: none; }

.input-xs,
.form-control-xs,
.input-group-xs > .form-control,
.input-group-xs > .input-group-addon,
.input-group-xs > .input-group-btn > .btn {
  height: var(--ui-height-xs);
  padding: var(--ui-padding-xs-v) var(--ui-padding-xs-h);
  font-size: var(--input-xs-font-size);
  line-height: var(--input-xs-line-height);
  border-radius: var(--input-xs-border-radius); }

.input-sm,
.form-control-sm,
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: var(--ui-height-sm);
  padding: var(--ui-padding-sm-v) var(--ui-padding-sm-h);
  font-size: var(--input-sm-font-size);
  line-height: var(--input-sm-line-height);
  border-radius: var(--input-sm-border-radius); }

.input-lg,
.form-control-lg,
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: var(--ui-height-lg);
  padding: var(--ui-padding-lg-v) var(--ui-padding-lg-h);
  font-size: var(--input-lg-font-size);
  line-height: var(--input-lg-line-height);
  border-radius: var(--input-lg-border-radius); }

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: var(--text-success-color); }

.has-success .form-control {
  border-color: var(--brand-success);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: var(--brand-success-darker);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px var(--brand-success-lighter); }

.has-success .input-group-addon {
  color: var(--text-success-color);
  border-color: var(--brand-success);
  background-color: var(--brand-success-lighter-4); }

.has-success .form-control-feedback {
  color: var(--text-success-color); }

.has-success .checkbox label {
  color: var(--text-success-color); }

.has-success .radio-styled,
.has-success .checkbox-styled {
  border-color: var(--brand-success); }
  .has-success .radio-styled.checked,
  .has-success .checkbox-styled.checked {
    background-color: var(--brand-success);
    border-color: var(--brand-success); }

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: var(--text-warning-color); }

.has-warning .form-control {
  border-color: var(--brand-warning);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: var(--brand-warning-darker);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px var(--brand-danger-lighter); }

.has-warning .input-group-addon {
  color: var(--text-warning-color);
  border-color: var(--brand-warning);
  background-color: var(--brand-warning-lighter-4); }

.has-warning .form-control-feedback {
  color: var(--text-warning-color); }

.has-warning .checkbox label {
  color: var(--text-warning-color); }

.has-warning .radio-styled,
.has-warning .checkbox-styled {
  border-color: var(--brand-warning); }
  .has-warning .radio-styled.checked,
  .has-warning .checkbox-styled.checked {
    background-color: var(--brand-warning);
    border-color: var(--brand-warning); }

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: var(--text-danger-color); }

.has-error .form-control {
  border-color: var(--brand-danger);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: var(--brand-danger-darker);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px var(--brand-danger-lighter); }

.has-error .input-group-addon {
  color: var(--text-danger-color);
  border-color: var(--brand-danger);
  background-color: var(--brand-danger-lighter-4); }

.has-error .form-control-feedback {
  color: var(--text-danger-color); }

.has-error .checkbox label {
  color: var(--text-danger-color); }

.has-error .radio-styled,
.has-error .checkbox-styled {
  border-color: var(--brand-danger); }
  .has-error .radio-styled.checked,
  .has-error .checkbox-styled.checked {
    background-color: var(--brand-danger);
    border-color: var(--brand-danger); }

.help-block {
  display: block;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  margin-top: 5px;
  margin-bottom: 10px;
  color: var(--text-lighter-color); }

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center; }
  .form-inline .form-check {
    width: 100%; }
  @media (min-width: 480px) {
    .form-inline label {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 0; }
    .form-inline .form-group {
      display: flex;
      flex: 0 0 auto;
      flex-flow: row wrap;
      align-items: center;
      margin-bottom: 0; }
    .form-inline .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .form-inline .form-control-plaintext {
      display: inline-block; }
    .form-inline .input-group,
    .form-inline .custom-select {
      width: auto; }
    .form-inline .form-check {
      display: flex;
      align-items: center;
      justify-content: center;
      width: auto;
      padding-left: 0; }
    .form-inline .form-check-input {
      position: relative;
      flex-shrink: 0;
      margin-top: 0;
      margin-right: var(--form-text-margin-top);
      margin-left: 0; }
    .form-inline .custom-control {
      align-items: center;
      justify-content: center; }
    .form-inline .custom-control-label {
      margin-bottom: 0; } }

.form-control-file,
.form-control-range {
  display: block;
  width: 100%; }

.col-form-label {
  padding-top: calc(var(--ui-padding-base-v) + var(--input-border-width));
  padding-bottom: calc(var(--ui-padding-base-v) + var(--input-border-width));
  margin-bottom: 0;
  font-size: inherit;
  line-height: var(--input-line-height); }
  .col-form-label.col-checkbox {
    display: flex;
    flex-wrap: wrap; }
    .col-form-label.col-checkbox > .checkbox-styled {
      margin-top: 3px; }

.col-form-label-lg {
  padding-top: calc(var(--ui-padding-lg-v) + var(--input-border-width));
  padding-bottom: calc(var(--ui-padding-lg-v) + var(--input-border-width));
  font-size: var(--input-lg-font-size);
  line-height: var(--input-lg-line-height); }

.col-form-label-sm {
  padding-top: calc(var(--ui-paddin-sm-v) + var(--input-border-width));
  padding-bottom: calc(var(--ui-paddin-sm-v) + var(--input-border-width));
  font-size: var(--input-sm-font-size);
  line-height: var(--input-sm-line-height); }

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: var(--ui-padding-base-v) 0;
  margin-bottom: 0;
  font-size: var(--input-font-size);
  line-height: var(--input-line-height);
  color: var(--input-label-color);
  background-color: transparent;
  border: solid transparent;
  border-width: var(--input-border-width) 0; }
  .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
    padding-right: 0;
    padding-left: 0; }

select.form-control[size], select.form-control[multiple] {
  height: auto; }

textarea.form-control {
  height: auto; }

.form-group {
  margin-bottom: var(--form-group-margin-bottom); }

.form-text {
  display: block;
  margin-top: var(--form-text-margin-top); }

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -var(--form-grid-gutter-width)/2;
  margin-left: -var(--form-grid-gutter-width)/2; }
  .form-row > .col,
  .form-row > [class*="col-"] {
    padding-right: var(--form-grid-gutter-width)/2;
    padding-left: var(--form-grid-gutter-width)/2; }

.form-check {
  position: relative;
  display: block;
  padding-left: var(--form-check-input-gutter); }

.form-check-input {
  position: absolute;
  margin-top: var(--form-check-input-margin-y);
  margin-left: calc(-1 * var(--form-check-input-gutter)); }
  .form-check-input[disabled] ~ .form-check-label,
  .form-check-input:disabled ~ .form-check-label {
    color: var(--text-lighter-color); }

.form-check-label {
  margin-bottom: 0; }

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: var(--form-check-inline-margin-x); }
  .form-check-inline .form-check-input {
    position: static;
    margin-top: 0;
    margin-right: var(--form-check-inline-input-margin-x);
    margin-left: 0; }

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: var(--form-feedback-margin-top);
  font-size: var(--form-feedback-font-size);
  color: #36C055; }

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: var(--form-feedback-tooltip-padding-y) var(--form-feedback-tooltip-padding-x);
  margin-top: .1rem;
  font-size: var(--form-feedback-tooltip-font-size);
  line-height: var(--form-feedback-tooltip-line-height);
  color: #fff;
  background-color: rgba(54, 192, 85, var(--form-feedback-tooltip-opacity));
  border-radius: var(--form-feedback-tooltip-border-radius); }
  .form-row > .col > .valid-tooltip,
  .form-row > [class*="col-"] > .valid-tooltip {
    left: var(--form-grid-gutter-width)/2; }

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #36C055;
  padding-right: var(--ui-height-base-inner);
  background-image: var(--form-feedback-icon-valid);
  background-repeat: no-repeat;
  background-position: right var(--ui-height-base-inner-quarter) center;
  background-size: var(--ui-height-base-inner-half) var(--ui-height-base-inner-half); }
  .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
    border-color: #36C055;
    box-shadow: 0 0 0 var(--input-focus-width) rgba(54, 192, 85, 0.25); }

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: var(--ui-height-base-inner);
  background-position: top var(--ui-height-base-inner-quarter) right var(--ui-height-base-inner-quarter); }

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #36C055;
  padding-right: var(--custom-select-feedback-icon-padding-right);
  background: var(--custom-select-background), var(--custom-select-bg) var(--form-feedback-icon-valid) var(--custom-select-feedback-icon-position)/var(--custom-select-feedback-icon-size) no-repeat; }
  .was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
    border-color: #36C055;
    box-shadow: 0 0 0 var(--input-focus-width) rgba(54, 192, 85, 0.25); }

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #36C055; }

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #36C055; }
  .was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
    border-color: #36C055; }

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #59d074;
  background: #59d074 linear-gradient(180deg, #72d789, #59d074) repeat-x; }

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 var(--input-focus-width) rgba(54, 192, 85, 0.25); }

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #36C055; }

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #36C055; }

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #36C055;
  box-shadow: 0 0 0 var(--input-focus-width) rgba(54, 192, 85, 0.25); }

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: var(--form-feedback-margin-top);
  font-size: var(--form-feedback-font-size);
  color: #d92632; }

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: var(--form-feedback-tooltip-padding-y) var(--form-feedback-tooltip-padding-x);
  margin-top: .1rem;
  font-size: var(--form-feedback-tooltip-font-size);
  line-height: var(--form-feedback-tooltip-line-height);
  color: #fff;
  background-color: rgba(217, 38, 50, var(--form-feedback-tooltip-opacity));
  border-radius: var(--form-feedback-tooltip-border-radius); }
  .form-row > .col > .invalid-tooltip,
  .form-row > [class*="col-"] > .invalid-tooltip {
    left: var(--form-grid-gutter-width)/2; }

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #d92632;
  padding-right: var(--ui-height-base-inner);
  background-image: var(--form-feedback-icon-invalid);
  background-repeat: no-repeat;
  background-position: right var(--ui-height-base-inner-quarter) center;
  background-size: var(--ui-height-base-inner-half) var(--ui-height-base-inner-half); }
  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
    border-color: #d92632;
    box-shadow: 0 0 0 var(--input-focus-width) rgba(217, 38, 50, 0.25); }

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: var(--ui-height-base-inner);
  background-position: top var(--ui-height-base-inner-quarter) right var(--ui-height-base-inner-quarter); }

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #d92632;
  padding-right: var(--custom-select-feedback-icon-padding-right);
  background: var(--custom-select-background), var(--custom-select-bg) var(--form-feedback-icon-invalid) var(--custom-select-feedback-icon-position)/var(--custom-select-feedback-icon-size) no-repeat; }
  .was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
    border-color: #d92632;
    box-shadow: 0 0 0 var(--input-focus-width) rgba(217, 38, 50, 0.25); }

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #d92632; }

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #d92632; }
  .was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
    border-color: #d92632; }

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e1515b;
  background: #e1515b linear-gradient(180deg, #e56b74, #e1515b) repeat-x; }

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 var(--input-focus-width) rgba(217, 38, 50, 0.25); }

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #d92632; }

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #d92632; }

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #d92632;
  box-shadow: 0 0 0 var(--input-focus-width) rgba(217, 38, 50, 0.25); }

input[type="button"]:not(.btn),
input[type="submit"]:not(.btn),
.btn {
  display: inline-flex;
  height: var(--ui-height-base);
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  font-weight: var(--btn-base-font-weight);
  font-family: var(--btn-font-family);
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: var(--btn-border-width) solid transparent;
  white-space: var(--btn-white-space);
  outline: none;
  user-select: none;
  background-color: transparent;
  transition: all var(--transition-base);
  padding: var(--ui-padding-base-v) var(--ui-padding-base-h);
  font-size: var(--btn-base-font-size);
  line-height: var(--line-height-base);
  border-radius: var(--btn-base-border-radius);
  transition: var(--btn-transition); }
  @media (prefers-reduced-motion: reduce) {
    input[type="button"]:not(.btn),
    input[type="submit"]:not(.btn),
    .btn {
      transition: none; } }
  input[type="button"]:not(.btn):hover,
  input[type="submit"]:not(.btn):hover,
  .btn:hover {
    color: var(--btn-default-color);
    text-decoration: none; }
  input[type="button"]:not(.btn):focus, input[type="button"]:not(.btn).focus,
  input[type="submit"]:not(.btn):focus,
  input[type="submit"]:not(.btn).focus,
  .btn:focus,
  .btn.focus {
    outline: 0;
    box-shadow: var(--btn-focus-box-shadow); }
  input[type="button"]:not(.btn).disabled, input[type="button"]:not(.btn):disabled,
  input[type="submit"]:not(.btn).disabled,
  input[type="submit"]:not(.btn):disabled,
  .btn.disabled,
  .btn:disabled {
    box-shadow: none; }
  input[type="button"]:not(.btn):not(:disabled):not(.disabled),
  input[type="submit"]:not(.btn):not(:disabled):not(.disabled),
  .btn:not(:disabled):not(.disabled) {
    cursor: pointer; }
    input[type="button"]:not(.btn):not(:disabled):not(.disabled):active, input[type="button"]:not(.btn):not(:disabled):not(.disabled).active,
    input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active,
    input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active,
    .btn:not(:disabled):not(.disabled):active,
    .btn:not(:disabled):not(.disabled).active {
      color: var(--btn-default-hover-color);
      background-color: var(--btn-default-hover-bg);
      border-color: var(--btn-default-hover-border); }
      input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus, input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus,
      input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus,
      input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus,
      .btn:not(:disabled):not(.disabled):active:focus,
      .btn:not(:disabled):not(.disabled).active:focus {
        box-shadow: var(--btn-focus-box-shadow), var(--btn-active-box-shadow); }
  input[type="button"]:not(.btn) i,
  input[type="button"]:not(.btn) .ls,
  input[type="button"]:not(.btn) .lm,
  input[type="button"]:not(.btn) .fa,
  input[type="button"]:not(.btn) .fas,
  input[type="submit"]:not(.btn) i,
  input[type="submit"]:not(.btn) .ls,
  input[type="submit"]:not(.btn) .lm,
  input[type="submit"]:not(.btn) .fa,
  input[type="submit"]:not(.btn) .fas,
  .btn i,
  .btn .ls,
  .btn .lm,
  .btn .fa,
  .btn .fas {
    margin-right: var(--btn-base-icon-spacing); }
    input[type="button"]:not(.btn) i:last-child:not(:first-child),
    input[type="button"]:not(.btn) .ls:last-child:not(:first-child),
    input[type="button"]:not(.btn) .lm:last-child:not(:first-child),
    input[type="button"]:not(.btn) .fa:last-child:not(:first-child),
    input[type="button"]:not(.btn) .fas:last-child:not(:first-child),
    input[type="submit"]:not(.btn) i:last-child:not(:first-child),
    input[type="submit"]:not(.btn) .ls:last-child:not(:first-child),
    input[type="submit"]:not(.btn) .lm:last-child:not(:first-child),
    input[type="submit"]:not(.btn) .fa:last-child:not(:first-child),
    input[type="submit"]:not(.btn) .fas:last-child:not(:first-child),
    .btn i:last-child:not(:first-child),
    .btn .ls:last-child:not(:first-child),
    .btn .lm:last-child:not(:first-child),
    .btn .fa:last-child:not(:first-child),
    .btn .fas:last-child:not(:first-child) {
      margin-right: 0;
      margin-left: var(--btn-base-icon-spacing); }
  input[type="button"]:not(.btn) .btn-icon,
  input[type="submit"]:not(.btn) .btn-icon,
  .btn .btn-icon {
    display: flex;
    align-items: center; }
  input[type="button"]:not(.btn).flex-row-reverse i,
  input[type="button"]:not(.btn).flex-row-reverse .ls,
  input[type="button"]:not(.btn).flex-row-reverse .lm,
  input[type="button"]:not(.btn).flex-row-reverse .fa,
  input[type="button"]:not(.btn).flex-row-reverse .fas,
  input[type="submit"]:not(.btn).flex-row-reverse i,
  input[type="submit"]:not(.btn).flex-row-reverse .ls,
  input[type="submit"]:not(.btn).flex-row-reverse .lm,
  input[type="submit"]:not(.btn).flex-row-reverse .fa,
  input[type="submit"]:not(.btn).flex-row-reverse .fas,
  .btn.flex-row-reverse i,
  .btn.flex-row-reverse .ls,
  .btn.flex-row-reverse .lm,
  .btn.flex-row-reverse .fa,
  .btn.flex-row-reverse .fas {
    margin-left: var(--btn-base-icon-spacing);
    margin-right: 0; }
    input[type="button"]:not(.btn).flex-row-reverse i:last-child:not(:first-child),
    input[type="button"]:not(.btn).flex-row-reverse .ls:last-child:not(:first-child),
    input[type="button"]:not(.btn).flex-row-reverse .lm:last-child:not(:first-child),
    input[type="button"]:not(.btn).flex-row-reverse .fa:last-child:not(:first-child),
    input[type="button"]:not(.btn).flex-row-reverse .fas:last-child:not(:first-child),
    input[type="submit"]:not(.btn).flex-row-reverse i:last-child:not(:first-child),
    input[type="submit"]:not(.btn).flex-row-reverse .ls:last-child:not(:first-child),
    input[type="submit"]:not(.btn).flex-row-reverse .lm:last-child:not(:first-child),
    input[type="submit"]:not(.btn).flex-row-reverse .fa:last-child:not(:first-child),
    input[type="submit"]:not(.btn).flex-row-reverse .fas:last-child:not(:first-child),
    .btn.flex-row-reverse i:last-child:not(:first-child),
    .btn.flex-row-reverse .ls:last-child:not(:first-child),
    .btn.flex-row-reverse .lm:last-child:not(:first-child),
    .btn.flex-row-reverse .fa:last-child:not(:first-child),
    .btn.flex-row-reverse .fas:last-child:not(:first-child) {
      margin-left: 0;
      margin-right: var(--btn-base-icon-spacing); }
  input[type="button"]:not(.btn).icon-animation i,
  input[type="button"]:not(.btn).icon-animation .ls,
  input[type="button"]:not(.btn).icon-animation .lm,
  input[type="button"]:not(.btn).icon-animation .fa,
  input[type="button"]:not(.btn).icon-animation .fas,
  input[type="submit"]:not(.btn).icon-animation i,
  input[type="submit"]:not(.btn).icon-animation .ls,
  input[type="submit"]:not(.btn).icon-animation .lm,
  input[type="submit"]:not(.btn).icon-animation .fa,
  input[type="submit"]:not(.btn).icon-animation .fas,
  .btn.icon-animation i,
  .btn.icon-animation .ls,
  .btn.icon-animation .lm,
  .btn.icon-animation .fa,
  .btn.icon-animation .fas {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  input[type="button"]:not(.btn).icon-animation .btn-text,
  input[type="submit"]:not(.btn).icon-animation .btn-text,
  .btn.icon-animation .btn-text {
    transition: padding-right var(--transition-base), padding-left var(--transition-base); }
  input[type="button"]:not(.btn).icon-animation .btn-icon,
  input[type="submit"]:not(.btn).icon-animation .btn-icon,
  .btn.icon-animation .btn-icon {
    position: absolute;
    top: 50%;
    display: flex;
    align-items: center;
    transform: translateY(-50%);
    opacity: 0;
    transition: opacity var(--transition-base), transform var(--transition-base); }
  input[type="button"]:not(.btn).icon-animation:hover .btn-text, input[type="button"]:not(.btn).icon-animation:focus-visible .btn-text,
  input[type="submit"]:not(.btn).icon-animation:hover .btn-text,
  input[type="submit"]:not(.btn).icon-animation:focus-visible .btn-text,
  .btn.icon-animation:hover .btn-text,
  .btn.icon-animation:focus-visible .btn-text {
    padding-left: var(--spacing-3x); }
  input[type="button"]:not(.btn).icon-animation:hover.flex-row-reverse .btn-text, input[type="button"]:not(.btn).icon-animation:focus-visible.flex-row-reverse .btn-text,
  input[type="submit"]:not(.btn).icon-animation:hover.flex-row-reverse .btn-text,
  input[type="submit"]:not(.btn).icon-animation:focus-visible.flex-row-reverse .btn-text,
  .btn.icon-animation:hover.flex-row-reverse .btn-text,
  .btn.icon-animation:focus-visible.flex-row-reverse .btn-text {
    padding-right: var(--spacing-3x);
    padding-left: 0; }
  input[type="button"]:not(.btn).icon-animation:hover .btn-icon, input[type="button"]:not(.btn).icon-animation:focus-visible .btn-icon,
  input[type="submit"]:not(.btn).icon-animation:hover .btn-icon,
  input[type="submit"]:not(.btn).icon-animation:focus-visible .btn-icon,
  .btn.icon-animation:hover .btn-icon,
  .btn.icon-animation:focus-visible .btn-icon {
    opacity: 1; }
  input[type="button"]:not(.btn).icon-animation .btn-icon,
  input[type="submit"]:not(.btn).icon-animation .btn-icon,
  .btn.icon-animation .btn-icon {
    left: var(--ui-padding-base-h); }
  input[type="button"]:not(.btn).icon-animation.flex-row-reverse .btn-icon,
  input[type="submit"]:not(.btn).icon-animation.flex-row-reverse .btn-icon,
  .btn.icon-animation.flex-row-reverse .btn-icon {
    right: var(--ui-padding-base-h);
    left: unset; }

input[type="button"]:not(.btn),
input[type="submit"]:not(.btn) {
  color: var(--btn-primary-color);
  background: var(--btn-primary-bg);
  border-color: var(--btn-primary-border); }
  input[type="button"]:not(.btn):hover, input[type="button"]:not(.btn):focus, input[type="button"]:not(.btn):active,
  input[type="submit"]:not(.btn):hover,
  input[type="submit"]:not(.btn):focus,
  input[type="submit"]:not(.btn):active {
    color: var(--btn-primary-hover-color);
    background-color: var(--btn-primary-hover-bg);
    border-color: var(--btn-primary-hover-border); }

.btn.btn-icon {
  height: var(--ui-height-base);
  width: var(--ui-height-base);
  color: var(--ui-icon-color);
  background: none !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0; }
  .btn.btn-icon:hover, .btn.btn-icon:active, .btn.btn-icon:focus {
    color: var(--text-primary-color); }
  .btn.btn-icon > i {
    margin: 0; }

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none; }

.btn-default {
  color: var(--btn-default-color);
  background: var(--btn-default-bg);
  border-color: var(--btn-default-border); }
  .btn-default:focus, .btn-default:focus-visible, .btn-default.focus {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-hover-bg);
    border-color: var(--btn-default-hover-border); }
  .btn-default:hover {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-hover-bg);
    border-color: var(--btn-default-hover-border); }
  .btn-default:not(:disabled):not(.disabled):active, .btn-default:not(:disabled):not(.disabled).active,
  .open > .btn-default:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-active-bg);
    border-color: var(--btn-default-active-border); }
    .btn-default:not(:disabled):not(.disabled):active:hover, .btn-default:not(:disabled):not(.disabled):active:focus, .btn-default:not(:disabled):not(.disabled):active:focus-visible, .btn-default:not(:disabled):not(.disabled):active.focus, .btn-default:not(:disabled):not(.disabled).active:hover, .btn-default:not(:disabled):not(.disabled).active:focus, .btn-default:not(:disabled):not(.disabled).active:focus-visible, .btn-default:not(:disabled):not(.disabled).active.focus,
    .open > .btn-default:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-default:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-default:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-default:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-default-hover-color);
      background-color: var(--btn-default-hover-bg);
      border-color: var(--btn-default-hover-border); }
  .btn-default.btn-link:not(.btn-outline) {
    color: var(--btn-default-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-default.btn-link:not(.btn-outline):focus, .btn-default.btn-link:not(.btn-outline):focus-visible, .btn-default.btn-link:not(.btn-outline).focus {
      color: var(--btn-default-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-default.btn-link:not(.btn-outline):hover {
      color: var(--btn-default-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-default-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-default-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    background-image: none; }
  .btn-default.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-default[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-default {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-default.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-default[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-default .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-default.disabled:not(.btn-primary):not(.btn-default), .btn-default[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-default .badge {
    color: var(--btn-default-bg);
    background-color: var(--btn-default-color); }
  .btn-default i.ls-caret {
    color: var(--decoration-icons); }

.btn-primary {
  color: var(--btn-primary-color);
  background: var(--btn-primary-bg);
  border-color: var(--btn-primary-border); }
  .btn-primary:focus, .btn-primary:focus-visible, .btn-primary.focus {
    color: var(--btn-primary-hover-color);
    background-color: var(--btn-primary-hover-bg);
    border-color: var(--btn-primary-hover-border); }
  .btn-primary:hover {
    color: var(--btn-primary-hover-color);
    background-color: var(--btn-primary-hover-bg);
    border-color: var(--btn-primary-hover-border); }
  .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
  .open > .btn-primary:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-primary-hover-color);
    background-color: var(--btn-primary-active-bg);
    border-color: var(--btn-primary-active-border); }
    .btn-primary:not(:disabled):not(.disabled):active:hover, .btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled):active:focus-visible, .btn-primary:not(:disabled):not(.disabled):active.focus, .btn-primary:not(:disabled):not(.disabled).active:hover, .btn-primary:not(:disabled):not(.disabled).active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus-visible, .btn-primary:not(:disabled):not(.disabled).active.focus,
    .open > .btn-primary:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-primary:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-primary:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-primary:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-primary-hover-color);
      background-color: var(--btn-primary-hover-bg);
      border-color: var(--btn-primary-hover-border); }
  .btn-primary.btn-link:not(.btn-outline) {
    color: var(--btn-primary-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-primary.btn-link:not(.btn-outline):focus, .btn-primary.btn-link:not(.btn-outline):focus-visible, .btn-primary.btn-link:not(.btn-outline).focus {
      color: var(--btn-primary-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-primary.btn-link:not(.btn-outline):hover {
      color: var(--btn-primary-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-primary-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-primary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-primary-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    background-image: none; }
  .btn-primary.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-primary[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-primary {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-primary.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-primary[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-primary .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-primary.disabled:not(.btn-primary):not(.btn-default), .btn-primary[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-primary .badge {
    color: var(--btn-primary-bg);
    background-color: var(--btn-primary-color); }

.btn-primary-faded {
  color: var(--btn-primary-faded-color);
  background: var(--btn-primary-faded-bg);
  border-color: var(--btn-primary-faded-border); }
  .btn-primary-faded:focus, .btn-primary-faded:focus-visible, .btn-primary-faded.focus {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-hover-bg);
    border-color: var(--btn-primary-faded-hover-border); }
  .btn-primary-faded:hover {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-hover-bg);
    border-color: var(--btn-primary-faded-hover-border); }
  .btn-primary-faded:not(:disabled):not(.disabled):active, .btn-primary-faded:not(:disabled):not(.disabled).active,
  .open > .btn-primary-faded:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-active-bg);
    border-color: var(--btn-primary-faded-active-border); }
    .btn-primary-faded:not(:disabled):not(.disabled):active:hover, .btn-primary-faded:not(:disabled):not(.disabled):active:focus, .btn-primary-faded:not(:disabled):not(.disabled):active:focus-visible, .btn-primary-faded:not(:disabled):not(.disabled):active.focus, .btn-primary-faded:not(:disabled):not(.disabled).active:hover, .btn-primary-faded:not(:disabled):not(.disabled).active:focus, .btn-primary-faded:not(:disabled):not(.disabled).active:focus-visible, .btn-primary-faded:not(:disabled):not(.disabled).active.focus,
    .open > .btn-primary-faded:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-primary-faded:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-primary-faded:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-primary-faded:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
  .btn-primary-faded.btn-link:not(.btn-outline) {
    color: var(--btn-primary-faded-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-primary-faded.btn-link:not(.btn-outline):focus, .btn-primary-faded.btn-link:not(.btn-outline):focus-visible, .btn-primary-faded.btn-link:not(.btn-outline).focus {
      color: var(--btn-primary-faded-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-primary-faded.btn-link:not(.btn-outline):hover {
      color: var(--btn-primary-faded-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-primary-faded-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-primary-faded.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-primary-faded:active, .btn-primary-faded.active,
  .open > .btn-primary-faded.dropdown-toggle {
    background-image: none; }
  .btn-primary-faded.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-primary-faded[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-primary-faded {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-primary-faded.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-primary-faded[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-primary-faded .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-primary-faded.disabled:not(.btn-primary):not(.btn-default), .btn-primary-faded[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-primary-faded .badge {
    color: var(--btn-primary-faded-bg);
    background-color: var(--btn-primary-faded-color); }

.btn-secondary {
  color: var(--btn-secondary-color);
  background: var(--btn-secondary-bg);
  border-color: var(--btn-secondary-border); }
  .btn-secondary:focus, .btn-secondary:focus-visible, .btn-secondary.focus {
    color: var(--btn-secondary-hover-color);
    background-color: var(--btn-secondary-hover-bg);
    border-color: var(--btn-secondary-hover-border); }
  .btn-secondary:hover {
    color: var(--btn-secondary-hover-color);
    background-color: var(--btn-secondary-hover-bg);
    border-color: var(--btn-secondary-hover-border); }
  .btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
  .open > .btn-secondary:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-secondary-hover-color);
    background-color: var(--btn-secondary-active-bg);
    border-color: var(--btn-secondary-active-border); }
    .btn-secondary:not(:disabled):not(.disabled):active:hover, .btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled):active:focus-visible, .btn-secondary:not(:disabled):not(.disabled):active.focus, .btn-secondary:not(:disabled):not(.disabled).active:hover, .btn-secondary:not(:disabled):not(.disabled).active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus-visible, .btn-secondary:not(:disabled):not(.disabled).active.focus,
    .open > .btn-secondary:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-secondary:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-secondary:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-secondary:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-secondary-hover-color);
      background-color: var(--btn-secondary-hover-bg);
      border-color: var(--btn-secondary-hover-border); }
  .btn-secondary.btn-link:not(.btn-outline) {
    color: var(--btn-secondary-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-secondary.btn-link:not(.btn-outline):focus, .btn-secondary.btn-link:not(.btn-outline):focus-visible, .btn-secondary.btn-link:not(.btn-outline).focus {
      color: var(--btn-secondary-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-secondary.btn-link:not(.btn-outline):hover {
      color: var(--btn-secondary-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-secondary-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-secondary.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-secondary-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-secondary:active, .btn-secondary.active,
  .open > .btn-secondary.dropdown-toggle {
    background-image: none; }
  .btn-secondary.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-secondary[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-secondary {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-secondary.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-secondary[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-secondary .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-secondary.disabled:not(.btn-primary):not(.btn-default), .btn-secondary[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-secondary .badge {
    color: var(--btn-secondary-bg);
    background-color: var(--btn-secondary-color); }

.btn-success {
  color: var(--btn-success-color);
  background: var(--btn-success-bg);
  border-color: var(--btn-success-border); }
  .btn-success:focus, .btn-success:focus-visible, .btn-success.focus {
    color: var(--btn-success-hover-color);
    background-color: var(--btn-success-hover-bg);
    border-color: var(--btn-success-hover-border); }
  .btn-success:hover {
    color: var(--btn-success-hover-color);
    background-color: var(--btn-success-hover-bg);
    border-color: var(--btn-success-hover-border); }
  .btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
  .open > .btn-success:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-success-hover-color);
    background-color: var(--btn-success-active-bg);
    border-color: var(--btn-success-active-border); }
    .btn-success:not(:disabled):not(.disabled):active:hover, .btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled):active:focus-visible, .btn-success:not(:disabled):not(.disabled):active.focus, .btn-success:not(:disabled):not(.disabled).active:hover, .btn-success:not(:disabled):not(.disabled).active:focus, .btn-success:not(:disabled):not(.disabled).active:focus-visible, .btn-success:not(:disabled):not(.disabled).active.focus,
    .open > .btn-success:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-success:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-success:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-success:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-success-hover-color);
      background-color: var(--btn-success-hover-bg);
      border-color: var(--btn-success-hover-border); }
  .btn-success.btn-link:not(.btn-outline) {
    color: var(--btn-success-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-success.btn-link:not(.btn-outline):focus, .btn-success.btn-link:not(.btn-outline):focus-visible, .btn-success.btn-link:not(.btn-outline).focus {
      color: var(--btn-success-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-success.btn-link:not(.btn-outline):hover {
      color: var(--btn-success-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-success-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-success-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    background-image: none; }
  .btn-success.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-success[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-success {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-success.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-success[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-success .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-success.disabled:not(.btn-primary):not(.btn-default), .btn-success[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-success .badge {
    color: var(--btn-success-bg);
    background-color: var(--btn-success-color); }

.btn-info {
  color: var(--btn-info-color);
  background: var(--btn-info-bg);
  border-color: var(--btn-info-border); }
  .btn-info:focus, .btn-info:focus-visible, .btn-info.focus {
    color: var(--btn-info-hover-color);
    background-color: var(--btn-info-hover-bg);
    border-color: var(--btn-info-hover-border); }
  .btn-info:hover {
    color: var(--btn-info-hover-color);
    background-color: var(--btn-info-hover-bg);
    border-color: var(--btn-info-hover-border); }
  .btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
  .open > .btn-info:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-info-hover-color);
    background-color: var(--btn-info-active-bg);
    border-color: var(--btn-info-active-border); }
    .btn-info:not(:disabled):not(.disabled):active:hover, .btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled):active:focus-visible, .btn-info:not(:disabled):not(.disabled):active.focus, .btn-info:not(:disabled):not(.disabled).active:hover, .btn-info:not(:disabled):not(.disabled).active:focus, .btn-info:not(:disabled):not(.disabled).active:focus-visible, .btn-info:not(:disabled):not(.disabled).active.focus,
    .open > .btn-info:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-info:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-info:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-info:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-info-hover-color);
      background-color: var(--btn-info-hover-bg);
      border-color: var(--btn-info-hover-border); }
  .btn-info.btn-link:not(.btn-outline) {
    color: var(--btn-info-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-info.btn-link:not(.btn-outline):focus, .btn-info.btn-link:not(.btn-outline):focus-visible, .btn-info.btn-link:not(.btn-outline).focus {
      color: var(--btn-info-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-info.btn-link:not(.btn-outline):hover {
      color: var(--btn-info-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-info-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-info.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-info-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    background-image: none; }
  .btn-info.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-info[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-info {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-info.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-info[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-info .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-info.disabled:not(.btn-primary):not(.btn-default), .btn-info[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-info .badge {
    color: var(--btn-info-bg);
    background-color: var(--btn-info-color); }

.btn-warning {
  color: var(--btn-warning-color);
  background: var(--btn-warning-bg);
  border-color: var(--btn-warning-border); }
  .btn-warning:focus, .btn-warning:focus-visible, .btn-warning.focus {
    color: var(--btn-warning-hover-color);
    background-color: var(--btn-warning-hover-bg);
    border-color: var(--btn-warning-hover-border); }
  .btn-warning:hover {
    color: var(--btn-warning-hover-color);
    background-color: var(--btn-warning-hover-bg);
    border-color: var(--btn-warning-hover-border); }
  .btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
  .open > .btn-warning:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-warning-hover-color);
    background-color: var(--btn-warning-active-bg);
    border-color: var(--btn-warning-active-border); }
    .btn-warning:not(:disabled):not(.disabled):active:hover, .btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled):active:focus-visible, .btn-warning:not(:disabled):not(.disabled):active.focus, .btn-warning:not(:disabled):not(.disabled).active:hover, .btn-warning:not(:disabled):not(.disabled).active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus-visible, .btn-warning:not(:disabled):not(.disabled).active.focus,
    .open > .btn-warning:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-warning:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-warning:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-warning:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-warning-hover-color);
      background-color: var(--btn-warning-hover-bg);
      border-color: var(--btn-warning-hover-border); }
  .btn-warning.btn-link:not(.btn-outline) {
    color: var(--btn-warning-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-warning.btn-link:not(.btn-outline):focus, .btn-warning.btn-link:not(.btn-outline):focus-visible, .btn-warning.btn-link:not(.btn-outline).focus {
      color: var(--btn-warning-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-warning.btn-link:not(.btn-outline):hover {
      color: var(--btn-warning-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-warning-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-warning.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-warning-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    background-image: none; }
  .btn-warning.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-warning[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-warning {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-warning.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-warning[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-warning .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-warning.disabled:not(.btn-primary):not(.btn-default), .btn-warning[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-warning .badge {
    color: var(--btn-warning-bg);
    background-color: var(--btn-warning-color); }

.btn-danger {
  color: var(--btn-danger-color);
  background: var(--btn-danger-bg);
  border-color: var(--btn-danger-border); }
  .btn-danger:focus, .btn-danger:focus-visible, .btn-danger.focus {
    color: var(--btn-danger-hover-color);
    background-color: var(--btn-danger-hover-bg);
    border-color: var(--btn-danger-hover-border); }
  .btn-danger:hover {
    color: var(--btn-danger-hover-color);
    background-color: var(--btn-danger-hover-bg);
    border-color: var(--btn-danger-hover-border); }
  .btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
  .open > .btn-danger:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-danger-hover-color);
    background-color: var(--btn-danger-active-bg);
    border-color: var(--btn-danger-active-border); }
    .btn-danger:not(:disabled):not(.disabled):active:hover, .btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled):active:focus-visible, .btn-danger:not(:disabled):not(.disabled):active.focus, .btn-danger:not(:disabled):not(.disabled).active:hover, .btn-danger:not(:disabled):not(.disabled).active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus-visible, .btn-danger:not(:disabled):not(.disabled).active.focus,
    .open > .btn-danger:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-danger:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-danger:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-danger:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-danger-hover-color);
      background-color: var(--btn-danger-hover-bg);
      border-color: var(--btn-danger-hover-border); }
  .btn-danger.btn-link:not(.btn-outline) {
    color: var(--btn-danger-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-danger.btn-link:not(.btn-outline):focus, .btn-danger.btn-link:not(.btn-outline):focus-visible, .btn-danger.btn-link:not(.btn-outline).focus {
      color: var(--btn-danger-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-danger.btn-link:not(.btn-outline):hover {
      color: var(--btn-danger-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-danger-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-danger-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    background-image: none; }
  .btn-danger.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-danger[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-danger {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-danger.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-danger[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-danger .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-danger.disabled:not(.btn-primary):not(.btn-default), .btn-danger[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-danger .badge {
    color: var(--btn-danger-bg);
    background-color: var(--btn-danger-color); }

.btn-light:not(.btn-default) {
  color: var(--btn-light-color);
  background: var(--btn-light-bg);
  border-color: var(--btn-light-border); }
  .btn-light:not(.btn-default):focus, .btn-light:not(.btn-default):focus-visible, .btn-light:not(.btn-default).focus {
    color: var(--btn-light-hover-color);
    background-color: var(--btn-light-hover-bg);
    border-color: var(--btn-light-hover-border); }
  .btn-light:not(.btn-default):hover {
    color: var(--btn-light-hover-color);
    background-color: var(--btn-light-hover-bg);
    border-color: var(--btn-light-hover-border); }
  .btn-light:not(.btn-default):not(:disabled):not(.disabled):active, .btn-light:not(.btn-default):not(:disabled):not(.disabled).active,
  .open > .btn-light:not(.btn-default):not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-light-hover-color);
    background-color: var(--btn-light-active-bg);
    border-color: var(--btn-light-active-border); }
    .btn-light:not(.btn-default):not(:disabled):not(.disabled):active:hover, .btn-light:not(.btn-default):not(:disabled):not(.disabled):active:focus, .btn-light:not(.btn-default):not(:disabled):not(.disabled):active:focus-visible, .btn-light:not(.btn-default):not(:disabled):not(.disabled):active.focus, .btn-light:not(.btn-default):not(:disabled):not(.disabled).active:hover, .btn-light:not(.btn-default):not(:disabled):not(.disabled).active:focus, .btn-light:not(.btn-default):not(:disabled):not(.disabled).active:focus-visible, .btn-light:not(.btn-default):not(:disabled):not(.disabled).active.focus,
    .open > .btn-light:not(.btn-default):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-light:not(.btn-default):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-light:not(.btn-default):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-light:not(.btn-default):not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-light-hover-color);
      background-color: var(--btn-light-hover-bg);
      border-color: var(--btn-light-hover-border); }
  .btn-light:not(.btn-default).btn-link:not(.btn-outline) {
    color: var(--btn-light-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-light:not(.btn-default).btn-link:not(.btn-outline):focus, .btn-light:not(.btn-default).btn-link:not(.btn-outline):focus-visible, .btn-light:not(.btn-default).btn-link:not(.btn-outline).focus {
      color: var(--btn-light-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-light:not(.btn-default).btn-link:not(.btn-outline):hover {
      color: var(--btn-light-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-light-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-light:not(.btn-default).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-light-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-light:not(.btn-default):active, .btn-light:not(.btn-default).active,
  .open > .btn-light:not(.btn-default).dropdown-toggle {
    background-image: none; }
  .btn-light:not(.btn-default).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-light:not(.btn-default)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-light:not(.btn-default) {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-light:not(.btn-default).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-light:not(.btn-default)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-light:not(.btn-default) .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-light:not(.btn-default).disabled:not(.btn-primary):not(.btn-default), .btn-light:not(.btn-default)[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-light:not(.btn-default) .badge {
    color: var(--btn-light-bg);
    background-color: var(--btn-light-color); }

.btn-dark {
  color: var(--btn-dark-color);
  background: var(--btn-dark-bg);
  border-color: var(--btn-dark-border); }
  .btn-dark:focus, .btn-dark:focus-visible, .btn-dark.focus {
    color: var(--btn-dark-hover-color);
    background-color: var(--btn-dark-hover-bg);
    border-color: var(--btn-dark-hover-border); }
  .btn-dark:hover {
    color: var(--btn-dark-hover-color);
    background-color: var(--btn-dark-hover-bg);
    border-color: var(--btn-dark-hover-border); }
  .btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
  .open > .btn-dark:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-dark-hover-color);
    background-color: var(--btn-dark-active-bg);
    border-color: var(--btn-dark-active-border); }
    .btn-dark:not(:disabled):not(.disabled):active:hover, .btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled):active:focus-visible, .btn-dark:not(:disabled):not(.disabled):active.focus, .btn-dark:not(:disabled):not(.disabled).active:hover, .btn-dark:not(:disabled):not(.disabled).active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus-visible, .btn-dark:not(:disabled):not(.disabled).active.focus,
    .open > .btn-dark:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .btn-dark:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .btn-dark:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .btn-dark:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-dark-hover-color);
      background-color: var(--btn-dark-hover-bg);
      border-color: var(--btn-dark-hover-border); }
  .btn-dark.btn-link:not(.btn-outline) {
    color: var(--btn-dark-color);
    background-color: transparent;
    border-color: transparent; }
    .btn-dark.btn-link:not(.btn-outline):focus, .btn-dark.btn-link:not(.btn-outline):focus-visible, .btn-dark.btn-link:not(.btn-outline).focus {
      color: var(--btn-dark-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-dark.btn-link:not(.btn-outline):hover {
      color: var(--btn-dark-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-dark-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .btn-dark.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-dark-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .btn-dark:active, .btn-dark.active,
  .open > .btn-dark.dropdown-toggle {
    background-image: none; }
  .btn-dark.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .btn-dark[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .btn-dark {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .btn-dark.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .btn-dark[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .btn-dark .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .btn-dark.disabled:not(.btn-primary):not(.btn-default), .btn-dark[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .btn-dark .badge {
    color: var(--btn-dark-bg);
    background-color: var(--btn-dark-color); }

.btn-outline,
.btn-default.btn-outline {
  color: var(--btn-default-color);
  background: transparent;
  border-color: var(--btn-default-border); }
  .btn-outline:focus, .btn-outline:focus-visible, .btn-outline.focus,
  .btn-default.btn-outline:focus,
  .btn-default.btn-outline:focus-visible,
  .btn-default.btn-outline.focus {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-hover-bg);
    border-color: var(--btn-default-hover-border); }
  .btn-outline:not(:disabled):not(.disabled):hover, .btn-outline:not(:disabled):not(.disabled):active,
  .btn-default.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-default.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-hover-bg);
    border-color: var(--btn-default-hover-border); }
  .btn-outline:active, .btn-outline.active,
  .open > .btn-outline.dropdown-toggle,
  .btn-default.btn-outline:active,
  .btn-default.btn-outline.active,
  .open >
  .btn-default.btn-outline.dropdown-toggle {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-active-bg);
    border-color: var(--btn-default-active-border); }
    .btn-outline:active:hover, .btn-outline:active:focus, .btn-outline:active:focus-visible, .btn-outline:active.focus, .btn-outline.active:hover, .btn-outline.active:focus, .btn-outline.active:focus-visible, .btn-outline.active.focus,
    .open > .btn-outline.dropdown-toggle:hover,
    .open > .btn-outline.dropdown-toggle:focus,
    .open > .btn-outline.dropdown-toggle:focus-visible,
    .open > .btn-outline.dropdown-toggle.focus,
    .btn-default.btn-outline:active:hover,
    .btn-default.btn-outline:active:focus,
    .btn-default.btn-outline:active:focus-visible,
    .btn-default.btn-outline:active.focus,
    .btn-default.btn-outline.active:hover,
    .btn-default.btn-outline.active:focus,
    .btn-default.btn-outline.active:focus-visible,
    .btn-default.btn-outline.active.focus,
    .open >
    .btn-default.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-default.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-default.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-default.btn-outline.dropdown-toggle.focus {
      color: var(--btn-default-hover-color);
      background-color: var(--btn-default-hover-bg);
      border-color: var(--btn-default-hover-border); }
  .btn-outline:active, .btn-outline.active,
  .open > .btn-outline.dropdown-toggle,
  .btn-default.btn-outline:active,
  .btn-default.btn-outline.active,
  .open >
  .btn-default.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-outline.disabled, .btn-outline[disabled],
  fieldset[disabled] .btn-outline,
  .btn-default.btn-outline.disabled,
  .btn-default.btn-outline[disabled],
  fieldset[disabled]
  .btn-default.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-outline.disabled:hover, .btn-outline.disabled:focus, .btn-outline.disabled:focus-visible, .btn-outline.disabled.focus, .btn-outline[disabled]:hover, .btn-outline[disabled]:focus, .btn-outline[disabled]:focus-visible, .btn-outline[disabled].focus,
    fieldset[disabled] .btn-outline:hover,
    fieldset[disabled] .btn-outline:focus,
    fieldset[disabled] .btn-outline:focus-visible,
    fieldset[disabled] .btn-outline.focus,
    .btn-default.btn-outline.disabled:hover,
    .btn-default.btn-outline.disabled:focus,
    .btn-default.btn-outline.disabled:focus-visible,
    .btn-default.btn-outline.disabled.focus,
    .btn-default.btn-outline[disabled]:hover,
    .btn-default.btn-outline[disabled]:focus,
    .btn-default.btn-outline[disabled]:focus-visible,
    .btn-default.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-default.btn-outline:hover,
    fieldset[disabled]
    .btn-default.btn-outline:focus,
    fieldset[disabled]
    .btn-default.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-default.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-outline .badge,
  .btn-default.btn-outline .badge {
    color: var(--btn-default-bg);
    background-color: var(--btn-default-color); }
  .btn-outline i.ls-caret,
  .btn-default.btn-outline i.ls-caret {
    color: var(--ui-icon-color); }

.btn-primary-outline,
.btn-primary.btn-outline {
  color: var(--text-primary-color);
  background: transparent;
  border-color: var(--text-primary-color); }
  .btn-primary-outline:focus, .btn-primary-outline:focus-visible, .btn-primary-outline.focus,
  .btn-primary.btn-outline:focus,
  .btn-primary.btn-outline:focus-visible,
  .btn-primary.btn-outline.focus {
    color: var(--text-primary-color);
    background-color: var(--btn-primary-outline-bg-hover);
    border-color: var(--text-primary-color); }
  .btn-primary-outline:not(:disabled):not(.disabled):hover, .btn-primary-outline:not(:disabled):not(.disabled):active,
  .btn-primary.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-primary.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--text-primary-color);
    background-color: var(--btn-primary-outline-bg-hover);
    border-color: var(--text-primary-color); }
  .btn-primary-outline:active, .btn-primary-outline.active,
  .open > .btn-primary-outline.dropdown-toggle,
  .btn-primary.btn-outline:active,
  .btn-primary.btn-outline.active,
  .open >
  .btn-primary.btn-outline.dropdown-toggle {
    color: var(--text-primary-color);
    background-color: var(--btn-primary-active-bg);
    border-color: var(--btn-primary-active-border); }
    .btn-primary-outline:active:hover, .btn-primary-outline:active:focus, .btn-primary-outline:active:focus-visible, .btn-primary-outline:active.focus, .btn-primary-outline.active:hover, .btn-primary-outline.active:focus, .btn-primary-outline.active:focus-visible, .btn-primary-outline.active.focus,
    .open > .btn-primary-outline.dropdown-toggle:hover,
    .open > .btn-primary-outline.dropdown-toggle:focus,
    .open > .btn-primary-outline.dropdown-toggle:focus-visible,
    .open > .btn-primary-outline.dropdown-toggle.focus,
    .btn-primary.btn-outline:active:hover,
    .btn-primary.btn-outline:active:focus,
    .btn-primary.btn-outline:active:focus-visible,
    .btn-primary.btn-outline:active.focus,
    .btn-primary.btn-outline.active:hover,
    .btn-primary.btn-outline.active:focus,
    .btn-primary.btn-outline.active:focus-visible,
    .btn-primary.btn-outline.active.focus,
    .open >
    .btn-primary.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-primary.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-primary.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-primary.btn-outline.dropdown-toggle.focus {
      color: var(--text-primary-color);
      background-color: var(--btn-primary-outline-bg-hover);
      border-color: var(--text-primary-color); }
  .btn-primary-outline:active, .btn-primary-outline.active,
  .open > .btn-primary-outline.dropdown-toggle,
  .btn-primary.btn-outline:active,
  .btn-primary.btn-outline.active,
  .open >
  .btn-primary.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-primary-outline.disabled, .btn-primary-outline[disabled],
  fieldset[disabled] .btn-primary-outline,
  .btn-primary.btn-outline.disabled,
  .btn-primary.btn-outline[disabled],
  fieldset[disabled]
  .btn-primary.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-primary-outline.disabled:hover, .btn-primary-outline.disabled:focus, .btn-primary-outline.disabled:focus-visible, .btn-primary-outline.disabled.focus, .btn-primary-outline[disabled]:hover, .btn-primary-outline[disabled]:focus, .btn-primary-outline[disabled]:focus-visible, .btn-primary-outline[disabled].focus,
    fieldset[disabled] .btn-primary-outline:hover,
    fieldset[disabled] .btn-primary-outline:focus,
    fieldset[disabled] .btn-primary-outline:focus-visible,
    fieldset[disabled] .btn-primary-outline.focus,
    .btn-primary.btn-outline.disabled:hover,
    .btn-primary.btn-outline.disabled:focus,
    .btn-primary.btn-outline.disabled:focus-visible,
    .btn-primary.btn-outline.disabled.focus,
    .btn-primary.btn-outline[disabled]:hover,
    .btn-primary.btn-outline[disabled]:focus,
    .btn-primary.btn-outline[disabled]:focus-visible,
    .btn-primary.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-primary.btn-outline:hover,
    fieldset[disabled]
    .btn-primary.btn-outline:focus,
    fieldset[disabled]
    .btn-primary.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-primary.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-primary-outline .badge,
  .btn-primary.btn-outline .badge {
    color: var(--btn-primary-outline-bg);
    background-color: var(--text-primary-color); }

.btn-primary-faded-outline,
.btn-primary-faded.btn-outline {
  color: var(--btn-primary-faded-bg);
  background: transparent;
  border-color: var(--btn-primary-faded-border); }
  .btn-primary-faded-outline:focus, .btn-primary-faded-outline:focus-visible, .btn-primary-faded-outline.focus,
  .btn-primary-faded.btn-outline:focus,
  .btn-primary-faded.btn-outline:focus-visible,
  .btn-primary-faded.btn-outline.focus {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-hover-bg);
    border-color: var(--btn-primary-faded-hover-border); }
  .btn-primary-faded-outline:not(:disabled):not(.disabled):hover, .btn-primary-faded-outline:not(:disabled):not(.disabled):active,
  .btn-primary-faded.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-primary-faded.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-hover-bg);
    border-color: var(--btn-primary-faded-hover-border); }
  .btn-primary-faded-outline:active, .btn-primary-faded-outline.active,
  .open > .btn-primary-faded-outline.dropdown-toggle,
  .btn-primary-faded.btn-outline:active,
  .btn-primary-faded.btn-outline.active,
  .open >
  .btn-primary-faded.btn-outline.dropdown-toggle {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-active-bg);
    border-color: var(--btn-primary-faded-active-border); }
    .btn-primary-faded-outline:active:hover, .btn-primary-faded-outline:active:focus, .btn-primary-faded-outline:active:focus-visible, .btn-primary-faded-outline:active.focus, .btn-primary-faded-outline.active:hover, .btn-primary-faded-outline.active:focus, .btn-primary-faded-outline.active:focus-visible, .btn-primary-faded-outline.active.focus,
    .open > .btn-primary-faded-outline.dropdown-toggle:hover,
    .open > .btn-primary-faded-outline.dropdown-toggle:focus,
    .open > .btn-primary-faded-outline.dropdown-toggle:focus-visible,
    .open > .btn-primary-faded-outline.dropdown-toggle.focus,
    .btn-primary-faded.btn-outline:active:hover,
    .btn-primary-faded.btn-outline:active:focus,
    .btn-primary-faded.btn-outline:active:focus-visible,
    .btn-primary-faded.btn-outline:active.focus,
    .btn-primary-faded.btn-outline.active:hover,
    .btn-primary-faded.btn-outline.active:focus,
    .btn-primary-faded.btn-outline.active:focus-visible,
    .btn-primary-faded.btn-outline.active.focus,
    .open >
    .btn-primary-faded.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-primary-faded.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-primary-faded.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-primary-faded.btn-outline.dropdown-toggle.focus {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
  .btn-primary-faded-outline:active, .btn-primary-faded-outline.active,
  .open > .btn-primary-faded-outline.dropdown-toggle,
  .btn-primary-faded.btn-outline:active,
  .btn-primary-faded.btn-outline.active,
  .open >
  .btn-primary-faded.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-primary-faded-outline.disabled, .btn-primary-faded-outline[disabled],
  fieldset[disabled] .btn-primary-faded-outline,
  .btn-primary-faded.btn-outline.disabled,
  .btn-primary-faded.btn-outline[disabled],
  fieldset[disabled]
  .btn-primary-faded.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-primary-faded-outline.disabled:hover, .btn-primary-faded-outline.disabled:focus, .btn-primary-faded-outline.disabled:focus-visible, .btn-primary-faded-outline.disabled.focus, .btn-primary-faded-outline[disabled]:hover, .btn-primary-faded-outline[disabled]:focus, .btn-primary-faded-outline[disabled]:focus-visible, .btn-primary-faded-outline[disabled].focus,
    fieldset[disabled] .btn-primary-faded-outline:hover,
    fieldset[disabled] .btn-primary-faded-outline:focus,
    fieldset[disabled] .btn-primary-faded-outline:focus-visible,
    fieldset[disabled] .btn-primary-faded-outline.focus,
    .btn-primary-faded.btn-outline.disabled:hover,
    .btn-primary-faded.btn-outline.disabled:focus,
    .btn-primary-faded.btn-outline.disabled:focus-visible,
    .btn-primary-faded.btn-outline.disabled.focus,
    .btn-primary-faded.btn-outline[disabled]:hover,
    .btn-primary-faded.btn-outline[disabled]:focus,
    .btn-primary-faded.btn-outline[disabled]:focus-visible,
    .btn-primary-faded.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-primary-faded.btn-outline:hover,
    fieldset[disabled]
    .btn-primary-faded.btn-outline:focus,
    fieldset[disabled]
    .btn-primary-faded.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-primary-faded.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-primary-faded-outline .badge,
  .btn-primary-faded.btn-outline .badge {
    color: var(--btn-primary-faded-bg);
    background-color: var(--btn-primary-faded-bg); }

.btn-secondary-outline,
.btn-secondary.btn-outline {
  color: var(--brand-secondary);
  background: transparent;
  border-color: var(--btn-secondary-border); }
  .btn-secondary-outline:focus, .btn-secondary-outline:focus-visible, .btn-secondary-outline.focus,
  .btn-secondary.btn-outline:focus,
  .btn-secondary.btn-outline:focus-visible,
  .btn-secondary.btn-outline.focus {
    color: var(--btn-secondary-hover-color);
    background-color: var(--btn-secondary-hover-bg);
    border-color: var(--btn-secondary-hover-border); }
  .btn-secondary-outline:not(:disabled):not(.disabled):hover, .btn-secondary-outline:not(:disabled):not(.disabled):active,
  .btn-secondary.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-secondary.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--btn-secondary-hover-color);
    background-color: var(--btn-secondary-hover-bg);
    border-color: var(--btn-secondary-hover-border); }
  .btn-secondary-outline:active, .btn-secondary-outline.active,
  .open > .btn-secondary-outline.dropdown-toggle,
  .btn-secondary.btn-outline:active,
  .btn-secondary.btn-outline.active,
  .open >
  .btn-secondary.btn-outline.dropdown-toggle {
    color: var(--btn-secondary-hover-color);
    background-color: var(--btn-secondary-active-bg);
    border-color: var(--btn-secondary-active-border); }
    .btn-secondary-outline:active:hover, .btn-secondary-outline:active:focus, .btn-secondary-outline:active:focus-visible, .btn-secondary-outline:active.focus, .btn-secondary-outline.active:hover, .btn-secondary-outline.active:focus, .btn-secondary-outline.active:focus-visible, .btn-secondary-outline.active.focus,
    .open > .btn-secondary-outline.dropdown-toggle:hover,
    .open > .btn-secondary-outline.dropdown-toggle:focus,
    .open > .btn-secondary-outline.dropdown-toggle:focus-visible,
    .open > .btn-secondary-outline.dropdown-toggle.focus,
    .btn-secondary.btn-outline:active:hover,
    .btn-secondary.btn-outline:active:focus,
    .btn-secondary.btn-outline:active:focus-visible,
    .btn-secondary.btn-outline:active.focus,
    .btn-secondary.btn-outline.active:hover,
    .btn-secondary.btn-outline.active:focus,
    .btn-secondary.btn-outline.active:focus-visible,
    .btn-secondary.btn-outline.active.focus,
    .open >
    .btn-secondary.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-secondary.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-secondary.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-secondary.btn-outline.dropdown-toggle.focus {
      color: var(--btn-secondary-hover-color);
      background-color: var(--btn-secondary-hover-bg);
      border-color: var(--btn-secondary-hover-border); }
  .btn-secondary-outline:active, .btn-secondary-outline.active,
  .open > .btn-secondary-outline.dropdown-toggle,
  .btn-secondary.btn-outline:active,
  .btn-secondary.btn-outline.active,
  .open >
  .btn-secondary.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-secondary-outline.disabled, .btn-secondary-outline[disabled],
  fieldset[disabled] .btn-secondary-outline,
  .btn-secondary.btn-outline.disabled,
  .btn-secondary.btn-outline[disabled],
  fieldset[disabled]
  .btn-secondary.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-secondary-outline.disabled:hover, .btn-secondary-outline.disabled:focus, .btn-secondary-outline.disabled:focus-visible, .btn-secondary-outline.disabled.focus, .btn-secondary-outline[disabled]:hover, .btn-secondary-outline[disabled]:focus, .btn-secondary-outline[disabled]:focus-visible, .btn-secondary-outline[disabled].focus,
    fieldset[disabled] .btn-secondary-outline:hover,
    fieldset[disabled] .btn-secondary-outline:focus,
    fieldset[disabled] .btn-secondary-outline:focus-visible,
    fieldset[disabled] .btn-secondary-outline.focus,
    .btn-secondary.btn-outline.disabled:hover,
    .btn-secondary.btn-outline.disabled:focus,
    .btn-secondary.btn-outline.disabled:focus-visible,
    .btn-secondary.btn-outline.disabled.focus,
    .btn-secondary.btn-outline[disabled]:hover,
    .btn-secondary.btn-outline[disabled]:focus,
    .btn-secondary.btn-outline[disabled]:focus-visible,
    .btn-secondary.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-secondary.btn-outline:hover,
    fieldset[disabled]
    .btn-secondary.btn-outline:focus,
    fieldset[disabled]
    .btn-secondary.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-secondary.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-secondary-outline .badge,
  .btn-secondary.btn-outline .badge {
    color: var(--btn-secondary-bg);
    background-color: var(--brand-secondary); }

.btn-success-outline,
.btn-success.btn-outline {
  color: var(--text-success-color);
  background: transparent;
  border-color: var(--text-success-color); }
  .btn-success-outline:focus, .btn-success-outline:focus-visible, .btn-success-outline.focus,
  .btn-success.btn-outline:focus,
  .btn-success.btn-outline:focus-visible,
  .btn-success.btn-outline.focus {
    color: var(--text-success-color);
    background-color: var(--btn-success-outline-bg-hover);
    border-color: var(--text-success-color); }
  .btn-success-outline:not(:disabled):not(.disabled):hover, .btn-success-outline:not(:disabled):not(.disabled):active,
  .btn-success.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-success.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--text-success-color);
    background-color: var(--btn-success-outline-bg-hover);
    border-color: var(--text-success-color); }
  .btn-success-outline:active, .btn-success-outline.active,
  .open > .btn-success-outline.dropdown-toggle,
  .btn-success.btn-outline:active,
  .btn-success.btn-outline.active,
  .open >
  .btn-success.btn-outline.dropdown-toggle {
    color: var(--text-success-color);
    background-color: var(--btn-success-active-bg);
    border-color: var(--btn-success-active-border); }
    .btn-success-outline:active:hover, .btn-success-outline:active:focus, .btn-success-outline:active:focus-visible, .btn-success-outline:active.focus, .btn-success-outline.active:hover, .btn-success-outline.active:focus, .btn-success-outline.active:focus-visible, .btn-success-outline.active.focus,
    .open > .btn-success-outline.dropdown-toggle:hover,
    .open > .btn-success-outline.dropdown-toggle:focus,
    .open > .btn-success-outline.dropdown-toggle:focus-visible,
    .open > .btn-success-outline.dropdown-toggle.focus,
    .btn-success.btn-outline:active:hover,
    .btn-success.btn-outline:active:focus,
    .btn-success.btn-outline:active:focus-visible,
    .btn-success.btn-outline:active.focus,
    .btn-success.btn-outline.active:hover,
    .btn-success.btn-outline.active:focus,
    .btn-success.btn-outline.active:focus-visible,
    .btn-success.btn-outline.active.focus,
    .open >
    .btn-success.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-success.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-success.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-success.btn-outline.dropdown-toggle.focus {
      color: var(--text-success-color);
      background-color: var(--btn-success-outline-bg-hover);
      border-color: var(--text-success-color); }
  .btn-success-outline:active, .btn-success-outline.active,
  .open > .btn-success-outline.dropdown-toggle,
  .btn-success.btn-outline:active,
  .btn-success.btn-outline.active,
  .open >
  .btn-success.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-success-outline.disabled, .btn-success-outline[disabled],
  fieldset[disabled] .btn-success-outline,
  .btn-success.btn-outline.disabled,
  .btn-success.btn-outline[disabled],
  fieldset[disabled]
  .btn-success.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-success-outline.disabled:hover, .btn-success-outline.disabled:focus, .btn-success-outline.disabled:focus-visible, .btn-success-outline.disabled.focus, .btn-success-outline[disabled]:hover, .btn-success-outline[disabled]:focus, .btn-success-outline[disabled]:focus-visible, .btn-success-outline[disabled].focus,
    fieldset[disabled] .btn-success-outline:hover,
    fieldset[disabled] .btn-success-outline:focus,
    fieldset[disabled] .btn-success-outline:focus-visible,
    fieldset[disabled] .btn-success-outline.focus,
    .btn-success.btn-outline.disabled:hover,
    .btn-success.btn-outline.disabled:focus,
    .btn-success.btn-outline.disabled:focus-visible,
    .btn-success.btn-outline.disabled.focus,
    .btn-success.btn-outline[disabled]:hover,
    .btn-success.btn-outline[disabled]:focus,
    .btn-success.btn-outline[disabled]:focus-visible,
    .btn-success.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-success.btn-outline:hover,
    fieldset[disabled]
    .btn-success.btn-outline:focus,
    fieldset[disabled]
    .btn-success.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-success.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-success-outline .badge,
  .btn-success.btn-outline .badge {
    color: var(--btn-success-outline-bg);
    background-color: var(--text-success-color); }

.btn-info-outline,
.btn-info.btn-outline {
  color: var(--text-info-color);
  background: transparent;
  border-color: var(--text-info-color); }
  .btn-info-outline:focus, .btn-info-outline:focus-visible, .btn-info-outline.focus,
  .btn-info.btn-outline:focus,
  .btn-info.btn-outline:focus-visible,
  .btn-info.btn-outline.focus {
    color: var(--text-info-color);
    background-color: var(--btn-info-outline-bg-hover);
    border-color: var(--text-info-color); }
  .btn-info-outline:not(:disabled):not(.disabled):hover, .btn-info-outline:not(:disabled):not(.disabled):active,
  .btn-info.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-info.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--text-info-color);
    background-color: var(--btn-info-outline-bg-hover);
    border-color: var(--text-info-color); }
  .btn-info-outline:active, .btn-info-outline.active,
  .open > .btn-info-outline.dropdown-toggle,
  .btn-info.btn-outline:active,
  .btn-info.btn-outline.active,
  .open >
  .btn-info.btn-outline.dropdown-toggle {
    color: var(--text-info-color);
    background-color: var(--btn-info-active-bg);
    border-color: var(--btn-info-active-border); }
    .btn-info-outline:active:hover, .btn-info-outline:active:focus, .btn-info-outline:active:focus-visible, .btn-info-outline:active.focus, .btn-info-outline.active:hover, .btn-info-outline.active:focus, .btn-info-outline.active:focus-visible, .btn-info-outline.active.focus,
    .open > .btn-info-outline.dropdown-toggle:hover,
    .open > .btn-info-outline.dropdown-toggle:focus,
    .open > .btn-info-outline.dropdown-toggle:focus-visible,
    .open > .btn-info-outline.dropdown-toggle.focus,
    .btn-info.btn-outline:active:hover,
    .btn-info.btn-outline:active:focus,
    .btn-info.btn-outline:active:focus-visible,
    .btn-info.btn-outline:active.focus,
    .btn-info.btn-outline.active:hover,
    .btn-info.btn-outline.active:focus,
    .btn-info.btn-outline.active:focus-visible,
    .btn-info.btn-outline.active.focus,
    .open >
    .btn-info.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-info.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-info.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-info.btn-outline.dropdown-toggle.focus {
      color: var(--text-info-color);
      background-color: var(--btn-info-outline-bg-hover);
      border-color: var(--text-info-color); }
  .btn-info-outline:active, .btn-info-outline.active,
  .open > .btn-info-outline.dropdown-toggle,
  .btn-info.btn-outline:active,
  .btn-info.btn-outline.active,
  .open >
  .btn-info.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-info-outline.disabled, .btn-info-outline[disabled],
  fieldset[disabled] .btn-info-outline,
  .btn-info.btn-outline.disabled,
  .btn-info.btn-outline[disabled],
  fieldset[disabled]
  .btn-info.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-info-outline.disabled:hover, .btn-info-outline.disabled:focus, .btn-info-outline.disabled:focus-visible, .btn-info-outline.disabled.focus, .btn-info-outline[disabled]:hover, .btn-info-outline[disabled]:focus, .btn-info-outline[disabled]:focus-visible, .btn-info-outline[disabled].focus,
    fieldset[disabled] .btn-info-outline:hover,
    fieldset[disabled] .btn-info-outline:focus,
    fieldset[disabled] .btn-info-outline:focus-visible,
    fieldset[disabled] .btn-info-outline.focus,
    .btn-info.btn-outline.disabled:hover,
    .btn-info.btn-outline.disabled:focus,
    .btn-info.btn-outline.disabled:focus-visible,
    .btn-info.btn-outline.disabled.focus,
    .btn-info.btn-outline[disabled]:hover,
    .btn-info.btn-outline[disabled]:focus,
    .btn-info.btn-outline[disabled]:focus-visible,
    .btn-info.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-info.btn-outline:hover,
    fieldset[disabled]
    .btn-info.btn-outline:focus,
    fieldset[disabled]
    .btn-info.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-info.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-info-outline .badge,
  .btn-info.btn-outline .badge {
    color: var(--btn-info-outline-bg);
    background-color: var(--text-info-color); }

.btn-warning-outline,
.btn-warning.btn-outline {
  color: var(--text-warning-color);
  background: transparent;
  border-color: var(--text-warning-color); }
  .btn-warning-outline:focus, .btn-warning-outline:focus-visible, .btn-warning-outline.focus,
  .btn-warning.btn-outline:focus,
  .btn-warning.btn-outline:focus-visible,
  .btn-warning.btn-outline.focus {
    color: var(--text-warning-color);
    background-color: var(--btn-warning-outline-bg-hover);
    border-color: var(--text-warning-color); }
  .btn-warning-outline:not(:disabled):not(.disabled):hover, .btn-warning-outline:not(:disabled):not(.disabled):active,
  .btn-warning.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-warning.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--text-warning-color);
    background-color: var(--btn-warning-outline-bg-hover);
    border-color: var(--text-warning-color); }
  .btn-warning-outline:active, .btn-warning-outline.active,
  .open > .btn-warning-outline.dropdown-toggle,
  .btn-warning.btn-outline:active,
  .btn-warning.btn-outline.active,
  .open >
  .btn-warning.btn-outline.dropdown-toggle {
    color: var(--text-warning-color);
    background-color: var(--btn-warning-active-bg);
    border-color: var(--btn-warning-active-border); }
    .btn-warning-outline:active:hover, .btn-warning-outline:active:focus, .btn-warning-outline:active:focus-visible, .btn-warning-outline:active.focus, .btn-warning-outline.active:hover, .btn-warning-outline.active:focus, .btn-warning-outline.active:focus-visible, .btn-warning-outline.active.focus,
    .open > .btn-warning-outline.dropdown-toggle:hover,
    .open > .btn-warning-outline.dropdown-toggle:focus,
    .open > .btn-warning-outline.dropdown-toggle:focus-visible,
    .open > .btn-warning-outline.dropdown-toggle.focus,
    .btn-warning.btn-outline:active:hover,
    .btn-warning.btn-outline:active:focus,
    .btn-warning.btn-outline:active:focus-visible,
    .btn-warning.btn-outline:active.focus,
    .btn-warning.btn-outline.active:hover,
    .btn-warning.btn-outline.active:focus,
    .btn-warning.btn-outline.active:focus-visible,
    .btn-warning.btn-outline.active.focus,
    .open >
    .btn-warning.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-warning.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-warning.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-warning.btn-outline.dropdown-toggle.focus {
      color: var(--text-warning-color);
      background-color: var(--btn-warning-outline-bg-hover);
      border-color: var(--text-warning-color); }
  .btn-warning-outline:active, .btn-warning-outline.active,
  .open > .btn-warning-outline.dropdown-toggle,
  .btn-warning.btn-outline:active,
  .btn-warning.btn-outline.active,
  .open >
  .btn-warning.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-warning-outline.disabled, .btn-warning-outline[disabled],
  fieldset[disabled] .btn-warning-outline,
  .btn-warning.btn-outline.disabled,
  .btn-warning.btn-outline[disabled],
  fieldset[disabled]
  .btn-warning.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-warning-outline.disabled:hover, .btn-warning-outline.disabled:focus, .btn-warning-outline.disabled:focus-visible, .btn-warning-outline.disabled.focus, .btn-warning-outline[disabled]:hover, .btn-warning-outline[disabled]:focus, .btn-warning-outline[disabled]:focus-visible, .btn-warning-outline[disabled].focus,
    fieldset[disabled] .btn-warning-outline:hover,
    fieldset[disabled] .btn-warning-outline:focus,
    fieldset[disabled] .btn-warning-outline:focus-visible,
    fieldset[disabled] .btn-warning-outline.focus,
    .btn-warning.btn-outline.disabled:hover,
    .btn-warning.btn-outline.disabled:focus,
    .btn-warning.btn-outline.disabled:focus-visible,
    .btn-warning.btn-outline.disabled.focus,
    .btn-warning.btn-outline[disabled]:hover,
    .btn-warning.btn-outline[disabled]:focus,
    .btn-warning.btn-outline[disabled]:focus-visible,
    .btn-warning.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-warning.btn-outline:hover,
    fieldset[disabled]
    .btn-warning.btn-outline:focus,
    fieldset[disabled]
    .btn-warning.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-warning.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-warning-outline .badge,
  .btn-warning.btn-outline .badge {
    color: var(--btn-warning-outline-bg);
    background-color: var(--text-warning-color); }

.btn-danger-outline,
.btn-danger.btn-outline {
  color: var(--text-danger-color);
  background: transparent;
  border-color: var(--text-danger-color); }
  .btn-danger-outline:focus, .btn-danger-outline:focus-visible, .btn-danger-outline.focus,
  .btn-danger.btn-outline:focus,
  .btn-danger.btn-outline:focus-visible,
  .btn-danger.btn-outline.focus {
    color: var(--text-danger-color);
    background-color: var(--btn-danger-outline-bg-hover);
    border-color: var(--text-danger-color); }
  .btn-danger-outline:not(:disabled):not(.disabled):hover, .btn-danger-outline:not(:disabled):not(.disabled):active,
  .btn-danger.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-danger.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--text-danger-color);
    background-color: var(--btn-danger-outline-bg-hover);
    border-color: var(--text-danger-color); }
  .btn-danger-outline:active, .btn-danger-outline.active,
  .open > .btn-danger-outline.dropdown-toggle,
  .btn-danger.btn-outline:active,
  .btn-danger.btn-outline.active,
  .open >
  .btn-danger.btn-outline.dropdown-toggle {
    color: var(--text-danger-color);
    background-color: var(--btn-danger-active-bg);
    border-color: var(--btn-danger-active-border); }
    .btn-danger-outline:active:hover, .btn-danger-outline:active:focus, .btn-danger-outline:active:focus-visible, .btn-danger-outline:active.focus, .btn-danger-outline.active:hover, .btn-danger-outline.active:focus, .btn-danger-outline.active:focus-visible, .btn-danger-outline.active.focus,
    .open > .btn-danger-outline.dropdown-toggle:hover,
    .open > .btn-danger-outline.dropdown-toggle:focus,
    .open > .btn-danger-outline.dropdown-toggle:focus-visible,
    .open > .btn-danger-outline.dropdown-toggle.focus,
    .btn-danger.btn-outline:active:hover,
    .btn-danger.btn-outline:active:focus,
    .btn-danger.btn-outline:active:focus-visible,
    .btn-danger.btn-outline:active.focus,
    .btn-danger.btn-outline.active:hover,
    .btn-danger.btn-outline.active:focus,
    .btn-danger.btn-outline.active:focus-visible,
    .btn-danger.btn-outline.active.focus,
    .open >
    .btn-danger.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-danger.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-danger.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-danger.btn-outline.dropdown-toggle.focus {
      color: var(--text-danger-color);
      background-color: var(--btn-danger-outline-bg-hover);
      border-color: var(--text-danger-color); }
  .btn-danger-outline:active, .btn-danger-outline.active,
  .open > .btn-danger-outline.dropdown-toggle,
  .btn-danger.btn-outline:active,
  .btn-danger.btn-outline.active,
  .open >
  .btn-danger.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-danger-outline.disabled, .btn-danger-outline[disabled],
  fieldset[disabled] .btn-danger-outline,
  .btn-danger.btn-outline.disabled,
  .btn-danger.btn-outline[disabled],
  fieldset[disabled]
  .btn-danger.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-danger-outline.disabled:hover, .btn-danger-outline.disabled:focus, .btn-danger-outline.disabled:focus-visible, .btn-danger-outline.disabled.focus, .btn-danger-outline[disabled]:hover, .btn-danger-outline[disabled]:focus, .btn-danger-outline[disabled]:focus-visible, .btn-danger-outline[disabled].focus,
    fieldset[disabled] .btn-danger-outline:hover,
    fieldset[disabled] .btn-danger-outline:focus,
    fieldset[disabled] .btn-danger-outline:focus-visible,
    fieldset[disabled] .btn-danger-outline.focus,
    .btn-danger.btn-outline.disabled:hover,
    .btn-danger.btn-outline.disabled:focus,
    .btn-danger.btn-outline.disabled:focus-visible,
    .btn-danger.btn-outline.disabled.focus,
    .btn-danger.btn-outline[disabled]:hover,
    .btn-danger.btn-outline[disabled]:focus,
    .btn-danger.btn-outline[disabled]:focus-visible,
    .btn-danger.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-danger.btn-outline:hover,
    fieldset[disabled]
    .btn-danger.btn-outline:focus,
    fieldset[disabled]
    .btn-danger.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-danger.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-danger-outline .badge,
  .btn-danger.btn-outline .badge {
    color: var(--btn-danger-outline-bg);
    background-color: var(--text-danger-color); }

.btn-light-outline,
.btn-light.btn-outline {
  color: var(--btn-light-color);
  background: transparent;
  border-color: var(--btn-light-border); }
  .btn-light-outline:focus, .btn-light-outline:focus-visible, .btn-light-outline.focus,
  .btn-light.btn-outline:focus,
  .btn-light.btn-outline:focus-visible,
  .btn-light.btn-outline.focus {
    color: var(--btn-light-hover-color);
    background-color: var(--btn-light-hover-bg);
    border-color: var(--btn-light-hover-border); }
  .btn-light-outline:not(:disabled):not(.disabled):hover, .btn-light-outline:not(:disabled):not(.disabled):active,
  .btn-light.btn-outline:not(:disabled):not(.disabled):hover,
  .btn-light.btn-outline:not(:disabled):not(.disabled):active {
    color: var(--btn-light-hover-color);
    background-color: var(--btn-light-hover-bg);
    border-color: var(--btn-light-hover-border); }
  .btn-light-outline:active, .btn-light-outline.active,
  .open > .btn-light-outline.dropdown-toggle,
  .btn-light.btn-outline:active,
  .btn-light.btn-outline.active,
  .open >
  .btn-light.btn-outline.dropdown-toggle {
    color: var(--btn-light-hover-color);
    background-color: var(--btn-light-active-bg);
    border-color: var(--btn-light-active-border); }
    .btn-light-outline:active:hover, .btn-light-outline:active:focus, .btn-light-outline:active:focus-visible, .btn-light-outline:active.focus, .btn-light-outline.active:hover, .btn-light-outline.active:focus, .btn-light-outline.active:focus-visible, .btn-light-outline.active.focus,
    .open > .btn-light-outline.dropdown-toggle:hover,
    .open > .btn-light-outline.dropdown-toggle:focus,
    .open > .btn-light-outline.dropdown-toggle:focus-visible,
    .open > .btn-light-outline.dropdown-toggle.focus,
    .btn-light.btn-outline:active:hover,
    .btn-light.btn-outline:active:focus,
    .btn-light.btn-outline:active:focus-visible,
    .btn-light.btn-outline:active.focus,
    .btn-light.btn-outline.active:hover,
    .btn-light.btn-outline.active:focus,
    .btn-light.btn-outline.active:focus-visible,
    .btn-light.btn-outline.active.focus,
    .open >
    .btn-light.btn-outline.dropdown-toggle:hover,
    .open >
    .btn-light.btn-outline.dropdown-toggle:focus,
    .open >
    .btn-light.btn-outline.dropdown-toggle:focus-visible,
    .open >
    .btn-light.btn-outline.dropdown-toggle.focus {
      color: var(--btn-light-hover-color);
      background-color: var(--btn-light-hover-bg);
      border-color: var(--btn-light-hover-border); }
  .btn-light-outline:active, .btn-light-outline.active,
  .open > .btn-light-outline.dropdown-toggle,
  .btn-light.btn-outline:active,
  .btn-light.btn-outline.active,
  .open >
  .btn-light.btn-outline.dropdown-toggle {
    background-image: none; }
  .btn-light-outline.disabled, .btn-light-outline[disabled],
  fieldset[disabled] .btn-light-outline,
  .btn-light.btn-outline.disabled,
  .btn-light.btn-outline[disabled],
  fieldset[disabled]
  .btn-light.btn-outline {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: transparent !important;
    border-color: var(--gray-lighter-3) !important; }
    .btn-light-outline.disabled:hover, .btn-light-outline.disabled:focus, .btn-light-outline.disabled:focus-visible, .btn-light-outline.disabled.focus, .btn-light-outline[disabled]:hover, .btn-light-outline[disabled]:focus, .btn-light-outline[disabled]:focus-visible, .btn-light-outline[disabled].focus,
    fieldset[disabled] .btn-light-outline:hover,
    fieldset[disabled] .btn-light-outline:focus,
    fieldset[disabled] .btn-light-outline:focus-visible,
    fieldset[disabled] .btn-light-outline.focus,
    .btn-light.btn-outline.disabled:hover,
    .btn-light.btn-outline.disabled:focus,
    .btn-light.btn-outline.disabled:focus-visible,
    .btn-light.btn-outline.disabled.focus,
    .btn-light.btn-outline[disabled]:hover,
    .btn-light.btn-outline[disabled]:focus,
    .btn-light.btn-outline[disabled]:focus-visible,
    .btn-light.btn-outline[disabled].focus,
    fieldset[disabled]
    .btn-light.btn-outline:hover,
    fieldset[disabled]
    .btn-light.btn-outline:focus,
    fieldset[disabled]
    .btn-light.btn-outline:focus-visible,
    fieldset[disabled]
    .btn-light.btn-outline.focus {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border); }
  .btn-light-outline .badge,
  .btn-light.btn-outline .badge {
    color: var(--btn-light-bg);
    background-color: var(--btn-light-color); }

.btn.btn-link:not(.btn-outline) {
  font-weight: var(--btn-link-font-weight);
  text-decoration: none;
  box-shadow: none; }
  .btn.btn-link:not(.btn-outline):not(.btn-primary-faded):not(.btn-secondary):not(.btn-success):not(.btn-info):not(.btn-danger):not(.btn-warning):not(.btn-dark):not(.btn-light) {
    color: var(--link-color);
    border-color: transparent;
    background: transparent; }
    .btn.btn-link:not(.btn-outline):not(.btn-primary-faded):not(.btn-secondary):not(.btn-success):not(.btn-info):not(.btn-danger):not(.btn-warning):not(.btn-dark):not(.btn-light):hover {
      color: var(--link-hover-color);
      text-decoration: var(--link-hover-decoration); }
    .btn.btn-link:not(.btn-outline):not(.btn-primary-faded):not(.btn-secondary):not(.btn-success):not(.btn-info):not(.btn-danger):not(.btn-warning):not(.btn-dark):not(.btn-light):focus, .btn.btn-link:not(.btn-outline):not(.btn-primary-faded):not(.btn-secondary):not(.btn-success):not(.btn-info):not(.btn-danger):not(.btn-warning):not(.btn-dark):not(.btn-light).focus {
      text-decoration: var(--link-hover-decoration); }
    .btn.btn-link:not(.btn-outline):not(.btn-primary-faded):not(.btn-secondary):not(.btn-success):not(.btn-info):not(.btn-danger):not(.btn-warning):not(.btn-dark):not(.btn-light):disabled, .btn.btn-link:not(.btn-outline):not(.btn-primary-faded):not(.btn-secondary):not(.btn-success):not(.btn-info):not(.btn-danger):not(.btn-warning):not(.btn-dark):not(.btn-light).disabled {
      color: var(--btn-link-disabled-color);
      pointer-events: none; }
  .btn.btn-link:not(.btn-outline).btn-success {
    color: var(--text-success-color); }
  .btn.btn-link:not(.btn-outline).btn-warning {
    color: var(--text-warning-color); }
  .btn.btn-link:not(.btn-outline).btn-danger {
    color: var(--text-danger-color); }

.btn-xlg {
  height: var(--ui-height-xlg);
  padding: var(--ui-padding-xlg-v) var(--ui-padding-xlg-h);
  font-size: var(--btn-xlg-font-size);
  line-height: var(--btn-xlg-line-height);
  border-radius: var(--btn-xlg-border-radius);
  font-weight: var(--btn-xlg-font-weight); }
  .btn-xlg.icon-animation .btn-icon {
    left: var(--ui-padding-xlg-h); }
  .btn-xlg.icon-animation.flex-row-reverse .btn-icon {
    right: var(--ui-padding-xlg-h);
    left: unset; }
  .btn-xlg.btn-icon {
    height: var(--ui-height-xlg);
    width: var(--ui-height-xlg); }
  .btn-xlg i {
    margin-right: var(--btn-xlg-icon-spacing); }
    .btn-xlg i:last-child:not(:first-child) {
      margin-right: 0;
      margin-left: var(--btn-xlg-icon-spacing); }

.btn-lg, .btn-group-lg > .btn {
  height: var(--ui-height-lg);
  padding: var(--ui-padding-base-v) var(--ui-padding-lg-h);
  font-size: var(--btn-lg-font-size);
  line-height: var(--btn-lg-line-height);
  border-radius: var(--btn-lg-border-radius);
  font-weight: var(--btn-lg-font-weight); }
  .btn-lg.icon-animation .btn-icon, .btn-group-lg > .icon-animation.btn .btn-icon {
    left: var(--ui-padding-lg-h); }
  .btn-lg.icon-animation.flex-row-reverse .btn-icon, .btn-group-lg > .icon-animation.flex-row-reverse.btn .btn-icon {
    right: var(--ui-padding-lg-h);
    left: unset; }
  .btn-lg.btn-icon, .btn-group-lg > .btn-icon.btn {
    height: var(--ui-height-lg);
    width: var(--ui-height-lg); }
  .btn-lg i, .btn-group-lg > .btn i {
    margin-right: var(--btn-lg-icon-spacing); }
    .btn-lg i:last-child:not(:first-child), .btn-group-lg > .btn i:last-child:not(:first-child) {
      margin-right: 0;
      margin-left: var(--btn-lg-icon-spacing); }

.btn-sm, .btn-group-sm > .btn {
  height: var(--ui-height-sm);
  padding: var(--ui-padding-sm-v) var(--ui-padding-sm-h);
  font-size: var(--btn-sm-font-size);
  line-height: var(--btn-sm-line-height);
  border-radius: var(--btn-sm-border-radius);
  font-weight: var(--btn-sm-font-weight); }
  .btn-sm.icon-animation .btn-icon, .btn-group-sm > .icon-animation.btn .btn-icon {
    left: var(--ui-padding-sm-h); }
  .btn-sm.icon-animation.flex-row-reverse .btn-icon, .btn-group-sm > .icon-animation.flex-row-reverse.btn .btn-icon {
    right: var(--ui-padding-sm-h);
    left: unset; }
  .btn-sm.btn-icon, .btn-group-sm > .btn-icon.btn {
    height: var(--ui-height-sm);
    width: var(--ui-height-sm); }
  .btn-sm i, .btn-group-sm > .btn i {
    margin-right: var(--btn-sm-icon-spacing); }
    .btn-sm i:last-child:not(:first-child), .btn-group-sm > .btn i:last-child:not(:first-child) {
      margin-right: 0;
      margin-left: var(--btn-sm-icon-spacing); }

.btn-xs {
  height: var(--ui-height-xs);
  padding: var(--ui-padding-xs-v) var(--ui-padding-xs-h);
  font-size: var(--btn-xs-font-size);
  line-height: var(--btn-xs-line-height);
  border-radius: var(--btn-xs-border-radius);
  font-weight: var(--btn-xs-font-weight); }
  .btn-xs.icon-animation .btn-icon {
    left: var(--ui-padding-xs-h); }
  .btn-xs.icon-animation.flex-row-reverse .btn-icon {
    right: var(--ui-padding-xs-h);
    left: unset; }
  .btn-xs.btn-icon {
    height: var(--ui-height-xs);
    width: var(--ui-height-xs); }
  .btn-xs i {
    margin-right: var(--btn-xs-icon-spacing); }
    .btn-xs i:last-child:not(:first-child) {
      margin-right: 0;
      margin-left: var(--btn-xs-icon-spacing); }

.btn-block {
  display: flex;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: var(--btn-block-spacing-y); }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.btn.btn-icon.btn-hover-danger:hover {
  color: var(--text-danger-color); }

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: var(--caret-width-base) dashed;
  border-top: var(--caret-width-base) solid;
  border-right: var(--caret-width-base) solid transparent;
  border-left: var(--caret-width-base) solid transparent; }

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative; }

.dropdown-toggle {
  white-space: nowrap; }

.dropdown-toggle:focus {
  outline: 0; }

.dropdown-multi-level .dropdown-menu-search .dropdown-header {
  background: transparent;
  color: var(--dropdown-header-color);
  border: unset; }

.dropdown-multi-level > .dropdown-menu {
  overflow: visible !important; }

.dropdown-multi-level .dropdown-divider {
  margin-block: calc(var(--nav-divider-margin-y) * 0.5);
  height: 1px;
  background-color: var(--dropdown-divider-bg); }

.dropdown-multi-level .dropdown > .dropdown-toggle {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  padding: var(--dropdown-link-padding-v) var(--dropdown-link-padding-h);
  font-weight: normal;
  line-height: var(--line-height-base);
  color: var(--dropdown-link-color);
  white-space: nowrap;
  border: none;
  width: 100%;
  transition: border-color var(--transition-base), background var(--transition-base) color var(--transition-base); }
  .dropdown-multi-level .dropdown > .dropdown-toggle:hover {
    color: var(--dropdown-link-active-color); }

.dropdown-multi-level .dropdown.show .dropdown-toggle {
  color: var(--dropdown-link-active-color); }

.lagom-futuristic .dropdown-multi-level > .dropdown-menu > .dropdown > .dropdown-menu::after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background: var(--dropdown-bg);
  content: '';
  z-index: -2; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: var(--zindex-dropdown);
  float: left;
  min-width: var(--dropdown-min-width);
  padding: var(--nav-divider-margin-y) 0;
  margin: 0;
  list-style: none;
  font-size: var(--font-size-base);
  text-align: left;
  background: var(--dropdown-bg);
  border: var(--dropdown-border);
  border-radius: var(--dropdown-border-radius);
  box-shadow: var(--dropdown-box-shadow);
  background-clip: padding-box;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-16px);
  transition: var(--show-animation); }
  .dropdown-menu.pull-right {
    right: 0;
    left: auto; }
  .dropdown-menu .divider,
  .dropdown-menu .nav-divider {
    height: 0;
    margin: var(--nav-divider-margin-y) 0;
    overflow: hidden;
    border-top: 1px solid var(--dropdown-divider-bg); }
  .dropdown-menu > li > a,
  .dropdown-menu li.nav-header-collapse > .nav-header-item,
  .dropdown-menu .dropdown-item,
  .dropdown-menu .dropdown-menu-item > a {
    display: flex !important;
    align-items: center;
    padding: var(--dropdown-link-padding-v) var(--dropdown-link-padding-h);
    clear: both;
    font-weight: normal;
    line-height: var(--line-height-base);
    color: var(--dropdown-link-color);
    white-space: nowrap; }
    .dropdown-menu > li > a .nav-header-text > i,
    .dropdown-menu > li > a > i,
    .dropdown-menu li.nav-header-collapse > .nav-header-item .nav-header-text > i,
    .dropdown-menu li.nav-header-collapse > .nav-header-item > i,
    .dropdown-menu .dropdown-item .nav-header-text > i,
    .dropdown-menu .dropdown-item > i,
    .dropdown-menu .dropdown-menu-item > a .nav-header-text > i,
    .dropdown-menu .dropdown-menu-item > a > i {
      width: 14px;
      color: var(--dropdown-link-icon-color);
      transition: color var(--transition-base);
      margin-right: var(--spacing-2x); }
    .dropdown-menu > li > a .nav-header-text > svg,
    .dropdown-menu > li > a .nav-header-text > img,
    .dropdown-menu > li > a .svg-icon,
    .dropdown-menu > li > a > svg,
    .dropdown-menu > li > a > img,
    .dropdown-menu li.nav-header-collapse > .nav-header-item .nav-header-text > svg,
    .dropdown-menu li.nav-header-collapse > .nav-header-item .nav-header-text > img,
    .dropdown-menu li.nav-header-collapse > .nav-header-item .svg-icon,
    .dropdown-menu li.nav-header-collapse > .nav-header-item > svg,
    .dropdown-menu li.nav-header-collapse > .nav-header-item > img,
    .dropdown-menu .dropdown-item .nav-header-text > svg,
    .dropdown-menu .dropdown-item .nav-header-text > img,
    .dropdown-menu .dropdown-item .svg-icon,
    .dropdown-menu .dropdown-item > svg,
    .dropdown-menu .dropdown-item > img,
    .dropdown-menu .dropdown-menu-item > a .nav-header-text > svg,
    .dropdown-menu .dropdown-menu-item > a .nav-header-text > img,
    .dropdown-menu .dropdown-menu-item > a .svg-icon,
    .dropdown-menu .dropdown-menu-item > a > svg,
    .dropdown-menu .dropdown-menu-item > a > img {
      height: var(--app-nav-top-menu-svg-icon-size);
      min-width: var(--app-nav-top-menu-svg-icon-size);
      width: var(--app-nav-top-menu-svg-icon-size);
      margin-right: var(--spacing-2x); }
    .dropdown-menu > li > a .nav-header-text > img,
    .dropdown-menu > li > a > img,
    .dropdown-menu li.nav-header-collapse > .nav-header-item .nav-header-text > img,
    .dropdown-menu li.nav-header-collapse > .nav-header-item > img,
    .dropdown-menu .dropdown-item .nav-header-text > img,
    .dropdown-menu .dropdown-item > img,
    .dropdown-menu .dropdown-menu-item > a .nav-header-text > img,
    .dropdown-menu .dropdown-menu-item > a > img {
      height: unset; }
    .dropdown-menu > li > a .status,
    .dropdown-menu li.nav-header-collapse > .nav-header-item .status,
    .dropdown-menu .dropdown-item .status,
    .dropdown-menu .dropdown-menu-item > a .status {
      color: var(--dropdown-link-color); }
  .dropdown-menu > li > a.active {
    color: var(--dropdown-link-active-color); }
  .dropdown-menu .dropdown-menu-item.is-disabled > a {
    color: var(--dropdown-link-disabled-color); }
  .dropdown-menu .dropdown-menu-item-checkbox:has(.disabled) {
    opacity: 0.6;
    pointer-events: none; }
  .dropdown-menu .dropdown-menu-item-checkbox label {
    display: flex;
    align-items: center;
    gap: var(--ui-block-spacing-sm);
    padding: var(--dropdown-link-padding-v) var(--dropdown-link-padding-h);
    margin-bottom: 0;
    transition: color var(--transition-base);
    cursor: pointer; }
    .dropdown-menu .dropdown-menu-item-checkbox label:hover {
      color: var(--dropdown-link-active-color); }
    .dropdown-menu .dropdown-menu-item-checkbox label .checkbox-styled {
      visibility: visible !important;
      z-index: -1; }
    .dropdown-menu .dropdown-menu-item-checkbox label span {
      color: var(--dropdown-link-color); }
  .dropdown-menu .dropdown-menu-item-checkbox.active label {
    color: var(--dropdown-link-active-color); }
    .dropdown-menu .dropdown-menu-item-checkbox.active label span {
      color: var(--dropdown-link-active-color); }
  .dropdown-menu.dropdown-menu-collapse > li > a {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    padding-inline: var(--dropdown-collapse-link-padding-h); }
    .dropdown-menu.dropdown-menu-collapse > li > a:hover {
      padding-left: calc(var(--dropdown-collapse-link-padding-h) + var(--ui-nav-v-link-hover-padding-h));
      padding-right: calc(var(--dropdown-collapse-link-padding-h) - var(--ui-nav-v-link-hover-padding-h)); }
  .dropdown-menu .dropdown-menu-header {
    padding: var(--dropdown-link-padding-v) var(--dropdown-link-padding-h);
    font-size: var(--font-size-sm);
    background: var(--gray-faded);
    color: var(--gray-lighter);
    border: 1px solid var(--gray-lighter-4);
    border-width: 1px 0; }
  .dropdown-menu .dropdown-menu-items:has(.dropdown-menu-header) {
    border-top: 1px solid var(--gray-lighter-4); }
    .dropdown-menu .dropdown-menu-items:has(.dropdown-menu-header) > .dropdown-menu-header:first-child {
      margin-top: -1px; }

.dropdown.is-empty .dropdown-items {
  display: none; }

.dropdown.is-empty .dropdown-menu-no-data {
  padding: var(--spacing-1x);
  display: flex;
  align-items: center;
  justify-content: center; }

.status-icons-enabled .dropdown.view-filter-btns .btn > .status {
  display: none; }

.status-icons-enabled .dropdown.view-filter-btns .btn .status-icon {
  margin-right: 6px; }
  .status-icons-enabled .dropdown.view-filter-btns .btn .status-icon > svg {
    width: var(--font-size-base);
    height: var(--font-size-base); }

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus,
.dropdown-item:hover,
.dropdown-item:focus,
.dropdown-menu-item > a:hover,
.dropdown-menu-item > a:focus {
  text-decoration: none;
  color: var(--dropdown-link-hover-color);
  background-color: var(--dropdown-link-hover-bg);
  padding-left: calc(var(--dropdown-link-padding-h) + var(--ui-nav-v-link-hover-padding-h));
  padding-right: calc(var(--dropdown-link-padding-h) - var(--ui-nav-v-link-hover-padding-h)); }
  .dropdown-menu > li > a:hover > i, .dropdown-menu > li > a:focus > i,
  .dropdown-item:hover > i,
  .dropdown-item:focus > i,
  .dropdown-menu-item > a:hover > i,
  .dropdown-menu-item > a:focus > i {
    color: var(--dropdown-link-icon-hover-color); }

li.nav-header-collapse:hover > .nav-header-item, li.nav-header-collapse:focus > .nav-header-item {
  text-decoration: none;
  color: var(--dropdown-link-hover-color); }
  li.nav-header-collapse:hover > .nav-header-item .ls-caret, li.nav-header-collapse:focus > .nav-header-item .ls-caret {
    color: var(--dropdown-link-icon-active-color); }

.dropdown-item.active, .dropdown-item.active:hover, .dropdown-item.active:focus,
.dropdown-menu-item.active > a,
.dropdown-menu-item.active > a:hover,
.dropdown-menu-item.active > a:focus,
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  color: var(--dropdown-link-active-color);
  text-decoration: none;
  outline: 0;
  background-color: var(--dropdown-link-active-bg);
  transform: none; }
  .dropdown-item.active > i, .dropdown-item.active:hover > i, .dropdown-item.active:focus > i,
  .dropdown-menu-item.active > a > i,
  .dropdown-menu-item.active > a:hover > i,
  .dropdown-menu-item.active > a:focus > i,
  .dropdown-menu > .active > a > i,
  .dropdown-menu > .active > a:hover > i,
  .dropdown-menu > .active > a:focus > i {
    color: var(--dropdown-link-icon-active-color); }
  .dropdown-item.active .status, .dropdown-item.active:hover .status, .dropdown-item.active:focus .status,
  .dropdown-menu-item.active > a .status,
  .dropdown-menu-item.active > a:hover .status,
  .dropdown-menu-item.active > a:focus .status,
  .dropdown-menu > .active > a .status,
  .dropdown-menu > .active > a:hover .status,
  .dropdown-menu > .active > a:focus .status {
    color: var(--dropdown-link-active-color); }

.dropdown-mega .dropdown-menu-item.active > a {
  background-color: unset; }

li.nav-header-collapse > .nav-header-item .ls-caret {
  color: var(--app-nav-top-menu-icon-color); }

li.nav-header-collapse > .nav-header-item:hover .ls-caret, li.nav-header-collapse > .nav-header-item:focus .ls-caret {
  color: var(--dropdown-link-icon-active-color); }

li.nav-header-collapse > .nav-header-item:hover .nav-header-text > i, li.nav-header-collapse > .nav-header-item:focus .nav-header-text > i {
  color: var(--dropdown-link-icon-active-color); }

li.nav-header-collapse > .nav-header-item:not(.collapsed) {
  color: var(--dropdown-link-active-color);
  text-decoration: none;
  outline: 0;
  transform: none; }
  li.nav-header-collapse > .nav-header-item:not(.collapsed) .ls-caret {
    color: var(--dropdown-link-icon-active-color); }
  li.nav-header-collapse > .nav-header-item:not(.collapsed) .nav-header-text > i {
    color: var(--dropdown-link-icon-active-color); }

.dropdown-item.disabled, .dropdown-item.disabled:hover, .dropdown-item.disabled:focus,
.dropdown-menu-item.disabled > a,
.dropdown-menu-item.disabled > a:hover,
.dropdown-menu-item.disabled > a:focus,
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  color: var(--dropdown-link-disabled-color); }

.dropdown-item.disabled:hover, .dropdown-item.disabled:focus,
.dropdown-menu-item.disabled > a:hover,
.dropdown-menu-item.disabled > a:focus,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  background-image: none;
  cursor: var(--cursor-disabled); }

.dropdown-title {
  padding: 10px 16px 0; }

.open > .dropdown-menu, .show > .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0); }

.open > a, .show > a {
  outline: 0; }

.dropdown-menu-right {
  left: auto;
  right: 0; }

[dir="rtl"] .dropdown-menu-right {
  left: 0;
  right: auto; }

.dropdown-menu-center {
  left: 50%;
  transform: translateX(-50%) !important; }

.dropdown-menu-left {
  left: 0;
  right: auto; }

.dropdown-menu.sfHover, .dropdown-menu.show {
  display: block;
  opacity: 1;
  visibility: visible;
  transform: translateY(0); }

.dropdown-header {
  display: block;
  padding: 3px 15px;
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--dropdown-header-color);
  white-space: nowrap;
  text-align: left; }
  .dropdown-header-title {
    color: var(--dropdown-link-color);
    font-size: var(--font-size-h5);
    line-height: var(--line-height-base);
    font-weight: var(--font-weight-medium); }
  .dropdown-header-desc {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    color: var(--text-lighter-color); }
  .dropdown-header--account {
    display: flex;
    align-items: center;
    padding: 10px var(--spacing-3x) var(--spacing-1x); }
    .dropdown-header--account .client-avatar {
      margin-right: var(--spacing-2x); }
      .dropdown-header--account .client-avatar img {
        width: 42px;
        height: 42px; }

.dropdown-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 99; }

.pull-right > .dropdown-menu {
  right: 0;
  left: auto; }

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px; }

@media (min-width: 992px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto; }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto; } }

.lagom-futuristic .intl-tel-input .country-list {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }

.dropdown-select-list .dropdown-toggle {
  display: flex;
  column-gap: var(--ui-block-spacing-base);
  align-items: center;
  border: 1px solid var(--input-border-color);
  padding: 15px var(--ui-block-padding-sm);
  border-radius: var(--border-radius-base);
  color: var(--text-heading-color);
  transition: var(--transition-base);
  white-space: wrap;
  cursor: pointer; }
  @media (max-width: 767.98px) {
    .dropdown-select-list .dropdown-toggle {
      padding-block: var(--spacing-1x); } }
  .dropdown-select-list .dropdown-toggle:hover, .dropdown-select-list .dropdown-toggle:focus, .dropdown-select-list .dropdown-toggle:active {
    border-color: var(--input-focus-border-color); }
    .dropdown-select-list .dropdown-toggle:hover .dropdown-caret i, .dropdown-select-list .dropdown-toggle:focus .dropdown-caret i, .dropdown-select-list .dropdown-toggle:active .dropdown-caret i {
      color: var(--gray-icons-hover); }
  .dropdown-select-list .dropdown-toggle-content {
    display: flex;
    flex-direction: column;
    flex-grow: 1; }
    .dropdown-select-list .dropdown-toggle-content-title {
      display: flex;
      justify-content: space-between;
      width: 100%; }
  .dropdown-select-list .dropdown-toggle .dropdown-icon {
    max-height: 18px;
    color: var(--text-primary-color); }
    .dropdown-select-list .dropdown-toggle .dropdown-icon:has(.graphic-item) {
      max-height: 32px; }
  .dropdown-select-list .dropdown-toggle .dropdown-caret i {
    transition: var(--transition-base);
    color: var(--gray-icons); }
  .dropdown-select-list .dropdown-toggle-disabled:hover {
    border-color: var(--input-border-color);
    cursor: default; }

.dropdown-select-list .dropdown-list {
  display: flex;
  flex-direction: column;
  max-height: 400px;
  width: 100%;
  top: calc(100% + var(--spacing-1x));
  cursor: pointer; }
  .dropdown-select-list .dropdown-list-item {
    display: flex;
    align-items: center;
    column-gap: var(--ui-block-spacing-base);
    transition: var(--transition-base);
    color: var(--text-heading-color);
    padding: var(--ui-block-padding-sm-v) var(--ui-block-padding-sm);
    cursor: pointer; }
    .dropdown-select-list .dropdown-list-item-border:not(:last-child) {
      border-bottom: 1px solid var(--dropdown-divider-bg); }
    .dropdown-select-list .dropdown-list-item span:not(.label),
    .dropdown-select-list .dropdown-list-item div {
      transition: all var(--transition-base);
      pointer-events: none; }
    .dropdown-select-list .dropdown-list-item .label {
      pointer-events: all; }
    .dropdown-select-list .dropdown-list-item:hover, .dropdown-select-list .dropdown-list-item:focus-visible {
      background-color: var(--ui-nav-link-active-bg); }
      .dropdown-select-list .dropdown-list-item:hover .item-desc-title, .dropdown-select-list .dropdown-list-item:focus-visible .item-desc-title {
        color: var(--dropdown-link-active-color); }
      .dropdown-select-list .dropdown-list-item:hover .label, .dropdown-select-list .dropdown-list-item:focus-visible .label {
        box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08); }
    .dropdown-select-list .dropdown-list-item .item-desc {
      display: flex;
      flex-grow: 1;
      flex-direction: column;
      row-gap: 4px;
      width: 100%; }
      .dropdown-select-list .dropdown-list-item .item-desc div {
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: var(--dropdown-link-color); }
      .dropdown-select-list .dropdown-list-item .item-desc p {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis; }

.dropdown-select-list-sm .dropdown-toggle {
  padding: 10px var(--ui-block-spacing-sm); }

.dropdown-select-list-sm .dropdown-list-item {
  padding: var(--ui-block-padding-xs) var(--ui-block-padding-sm); }

.dropdown-select-list-icon .dropdown-list-item .item-icon {
  color: var(--text-primary-color);
  max-height: 18px; }
  .dropdown-select-list-icon .dropdown-list-item .item-icon:has(.graphic-item) {
    max-height: 32px; }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  box-shadow: var(--btn-box-shadow); }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    flex: 1 1 auto;
    box-shadow: none; }
    .btn-group > .btn:hover,
    .btn-group-vertical > .btn:hover {
      z-index: 1; }
    .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 1; }

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; }
  .btn-toolbar .input-group {
    width: auto; }
  .btn-toolbar > .btn-group {
    margin-left: 5px; }

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: calc(-1 * var(--btn-border-width)); }

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.dropdown-toggle-split {
  padding-right: var(--spacing-1x);
  padding-left: var(--spacing-1x); }
  .dropdown-toggle-split::after,
  .dropup .dropdown-toggle-split::after,
  .dropright .dropdown-toggle-split::after {
    margin-left: 0; }
  .dropleft .dropdown-toggle-split::before {
    margin-right: 0; }

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: var(--spacing-1x);
  padding-left: var(--spacing-1x); }

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: var(--spacing-1x);
  padding-left: var(--spacing-1x); }

.btn-group.open .dropdown-toggle {
  box-shadow: var(--btn-active-box-shadow); }
  .btn-group.open .dropdown-toggle.btn-link {
    box-shadow: none; }

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center; }
  .btn-group-vertical > .btn,
  .btn-group-vertical > .btn-group {
    width: 100%; }
  .btn-group-vertical > .btn:not(:first-child),
  .btn-group-vertical > .btn-group:not(:first-child) {
    margin-top: -var(--button-border-width); }
  .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
  .btn-group-vertical > .btn-group:not(:last-child) > .btn {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; }
  .btn-group-vertical > .btn:not(:first-child),
  .btn-group-vertical > .btn-group:not(:first-child) > .btn {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }

[data-toggle="buttons"] > .btn,
[data-toggle="buttons"] > .btn-group > .btn,
.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0; }
  [data-toggle="buttons"] > .btn input[type="radio"],
  [data-toggle="buttons"] > .btn input[type="checkbox"],
  [data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
  [data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"],
  .btn-group-toggle > .btn input[type="radio"],
  .btn-group-toggle > .btn input[type="checkbox"],
  .btn-group-toggle > .btn-group > .btn input[type="radio"],
  .btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none; }

.input-group {
  position: relative;
  display: flex;
  border-radius: var(--input-border-radius); }
  .input-group[class*="col-"] {
    float: none;
    padding-left: 0;
    padding-right: 0; }
  .input-group > .form-control,
  .input-group > .form-control-plaintext,
  .input-group > .custom-select,
  .input-group > .custom-file {
    position: relative;
    z-index: 2;
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
    margin-bottom: 0; }
    .input-group > .form-control:focus,
    .input-group > .form-control-plaintext:focus,
    .input-group > .custom-select:focus,
    .input-group > .custom-file:focus {
      z-index: 3; }
    .input-group > .form-control + .form-control,
    .input-group > .form-control + .custom-select,
    .input-group > .form-control + .custom-file,
    .input-group > .form-control-plaintext + .form-control,
    .input-group > .form-control-plaintext + .custom-select,
    .input-group > .form-control-plaintext + .custom-file,
    .input-group > .custom-select + .form-control,
    .input-group > .custom-select + .custom-select,
    .input-group > .custom-select + .custom-file,
    .input-group > .custom-file + .form-control,
    .input-group > .custom-file + .custom-select,
    .input-group > .custom-file + .custom-file {
      margin-left: -var(--input-border-width); }
  .input-group > .form-control:focus,
  .input-group > .custom-select:focus,
  .input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
    z-index: 3; }
  .input-group > .custom-file .custom-file-input:focus {
    z-index: 4; }
  .input-group > .form-control:not(:first-child),
  .input-group > .custom-select:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .input-group > .custom-file {
    display: flex;
    align-items: center; }
    .input-group > .custom-file:not(:last-child) .custom-file-label,
    .input-group > .custom-file:not(:first-child) .custom-file-label {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0; }
  .input-group > .input-group-addon:first-child {
    border-radius: var(--border-radius-sm) 0 0 var(--border-radius-sm); }
    .input-group > .input-group-addon:first-child + .form-control {
      margin-left: -1px;
      border-radius: 0 var(--border-radius-sm) var(--border-radius-sm) 0; }
  .input-group > .input-group-addon:last-child {
    margin-left: -1px;
    border-radius: 0 var(--border-radius-sm) var(--border-radius-sm) 0; }

.input-group-prepend,
.input-group-append {
  display: flex; }
  .input-group-prepend .btn,
  .input-group-append .btn {
    position: relative;
    z-index: 2; }
    .input-group-prepend .btn:focus,
    .input-group-append .btn:focus {
      z-index: 3; }
  .input-group-prepend .btn + .btn,
  .input-group-prepend .btn + .input-group-text,
  .input-group-prepend .input-group-text + .input-group-text,
  .input-group-prepend .input-group-text + .btn,
  .input-group-append .btn + .btn,
  .input-group-append .btn + .input-group-text,
  .input-group-append .input-group-text + .input-group-text,
  .input-group-append .input-group-text + .btn {
    margin-left: -var(--input-border-width); }

.input-group-prepend {
  margin-right: -var(--input-border-width); }

.input-group-append {
  margin-left: -var(--input-border-width); }

.input-group-text {
  display: flex;
  align-items: center;
  padding: var(--ui-padding-base-v) var(--ui-padding-base-h);
  margin-bottom: 0;
  font-size: var(--input-font-size);
  font-weight: var(--input-font-weight);
  line-height: var(--input-line-height);
  color: var(--input-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--input-group-addon-bg);
  border: var(--input-border-width) solid var(--input-group-addon-border-color);
  border-radius: var(--input-border-radius); }
  .input-group-text input[type="radio"],
  .input-group-text input[type="checkbox"] {
    margin-top: 0; }

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: var(--ui-height-lg);
  border-radius: var(--input-lg-border-radius); }

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: var(--ui-padding-lg-v) var(--ui-padding-lg-h);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg);
  border-radius: var(--input-lg-border-radius); }

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: var(--ui-height-sm); }

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: var(--ui-padding-sm-v) var(--ui-padding-sm-h);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  border-radius: var(--input-sm-border-radius); }

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: var(--custom-select-padding-x)var(--custom-select-indicator-padding); }

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0; }

.input-group-addon,
.input-group-btn {
  white-space: nowrap;
  vertical-align: middle; }

.input-group-addon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 var(--ui-padding-base-h);
  background-color: var(--input-group-addon-bg);
  border: var(--input-border);
  border-radius: var(--input-border-radius);
  color: var(--input-color);
  font-size: var(--font-size-base);
  font-weight: normal;
  line-height: 1;
  text-align: center; }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .input-group-addon {
      flex: 1 0 auto; } }
  .input-group-addon.input-sm {
    padding: 0 var(--ui-padding-sm-h);
    font-size: var(--font-size-sm);
    border-radius: var(--input-sm-border-radius); }
  .input-group-addon.input-lg {
    padding: 0 var(--ui-padding-lg-h);
    font-size: var(--font-size-lg);
    border-radius: var(--input-lg-border-radius); }
  .input-group-addon input[type="radio"],
  .input-group-addon input[type="checkbox"] {
    margin-top: 0; }

.input-group-btn {
  position: relative;
  white-space: nowrap; }
  .input-group-btn > .btn {
    position: relative;
    margin-left: var(--input-group-spacing-base); }
    .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
      z-index: 2; }

@media (max-width: 767.98px) {
  .input-group-vertical-sm {
    flex-direction: column; }
    .input-group-vertical-sm .input-group-addon:first-child + .form-control {
      margin: -1px 0 0; }
    .input-group-vertical-sm .form-control {
      text-align: center; } }

.nav {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
  list-style: none;
  padding-left: 0;
  padding-right: 0; }
  .nav a,
  .nav .nav-link {
    display: flex;
    align-items: center;
    min-height: var(--nav-link-height);
    padding: var(--nav-link-padding-v) var(--nav-link-padding-h);
    color: nav(--nav-link-color);
    text-decoration: none;
    font-weight: var(--font-weight-medium);
    font-size: var(--font-size-md); }
    .nav a:hover, .nav a:focus-visible, .nav a:focus,
    .nav .nav-link:hover,
    .nav .nav-link:focus-visible,
    .nav .nav-link:focus {
      text-decoration: none; }
    .nav a.disabled,
    .nav .nav-link.disabled {
      color: var(--nav-disabled-link-color);
      pointer-events: none;
      cursor: default; }
  .nav-v {
    flex-direction: column; }
    .nav-v a:hover, .nav-v a:active,
    .nav-v .nav-link:hover,
    .nav-v .nav-link:active {
      padding-left: calc(var(--nav-link-padding-h) + var(--ui-nav-link-hover-padding-h));
      color: nav(--nav-link-hover-color); }
  .nav-condensed a,
  .nav-condensed .nav-link {
    min-height: unset;
    padding: var(--nav-link-padding-v) var(--nav-link-padding-h); }

.nav-tabs a,
.nav-tabs .nav-link {
  position: relative;
  color: var(--nav-tabs-link-color);
  margin-bottom: var(--nav-tabs-link-negative-margin);
  border-top-left-radius: var(--nav-tabs-border-radius);
  border-top-right-radius: var(--nav-tabs-border-radius); }
  .nav-tabs a:hover, .nav-tabs a:focus-visible,
  .nav-tabs .nav-link:hover,
  .nav-tabs .nav-link:focus-visible {
    color: var(--nav-tabs-link-hover-color); }
    .nav-tabs a:hover > i, .nav-tabs a:focus-visible > i,
    .nav-tabs .nav-link:hover > i,
    .nav-tabs .nav-link:focus-visible > i {
      color: var(--nav-tabs-link-active-icon-color); }
  .nav-tabs a.disabled,
  .nav-tabs .nav-link.disabled {
    color: var(--nav-disabled-link-color);
    background-color: transparent;
    border-color: transparent; }
  .nav-tabs a > i,
  .nav-tabs .nav-link > i {
    margin-right: var(--spacing-1x);
    color: var(--nav-tabs-link-icon-color);
    transition: color var(--transition-base); }

.nav-tabs-xs a {
  font-size: var(--font-size-base);
  line-height: var(--line-height-md);
  min-height: 44px; }

.nav-tabs li:not(:last-of-type),
.nav-tabs .nav-item:not(:last-of-type) {
  margin-right: var(--nav-tabs-item-margin-right); }

.nav-tabs a.active,
.nav-tabs .nav-link.active,
.nav-tabs li.show a,
.nav-tabs li.active a,
.nav-tabs .nav-item.show .nav-link {
  color: var(--nav-tabs-link-active-color);
  background-color: var(--nav-tabs-link-active-bg);
  border-color: var(--nav-tabs-link-active-border-color); }
  .nav-tabs a.active:after,
  .nav-tabs .nav-link.active:after,
  .nav-tabs li.show a:after,
  .nav-tabs li.active a:after,
  .nav-tabs .nav-item.show .nav-link:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: var(--nav-link-padding-h);
    right: var(--nav-link-padding-h);
    height: var(--nav-tabs-link-active-border-width);
    background: var(--nav-tabs-link-active-border-color); }
  .nav-tabs a.active > i,
  .nav-tabs .nav-link.active > i,
  .nav-tabs li.show a > i,
  .nav-tabs li.active a > i,
  .nav-tabs .nav-item.show .nav-link > i {
    color: var(--nav-tabs-link-active-icon-color); }

.nav-tabs .dropdown-menu {
  margin-top: -var(--nav-tabs-border-width);
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.nav-tabs.nav-tabs-features {
  margin-bottom: var(--spacing-8x);
  display: flex;
  align-items: center;
  justify-content: center; }

.nav-tabs.nav-tabs-collapse {
  border-bottom: none; }
  .nav-tabs.nav-tabs-collapse svg {
    color: var(--gray-icons);
    transition: color var(--transition-base); }
    .nav-tabs.nav-tabs-collapse svg .plus-vert {
      transition: opacity var(--transition-base); }
  .nav-tabs.nav-tabs-collapse li:not(.collapsed) a svg {
    color: var(--nav-tabs-link-active-color); }
    .nav-tabs.nav-tabs-collapse li:not(.collapsed) a svg .plus-vert {
      opacity: 0; }
  .nav-tabs.nav-tabs-collapse li.collapsed a {
    color: var(--nav-tabs-link-color); }
    .nav-tabs.nav-tabs-collapse li.collapsed a svg {
      color: var(--gray-icons); }
    .nav-tabs.nav-tabs-collapse li.collapsed a:hover, .nav-tabs.nav-tabs-collapse li.collapsed a:focus-visible {
      color: var(--nav-tabs-link-hover-color); }
      .nav-tabs.nav-tabs-collapse li.collapsed a:hover svg, .nav-tabs.nav-tabs-collapse li.collapsed a:focus-visible svg {
        color: var(--nav-tabs-link-hover-color); }
    .nav-tabs.nav-tabs-collapse li.collapsed a::after {
      content: none; }
  .nav-tabs.nav-tabs-collapse + .tab-content .tab-pane {
    border-top: 1px solid var(--panel-border-divider-color); }

.nav-pills .nav-link {
  border-radius: var(--nav-pills-border-radius); }

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: var(--nav-pills-link-active-color);
  background-color: var(--nav-pills-link-active-bg); }

.nav-fill > .nav-link,
.nav-fill > li,
.nav-fill .nav-item,
.nav-fill > a {
  flex: 1 1 auto;
  text-align: center; }

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center; }

.tab-content > .tab-pane {
  display: none; }

.tab-content > .active {
  display: block; }

.tab.tab-boxed {
  background: var(--ui-block-bg);
  box-shadow: var(--ui-block-shadow);
  border-radius: var(--ui-block-border-radius);
  border: var(--ui-block-border); }
  .tab.tab-boxed .panel,
  .tab.tab-boxed .table-container {
    box-shadow: none; }
  .tab.tab-boxed .tab-content {
    margin: 0; }
  .tab.tab-boxed .tab-pane {
    padding: var(--ui-block-padding-base); }
  .tab.tab-boxed .nav-tabs {
    border-bottom: 1px solid var(--ui-block-divider-color);
    background: var(--ui-block-header-bg);
    padding-left: var(--ui-block-padding-base);
    padding-right: var(--ui-block-padding-base); }
    .tab.tab-boxed .nav-tabs > li > a i {
      margin-right: var(--spacing-1x); }

.nav-lg > li > a,
.nav-lg > li .nav-link,
.nav-lg .nav-item > a,
.nav-lg .nav-item .nav-link {
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg);
  font-weight: var(--font-weight-medium); }

.tab-pane#twofa .alert span.alert-icon + .alert-body {
  display: inline-flex; }

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--navbar-padding-v) var(--navbar-padding-h); }
  .navbar .container,
  .navbar .container-fluid, .navbar > .container-sm, .navbar > .container-md, .navbar > .container-lg, .navbar > .container-xl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between; }

.navbar-brand {
  display: inline-block;
  padding-top: var(--navbar-padding-v);
  padding-bottom: var(--navbar-padding-v);
  margin-right: var(--navbar-padding-h);
  font-size: var(--font-size-lg);
  line-height: inherit;
  white-space: nowrap; }
  .navbar-brand:hover, .navbar-brand:focus {
    text-decoration: none; }

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }
  .navbar-nav .nav-link {
    padding-right: 0;
    padding-left: 0; }
  .navbar-nav .dropdown-menu {
    position: static;
    float: none; }

.navbar-text {
  display: inline-block;
  padding-top: var(--navbar-padding-v);
  padding-bottom: var(--navbar-padding-v); }

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center; }

.navbar-toggle {
  position: relative;
  float: right;
  margin-right: var(--ui-padding-base-h);
  padding: var(--spacing-1x);
  width: 38px;
  height: 34px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: var(--border-radius-base); }
  .navbar-toggle:focus {
    outline: 0; }
  .navbar-toggle .icon-bar {
    display: block;
    width: 18px;
    height: 2px;
    position: absolute;
    left: var(--spacing-1x);
    right: var(--spacing-1x);
    opacity: 1;
    transform: rotate(0);
    transition: var(--transition-base); }
  .navbar-toggle .icon-bar:nth-child(2) {
    top: 8px; }
  .navbar-toggle .icon-bar:nth-child(3) {
    top: 16px; }
  .navbar-toggle .icon-bar:nth-child(4) {
    top: 24px; }
  @media (min-width: 992px) {
    .navbar-toggle {
      display: none; } }

.navbar-toggler {
  padding: var(--navbar-toggler-padding-y) var(--navbar-toggler-padding-x);
  font-size: vaar(--navbar-toggler-font-size);
  line-height: 1;
  background-color: transparent;
  border: var(--navbar-toggler-border-width) solid transparent;
  border-radius: var(--navbar-toggler-border-radius); }
  .navbar-toggler:hover, .navbar-toggler:focus-visible, .navbar-toggler:focus {
    text-decoration: none; }

.navbar-toggler-icon {
  display: inline-block;
  width: var(--navbar-toggler-icon-width);
  height: var(--navbar-toggler-icon-height);
  vertical-align: middle;
  content: var(--navbar-toggler-icon-content);
  background: 50% / 100% 100% no-repeat; }

.navbar-nav-scroll {
  max-height: var(--navbar-nav-scroll-max-height);
  overflow-y: auto; }

@media (max-width: 479.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 480px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-sm .navbar-nav {
      flex-direction: row; }
      .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: var(--navbar-nav-link-padding-x);
        padding-left: var(--navbar-nav-link-padding-x); }
    .navbar-expand-sm > .container,
    .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
      flex-wrap: nowrap; }
    .navbar-expand-sm .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-sm .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-sm .navbar-toggler {
      display: none; } }

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-md .navbar-nav {
      flex-direction: row; }
      .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-md .navbar-nav .nav-link {
        padding-right: var(--navbar-nav-link-padding-x);
        padding-left: var(--navbar-nav-link-padding-x); }
    .navbar-expand-md > .container,
    .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
      flex-wrap: nowrap; }
    .navbar-expand-md .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-md .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-md .navbar-toggler {
      display: none; } }

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-lg .navbar-nav {
      flex-direction: row; }
      .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: var(--navbar-nav-link-padding-x);
        padding-left: var(--navbar-nav-link-padding-x); }
    .navbar-expand-lg > .container,
    .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
      flex-wrap: nowrap; }
    .navbar-expand-lg .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-lg .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-lg .navbar-toggler {
      display: none; } }

@media (max-width: 1319.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 1320px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start; }
    .navbar-expand-xl .navbar-nav {
      flex-direction: row; }
      .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute; }
      .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: var(--navbar-nav-link-padding-x);
        padding-left: var(--navbar-nav-link-padding-x); }
    .navbar-expand-xl > .container,
    .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
      flex-wrap: nowrap; }
    .navbar-expand-xl .navbar-nav-scroll {
      overflow: visible; }
    .navbar-expand-xl .navbar-collapse {
      display: flex !important;
      flex-basis: auto; }
    .navbar-expand-xl .navbar-toggler {
      display: none; } }

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start; }
  .navbar-expand > .container,
  .navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
    padding-right: 0;
    padding-left: 0; }
  .navbar-expand .navbar-nav {
    flex-direction: row; }
    .navbar-expand .navbar-nav .dropdown-menu {
      position: absolute; }
    .navbar-expand .navbar-nav .nav-link {
      padding-right: var(--navbar-nav-link-padding-x);
      padding-left: var(--navbar-nav-link-padding-x); }
  .navbar-expand > .container,
  .navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
    flex-wrap: nowrap; }
  .navbar-expand .navbar-nav-scroll {
    overflow: visible; }
  .navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto; }
  .navbar-expand .navbar-toggler {
    display: none; }

.menu-open .app-nav-toggle .icon-bar:nth-child(1), .menu-open .app-nav-toggle .icon-bar:nth-child(4) {
  top: 18px;
  width: 0;
  left: 50%; }

.menu-open .app-nav-toggle .icon-bar:nth-child(2) {
  transform: rotate(45deg);
  left: 6px;
  top: 14px;
  width: 24px; }

.menu-open .app-nav-toggle .icon-bar:nth-child(3) {
  transform: rotate(-45deg);
  left: 6px;
  top: 14px;
  width: 24px; }

.navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(1), .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(4) {
  top: 18px;
  width: 0;
  left: 50%; }

.navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(2) {
  transform: rotate(45deg);
  left: 6px;
  top: 14px;
  width: 24px; }

.navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(3) {
  transform: rotate(-45deg);
  left: 6px;
  top: 14px;
  width: 24px; }

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: var(--breadcrumb-padding-vertical) var(--breadcrumb-padding-horizontal);
  margin-bottom: var(--line-height-base);
  list-style: none;
  font-size: var(--breadcrumb-font-size);
  background-color: var(--breadcrumb-bg);
  border-radius: var(--breadcrumb-border-radius); }
  .breadcrumb > li, .breadcrumb .breadcrumb-item {
    display: inline-block; }
    .breadcrumb > li:before, .breadcrumb .breadcrumb-item:before {
      content: none; }
    .breadcrumb > li + li, .breadcrumb > li + .breadcrumb-item, .breadcrumb .breadcrumb-item + li, .breadcrumb .breadcrumb-item + .breadcrumb-item {
      padding-left: var(--breadcrumb-item-padding-vertical); }
      .breadcrumb > li + li:before, .breadcrumb > li + .breadcrumb-item:before, .breadcrumb .breadcrumb-item + li:before, .breadcrumb .breadcrumb-item + .breadcrumb-item:before {
        float: left;
        content: var(--breadcrumb-separator);
        padding: var(--breadcrumb-item-padding-vertical) var(--breadcrumb-item-padding-horizontal);
        margin: 0;
        color: var(--breadcrumb-color); }
    .breadcrumb > li + .breadcrumb-item:hover::before, .breadcrumb .breadcrumb-item + .breadcrumb-item:hover::before {
      text-decoration: underline; }
    .breadcrumb > li + .breadcrumb-item:hover::before, .breadcrumb .breadcrumb-item + .breadcrumb-item:hover::before {
      text-decoration: none; }
  .breadcrumb > .active {
    color: var(--breadcrumb-active-color); }

.pagination {
  display: flex;
  padding: 8px 16px;
  border: 1px solid var(--gray-lighter-4);
  background: var(--table-container-pagination-bg);
  border-radius: var(--btn-base-border-radius);
  justify-content: flex-end;
  margin: 0;
  border-radius: var(--border-radius-base);
  list-style: none; }
  .pagination > li, .pagination .page-item {
    margin-left: 4px; }
    .pagination > li .page-link,
    .pagination > li > a,
    .pagination > li > span, .pagination .page-item .page-link,
    .pagination .page-item > a,
    .pagination .page-item > span {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      height: var(--ui-height-xs);
      padding: 4px var(--spacing-1x);
      margin-left: -1px;
      background: var(--pagination-bg);
      border: 1px solid var(--pagination-border);
      border-radius: var(--btn-base-border-radius);
      color: var(--pagination-color);
      font-size: var(--font-size-sm);
      line-height: var(--line-height-sm);
      text-decoration: none; }
      .pagination > li .page-link > i,
      .pagination > li > a > i,
      .pagination > li > span > i, .pagination .page-item .page-link > i,
      .pagination .page-item > a > i,
      .pagination .page-item > span > i {
        color: var(--gray-icons); }
    .pagination > li:first-child .page-link,
    .pagination > li:first-child > a,
    .pagination > li:first-child > span, .pagination .page-item:first-child .page-link,
    .pagination .page-item:first-child > a,
    .pagination .page-item:first-child > span {
      margin-left: 0; }
  .pagination .page-item .page-link:hover, .pagination .page-item .page-link:focus,
  .pagination > li .page-item:hover,
  .pagination > li .page-item:focus,
  .pagination > li > a:hover,
  .pagination > li > a:focus,
  .pagination > li > span:hover,
  .pagination > li > span:focus {
    z-index: 2;
    color: var(--pagination-hover-color);
    background-color: var(--pagination-hover-bg);
    border-color: var(--pagination-hover-border); }
  .pagination > .active .page-link, .pagination > .active .page-link:hover, .pagination > .active .page-link:focus,
  .pagination > .active > a,
  .pagination > .active > a:hover,
  .pagination > .active > a:focus,
  .pagination > .active > span,
  .pagination > .active > span:hover,
  .pagination > .active > span:focus {
    z-index: 3;
    color: var(--pagination-active-color);
    background-color: var(--pagination-active-bg);
    border-color: var(--pagination-active-border);
    cursor: default; }
  .pagination > .active .page-link {
    z-index: 2; }
  .pagination > .disabled > .page-link,
  .pagination > .disabled > .page-link:hover,
  .pagination > .disabled > .page-link:focus,
  .pagination > .disabled > span,
  .pagination > .disabled > span:hover,
  .pagination > .disabled > span:focus,
  .pagination > .disabled > a,
  .pagination > .disabled > a:hover,
  .pagination > .disabled > a:focus {
    color: var(--pagination-disabled-color);
    background: var(--pagination-disabled-bg);
    border-color: var(--pagination-disabled-border);
    cursor: var(--cursor-disabled); }

.pagination-lg .page-link {
  padding: var(--padding-lg-vertical) var(--ui-padding-lg-h);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg); }

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: var(--border-radius-lg);
  border-bottom-left-radius: var(--border-radius-lg); }

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: var(--border-radius-lg);
  border-bottom-right-radius: var(--border-radius-lg); }

.pagination-sm .page-link {
  padding: var(--ui-padding-sm-v) var(--ui-padding-sm-h);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm); }

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: var(--border-radius-sm);
  border-bottom-left-radius: var(--border-radius-sm); }

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: var(--border-radius-sm);
  border-bottom-right-radius: var(--border-radius-sm); }

.label {
  display: inline-flex;
  align-items: center;
  padding: var(--label-padding);
  font-size: var(--label-font-size);
  line-height: var(--label-line-height);
  font-weight: var(--font-weight-medium);
  color: var(--label-color);
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: var(--label-border-radius);
  text-transform: unset;
  column-gap: 6px;
  max-width: max-content; }
  .label:empty {
    display: none; }
  .btn .label {
    position: relative;
    top: -1px; }
  .label.label-save {
    top: 0;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: var(--spacing-1x);
    padding: 3px 6px;
    text-transform: unset !important;
    border-radius: 10px;
    background: var(--label-savings-bg);
    color: var(--label-savings-color);
    column-gap: 0; }
  .label.label-rounded {
    border-radius: 50px; }
  .label-xs {
    column-gap: 4px;
    max-height: 20px;
    min-height: 20px; }
    .label-xs .status {
      line-height: 1;
      min-height: var(--line-height-xxs); }
      .label-xs .status::before {
        margin-right: 4px;
        height: 6px;
        width: 6px;
        min-width: 6px; }
    .label-xs i svg {
      width: 12px;
      line-height: 1; }
  .label-inner-border {
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08); }

a.label:hover, a.label:focus {
  color: var(--label-link-hover-color);
  text-decoration: none;
  cursor: pointer; }

.label-default {
  background-color: var(--label-default-bg);
  color: var(--label-default-color); }
  .label-default[href]:hover, .label-default[href]:focus {
    background-color: var(--label-default-color); }
  .label-default.label-solid {
    background-color: var(--label-default-color);
    color: var(--label-color); }
  .label-default.label-outline {
    border: 1px solid var(--label-default-color);
    background-color: transparent;
    color: var(--label-default-color); }

.label-primary {
  background-color: var(--label-primary-bg);
  color: var(--label-primary-color); }
  .label-primary[href]:hover, .label-primary[href]:focus {
    background-color: var(--label-primary-color); }
  .label-primary.label-solid {
    background-color: var(--label-primary-bg);
    color: var(--label-primary-color); }
  .label-primary.label-outline {
    border: 1px solid var(--label-primary-bg);
    background-color: transparent;
    color: var(--label-primary-bg); }

.label-secondary {
  background-color: var(--label-secondary-bg);
  color: var(--label-secondary-color); }
  .label-secondary[href]:hover, .label-secondary[href]:focus {
    background-color: var(--label-secondary-color); }
  .label-secondary.label-solid {
    background-color: var(--label-secondary-bg);
    color: var(--label-secondary-color); }
  .label-secondary.label-outline {
    border: 1px solid var(--label-secondary-bg);
    background-color: transparent;
    color: var(--label-secondary-bg); }

.label-primary-faded {
  background-color: var(--label-primary-faded-bg);
  color: var(--label-primary-faded-color); }
  .label-primary-faded[href]:hover, .label-primary-faded[href]:focus {
    background-color: var(--label-primary-faded-color); }
  .label-primary-faded.label-solid {
    background-color: var(--label-primary-faded-bg);
    color: var(--label-color); }
  .label-primary-faded.label-outline {
    border: 1px solid var(--label-primary-faded-bg);
    background-color: transparent;
    color: var(--label-primary-faded-bg); }

.label-success {
  background-color: var(--label-success-bg);
  color: var(--label-success-color); }
  .label-success[href]:hover, .label-success[href]:focus {
    background-color: var(--label-success-color); }
  .label-success.label-solid {
    background-color: var(--label-success-color);
    color: var(--label-color); }
  .label-success.label-outline {
    border: 1px solid var(--label-success-color);
    background-color: transparent;
    color: var(--label-success-color); }

.label-info {
  background-color: var(--label-info-bg);
  color: var(--label-info-color); }
  .label-info[href]:hover, .label-info[href]:focus {
    background-color: var(--label-info-color); }
  .label-info.label-solid {
    background-color: var(--label-info-color);
    color: var(--label-color); }
  .label-info.label-outline {
    border: 1px solid var(--label-info-color);
    background-color: transparent;
    color: var(--label-info-color); }

.label-warning {
  background-color: var(--label-warning-bg);
  color: var(--label-warning-color); }
  .label-warning[href]:hover, .label-warning[href]:focus {
    background-color: var(--label-warning-color); }
  .label-warning.label-solid {
    background-color: var(--label-warning-color);
    color: var(--label-color); }
  .label-warning.label-outline {
    border: 1px solid var(--label-warning-color);
    background-color: transparent;
    color: var(--label-warning-color); }

.label-danger {
  background-color: var(--label-danger-bg);
  color: var(--label-danger-color); }
  .label-danger[href]:hover, .label-danger[href]:focus {
    background-color: var(--label-danger-color); }
  .label-danger.label-solid {
    background-color: var(--label-danger-color);
    color: var(--label-color); }
  .label-danger.label-outline {
    border: 1px solid var(--label-danger-color);
    background-color: transparent;
    color: var(--label-danger-color); }

.label-purple {
  background-color: var(--label-purple-bg);
  color: var(--label-purple-color); }
  .label-purple[href]:hover, .label-purple[href]:focus {
    background-color: var(--label-purple-color); }
  .label-purple.label-solid {
    background-color: var(--label-purple-bg);
    color: var(--label-purple-color); }
  .label-purple.label-outline {
    border: 1px solid var(--label-purple-bg);
    background-color: transparent;
    color: var(--label-purple-bg); }

.label-savings {
  background-color: var(--label-savings-bg);
  color: var(--label-savings-color); }
  .label-savings[href]:hover, .label-savings[href]:focus {
    background-color: var(--label-savings-color); }
  .label-savings.label-solid {
    background-color: var(--label-savings-color);
    color: var(--label-color); }
  .label-savings.label-outline {
    border: 1px solid var(--label-savings-color);
    background-color: transparent;
    color: var(--label-savings-color); }

.label-required {
  position: relative; }
  .label-required:after {
    content: '*';
    color: var(--text-lighter-color);
    position: absolute;
    top: -3px;
    margin-left: 3px;
    right: -9px; }

.label-xxs {
  font-size: var(--label-xxs-font-size);
  line-height: var(--label-xxs-line-height);
  padding: var(--label-xxs-padding);
  border-radius: var(--label-xxs-border-radius); }
  .label-xxs i {
    font-size: var(--label-icon-size); }
  .label-xxs svg {
    width: var(--label-icon-size); }

.label-xs {
  font-size: var(--label-xxs-font-size);
  line-height: var(--label-xxs-line-height);
  padding: var(--label-xs-padding);
  border-radius: var(--label-xs-border-radius); }
  .label-xs i {
    font-size: var(--label-icon-size); }
  .label-xs svg {
    width: var(--label-icon-size); }

.label-sm {
  font-size: var(--label-sm-font-size);
  line-height: var(--label-sm-line-height);
  padding: var(--label-sm-padding);
  border-radius: var(--label-sm-border-radius); }
  .label-sm i {
    font-size: var(--label-icon-size); }
  .label-sm svg {
    width: var(--label-icon-size); }

.label-lg {
  font-size: var(--label-lg-font-size);
  line-height: var(--label-lg-line-height);
  padding: var(--label-lg-padding);
  border-radius: var(--label-lg-border-radius); }
  .label-lg i {
    font-size: var(--label-icon-size); }
  .label-lg svg {
    width: var(--label-icon-size); }

.badge {
  display: inline-block;
  min-width: var(--badge-line-height);
  padding: var(--badge-padding-y) var(--badge-padding-x);
  font-size: var(--badge-font-size);
  font-weight: var(--badge-font-weight);
  color: var(--badge-color);
  line-height: var(--badge-line-height);
  vertical-align: middle;
  white-space: nowrap;
  text-align: center;
  background-color: var(--badge-bg);
  border-radius: var(--badge-border-radius);
  transition: var(--badge-transition); }
  @media (prefers-reduced-motion: reduce) {
    .badge {
      transition: none; } }
  a.badge:hover, a.badge:focus-visible, a.badge:focus {
    text-decoration: none; }
  .badge:empty {
    display: none; }
  .btn .badge {
    position: relative;
    top: -1px; }
  .btn-xs .badge,
  .btn-group-xs > .btn .badge {
    top: 0;
    padding: 1px 5px; }
  .list-group-item.active > .badge,
  .nav-pills > .active > a > .badge {
    color: var(--badge-active-color);
    background-color: var(--badge-active-bg); }
  .list-group-item > .badge {
    float: right; }
  .list-group-item > .badge + .badge {
    margin-right: 5px; }
  .nav-pills > li > a > .badge {
    margin-left: 3px; }
  .badge.badge-no-round {
    border-radius: var(--border-radius-xs);
    margin-left: 4px; }
  .badge.badge-right {
    margin-left: auto; }

.badge-circle-xs {
  padding: 0;
  width: 18px;
  height: 18px;
  min-width: 10px;
  font-size: 10px;
  line-height: 18px; }

.badge-circle-lg {
  padding: 0;
  width: 24px;
  height: 24px;
  min-width: 24px;
  font-size: var(--font-size-md);
  line-height: 24px;
  border-radius: 100%; }

a.badge:hover, a.badge:focus {
  color: var(--badge-link-hover-color);
  text-decoration: none;
  cursor: pointer; }

.badge-success {
  color: var(--badge-success-color);
  background-color: var(--badge-success-bg); }
  a.badge-success:hover, a.badge-success:focus-visible, a.badge-success:focus {
    color: var(--badge-success-color);
    background-color: var(--badge-success-hover-bg); }
  a.badge-success:focus, a.badge-success.focus {
    outline: 0;
    box-shadow: 0 0 0 var(--badge-focus-width) rgba(var(--badge-success-bg), 0.5); }

.badge-info {
  color: var(--badge-info-color);
  background-color: var(--badge-info-bg); }
  a.badge-info:hover, a.badge-info:focus-visible, a.badge-info:focus {
    color: var(--badge-info-color);
    background-color: var(--badge-info-hover-bg); }
  a.badge-info:focus, a.badge-info.focus {
    outline: 0;
    box-shadow: 0 0 0 var(--badge-focus-width) rgba(var(--badge-info-bg), 0.5); }

.badge-warning {
  color: var(--badge-warning-color);
  background-color: var(--badge-warning-bg); }
  a.badge-warning:hover, a.badge-warning:focus-visible, a.badge-warning:focus {
    color: var(--badge-warning-color);
    background-color: var(--badge-warning-hover-bg); }
  a.badge-warning:focus, a.badge-warning.focus {
    outline: 0;
    box-shadow: 0 0 0 var(--badge-focus-width) rgba(var(--badge-warning-bg), 0.5); }

.badge-danger {
  color: var(--badge-danger-color);
  background-color: var(--badge-danger-bg); }
  a.badge-danger:hover, a.badge-danger:focus-visible, a.badge-danger:focus {
    color: var(--badge-danger-color);
    background-color: var(--badge-danger-hover-bg); }
  a.badge-danger:focus, a.badge-danger.focus {
    outline: 0;
    box-shadow: 0 0 0 var(--badge-focus-width) rgba(var(--badge-danger-bg), 0.5); }

.badge-primary {
  color: var(--badge-primary-color);
  background-color: var(--badge-primary-bg); }
  a.badge-primary:hover, a.badge-primary:focus-visible, a.badge-primary:focus {
    color: var(--badge-primary-color);
    background-color: var(--badge-primary-hover-bg); }
  a.badge-primary:focus, a.badge-primary.focus {
    outline: 0;
    box-shadow: 0 0 0 var(--badge-focus-width) rgba(var(--badge-primary-bg), 0.5); }

.badge-primary-faded {
  color: var(--badge-primary-faded-color);
  background-color: var(--badge-primary-faded-bg); }
  a.badge-primary-faded:hover, a.badge-primary-faded:focus-visible, a.badge-primary-faded:focus {
    color: var(--badge-primary-faded-color);
    background-color: var(--badge-primary-faded-hover-bg); }
  a.badge-primary-faded:focus, a.badge-primary-faded.focus {
    outline: 0;
    box-shadow: 0 0 0 var(--badge-focus-width) rgba(var(--badge-primary-faded-bg), 0.5); }

.badge-default {
  color: var(--badge-default-color);
  background-color: var(--badge-default-bg); }
  a.badge-default:hover, a.badge-default:focus-visible, a.badge-default:focus {
    color: var(--badge-default-color);
    background-color: var(--badge-default-bg); }
  a.badge-default:focus, a.badge-default.focus {
    outline: 0;
    box-shadow: 0 0 0 var(--badge-focus-width) rgba(var(--badge-default-bg), 0.5); }

.jumbotron {
  padding: var(--jumbotron-padding-v) var(--jumbotron-padding-h);
  margin-bottom: var(--jumbotron-padding);
  color: --jumbotron-color;
  background-color: var(--jumbotron-bg);
  border-radius: var(--border-radius-lg);
  padding: var(--jumbotron-padding-v) var(--jumbotron-padding-h); }

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0; }

.alert {
  position: relative;
  padding: var(--alert-padding-v) var(--alert-padding-h);
  margin-bottom: var(--ui-block-spacing-lg);
  border: 1px solid transparent;
  border-radius: var(--alert-border-radius);
  overflow: auto; }
  .alert.alert-lagom {
    display: flex;
    align-items: center; }
  .alert-content {
    align-self: center;
    width: 100%;
    display: flex; }
    @media (max-width: 767.98px) {
      .alert-content {
        flex-direction: column; }
        .alert-content .alert-actions {
          width: 100%;
          padding: var(--spacing-1x) 0 0 0; }
          .alert-content .alert-actions .btn {
            margin-top: var(--spacing-1x); } }
  .alert-heading, .alert h4 {
    color: inherit; }
  .alert .alert-link {
    font-weight: var(--alert-link-font-weight); }
  .alert > p,
  .alert > ul {
    margin-bottom: 0; }
  .alert > p + p {
    margin-top: 5px; }
  .alert-title {
    margin-bottom: 0; }
    .alert-title + *:not(.alert-actions) {
      margin-top: var(--spacing-1x); }
  .alert-icon {
    align-self: center; }
  .alert-body {
    align-self: center;
    flex: 1; }
    .alert-body > *:last-child {
      margin-bottom: 0; }
    .alert-body .alert-actions {
      padding: var(--spacing-1x) 0 0 0; }
      .alert-body .alert-actions .btn {
        margin-top: var(--spacing-1x) !important; }
    .alert-body ul, .alert-body ol {
      padding-left: var(--spacing-2x); }
  .alert > .btn-icon {
    opacity: 0.5; }
    .alert > .btn-icon:hover {
      opacity: 1; }
  .alert > .btn[data-dismiss="alert"],
  .alert > .close {
    position: absolute;
    top: var(--alert-padding-v);
    right: var(--alert-padding-v);
    width: 22px;
    height: 22px; }
    .alert > .btn[data-dismiss="alert"] .ls.ls-close,
    .alert > .btn[data-dismiss="alert"] .lm.lm-close,
    .alert > .close .ls.ls-close,
    .alert > .close .lm.lm-close {
      margin-right: 0;
      font-size: var(--font-size-base); }
  .alert-actions {
    align-self: center;
    padding-left: var(--alert-padding-v); }
    .alert-actions .btn:not(:last-child) {
      margin-right: var(--spacing-1x); }
    .alert-actions > .btn-icon {
      opacity: 0.5;
      margin-top: var(--ui-block-spacing-lg)-var(--ui-height-base)/2; }
      .alert-actions > .btn-icon:hover, .alert-actions > .btn-icon:focus-visible {
        opacity: 1; }
      .alert-actions > .btn-icon.btn-xs {
        margin-top: var(--ui-block-spacing-lg)-var(--ui-height-xs)/2;
        margin-bottom: var(--ui-block-spacing-lg)-var(--ui-height-xs)/2; }
        .alert-actions > .btn-icon.btn-xs:last-child {
          margin-right: var(--ui-block-spacing-lg)-var(--ui-height-xs)/2; }
      .alert-actions > .btn-icon.btn-sm, .btn-group-sm.alert-actions > .btn-icon.btn {
        margin-top: var(--ui-block-spacing-lg)-var(--ui-height-sm)/2;
        margin-bottom: var(--ui-block-spacing-lg)-var(--ui-height-sm)/2; }
        .alert-actions > .btn-icon.btn-sm:last-child, .btn-group-sm.alert-actions > .btn-icon.btn:last-child {
          margin-right: var(--ui-block-spacing-lg)-var(--ui-height-sm)/2; }
      .alert-actions > .btn-icon.btn-lg, .btn-group-lg.alert-actions > .btn-icon.btn {
        margin-top: var(--ui-block-spacing-lg)-var(--ui-height-lg)/2;
        margin-bottom: var(--ui-block-spacing-lg)-var(--ui-height-lg)/2; }
        .alert-actions > .btn-icon.btn-lg:last-child, .btn-group-lg.alert-actions > .btn-icon.btn:last-child {
          margin-right: var(--ui-block-spacing-lg)-var(--ui-height-lg)/2; }
    .alert-actions .btn[data-dismiss="alert"]:not(.btn-dismiss-ca),
    .alert-actions .close:not(.btn-dismiss-ca) {
      width: 18px;
      height: 18px; }
      .alert-actions .btn[data-dismiss="alert"]:not(.btn-dismiss-ca) .ls.ls-close,
      .alert-actions .btn[data-dismiss="alert"]:not(.btn-dismiss-ca) .lm.lm-close,
      .alert-actions .close:not(.btn-dismiss-ca) .ls.ls-close,
      .alert-actions .close:not(.btn-dismiss-ca) .lm.lm-close {
        margin-right: 0;
        font-size: var(--font-size-base); }
  .alert-dismissible {
    padding-right: calc(var(--alert-padding-2x) * 2) !important; }
    .alert-dismissible .close {
      position: absolute;
      top: 0;
      right: 0;
      z-index: 2;
      padding: var(--alert-padding-v) var(--alert-padding-h);
      color: inherit; }
  .alert-group {
    margin-bottom: var(--ui-block-spacing-lg); }
    .alert-group .alert {
      margin: 0; }
      .alert-group .alert + .alert {
        margin-top: -1px;
        border-top-left-radius: 0;
        border-top-right-radius: 0; }
      .alert-group .alert:not(:last-child) {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0; }
  .alert .alert-icon + .alert-body,
  .alert .alert-icon + .alert-content {
    padding-left: var(--alert-padding-h); }
  .alert.alert-sm .alert-icon + .alert-body,
  .alert.alert-sm .alert-icon + .alert-content {
    padding-left: 10px; }
  .alert .alert-body + .alert-icon,
  .alert .alert-content + .alert-icon,
  .alert .alert-actions + .alert-icon {
    padding-left: var(--alert-padding-h); }
  .alert.network-issue-alert {
    border-radius: 0; }
    .alert.network-issue-alert .container {
      display: flex;
      align-items: center; }
  .alert.alert-domain-renewals {
    gap: var(--spacing-2x);
    margin-bottom: var(--spacing-4x); }
    .alert.alert-domain-renewals.alert-primary {
      align-items: center !important; }
    @media (max-width: 767.98px) {
      .alert.alert-domain-renewals {
        flex-direction: column; } }
    .alert.alert-domain-renewals::after {
      content: '';
      width: 4px;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      background: var(--brand-primary); }
    .alert.alert-domain-renewals .alert-content {
      gap: var(--spacing-3x); }
      .alert.alert-domain-renewals .alert-content .icon {
        display: flex;
        align-items: center; }
      .alert.alert-domain-renewals .alert-content p {
        color: var(--text-heading-color);
        font-weight: var(--font-weight-medium);
        margin-bottom: var(--spacing-1x); }
      .alert.alert-domain-renewals .alert-content span b {
        color: var(--text-heading-color);
        font-weight: var(--font-weight-medium); }
    .alert.alert-domain-renewals .alert-action .btn {
      border-radius: var(--btn-lg-border-radius); }
    @media (max-width: 767.98px) {
      .alert.alert-domain-renewals .alert-action {
        width: 100%; }
        .alert.alert-domain-renewals .alert-action .btn {
          width: 100%; } }

.alert:not(.alert-primary) .alert-title {
  color: var(--alert-variants-title-color); }

.alert.alert-primary {
  align-items: flex-start !important;
  background: var(--ui-block-bg);
  border: none;
  box-shadow: var(--box-shadow-base);
  padding: var(--alert-padding-v) var(--alert-padding-v);
  border-radius: var(--border-radius-sm);
  color: var(--text-body-color); }
  .alert.alert-primary:not(.alert-default) {
    padding-left: calc(var(--alert-padding-v) + 4px); }
  .alert.alert-primary:hover {
    color: var(--text-body-color); }
  .alert.alert-primary .alert-body ul, .alert.alert-primary .alert-body ol {
    padding-left: var(--spacing-2x); }
  .alert.alert-primary .alert-icon + .alert-body,
  .alert.alert-primary .alert-icon + .alert-content {
    padding-left: var(--spacing-2x); }
  .alert.alert-primary .alert-body + .alert-icon,
  .alert.alert-primary .alert-content + .alert-icon,
  .alert.alert-primary .alert-actions + .alert-icon {
    padding-left: var(--spacing-2x); }
  .alert.alert-primary:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--text-body-color);
    left: 0; }
  .alert.alert-primary.alert-success:before {
    background: var(--brand-success); }
  .alert.alert-primary.alert-success .alert-icon {
    color: var(--text-success-color); }
  .alert.alert-primary.alert-info:before {
    background: var(--brand-info); }
  .alert.alert-primary.alert-info .alert-icon {
    color: var(--brand-info); }
  .alert.alert-primary.alert-warning:before {
    background: var(--brand-warning); }
  .alert.alert-primary.alert-warning .alert-icon {
    color: var(--text-warning-color); }
  .alert.alert-primary.alert-danger:before {
    background: var(--brand-danger); }
  .alert.alert-primary.alert-danger .alert-icon {
    color: var(--text-danger-color); }
  .alert.alert-primary.alert-default:before {
    content: unset; }
  .alert.alert-primary.alert-default .alert-icon {
    color: var(--gray-icons); }

.alert.alert-floating {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  border-radius: 0;
  border: none;
  margin-bottom: 0;
  z-index: 1003;
  overflow: hidden;
  padding-top: 10px;
  padding-bottom: 10px; }
  .alert.alert-floating > .container {
    display: flex; }
  .alert.alert-floating .alert-predefined-icon-container,
  .alert.alert-floating .alert-predefined-illustration-container {
    height: 40px !important; }
  .alert.alert-floating .alert-body .timer-xs .timer-box-num {
    line-height: calc(var(--line-height-h6) - 6px); }
  .alert.alert-floating .alert-body p {
    display: inline; }

.alert span.timer {
  margin-bottom: var(--spacing-2x); }

.alert p span.timer {
  margin-bottom: 0;
  vertical-align: middle; }

.alert {
  position: relative; }

.alert-sm {
  padding: 10px;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm); }
  .alert-sm .alert-icon:before {
    top: 13px; }

.alert-xs {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  padding: 6px 10px; }

.alert-success:not(.alert-primary) {
  background-color: var(--alert-success-bg);
  border-color: var(--alert-success-border);
  color: var(--alert-success-text); }
  .alert-success:not(.alert-primary) .alert-title {
    color: var(--alert-success-text); }
  .alert-success:not(.alert-primary) p {
    color: var(--alert-success-text) !important; }
  .alert-success:not(.alert-primary) hr {
    border-top-color: var(--alert-success-border); }
  .alert-success:not(.alert-primary) .alert-link {
    color: var(--alert-success-text);
    filter: brightness(90%); }
  .alert-success:not(.alert-primary):not(.alert-primary) .btn[data-dismiss="alert"] {
    color: var(--alert-success-text); }
  .alert-success:not(.alert-primary):not(.alert-primary) .btn.btn-icon {
    color: var(--alert-success-text); }
  .alert-success:not(.alert-primary).alert-icon:before {
    content: var(--alert-success-icon); }
  .alert-success:not(.alert-primary):hover {
    color: var(--alert-success-text); }

.alert-info:not(.alert-primary) {
  background-color: var(--alert-info-bg);
  border-color: var(--alert-info-border);
  color: var(--alert-info-text); }
  .alert-info:not(.alert-primary) .alert-title {
    color: var(--alert-info-text); }
  .alert-info:not(.alert-primary) p {
    color: var(--alert-info-text) !important; }
  .alert-info:not(.alert-primary) hr {
    border-top-color: var(--alert-info-border); }
  .alert-info:not(.alert-primary) .alert-link {
    color: var(--alert-info-text);
    filter: brightness(90%); }
  .alert-info:not(.alert-primary):not(.alert-primary) .btn[data-dismiss="alert"] {
    color: var(--alert-info-text); }
  .alert-info:not(.alert-primary):not(.alert-primary) .btn.btn-icon {
    color: var(--alert-info-text); }
  .alert-info:not(.alert-primary).alert-icon:before {
    content: var(--alert-info-icon); }
  .alert-info:not(.alert-primary):hover {
    color: var(--alert-info-text); }

.alert-warning:not(.alert-primary) {
  background-color: var(--alert-warning-bg);
  border-color: var(--alert-warning-border);
  color: var(--alert-warning-text); }
  .alert-warning:not(.alert-primary) .alert-title {
    color: var(--alert-warning-text); }
  .alert-warning:not(.alert-primary) p {
    color: var(--alert-warning-text) !important; }
  .alert-warning:not(.alert-primary) hr {
    border-top-color: var(--alert-warning-border); }
  .alert-warning:not(.alert-primary) .alert-link {
    color: var(--alert-warning-text);
    filter: brightness(90%); }
  .alert-warning:not(.alert-primary):not(.alert-primary) .btn[data-dismiss="alert"] {
    color: var(--alert-warning-text); }
  .alert-warning:not(.alert-primary):not(.alert-primary) .btn.btn-icon {
    color: var(--alert-warning-text); }
  .alert-warning:not(.alert-primary).alert-icon:before {
    content: var(--alert-warning-icon); }
  .alert-warning:not(.alert-primary):hover {
    color: var(--alert-warning-text); }

.alert-danger:not(.alert-primary) {
  background-color: var(--alert-danger-bg);
  border-color: var(--alert-danger-border);
  color: var(--alert-danger-text); }
  .alert-danger:not(.alert-primary) .alert-title {
    color: var(--alert-danger-text); }
  .alert-danger:not(.alert-primary) p {
    color: var(--alert-danger-text) !important; }
  .alert-danger:not(.alert-primary) hr {
    border-top-color: var(--alert-danger-border); }
  .alert-danger:not(.alert-primary) .alert-link {
    color: var(--alert-danger-text);
    filter: brightness(90%); }
  .alert-danger:not(.alert-primary):not(.alert-primary) .btn[data-dismiss="alert"] {
    color: var(--alert-danger-text); }
  .alert-danger:not(.alert-primary):not(.alert-primary) .btn.btn-icon {
    color: var(--alert-danger-text); }
  .alert-danger:not(.alert-primary).alert-icon:before {
    content: var(--alert-danger-icon); }
  .alert-danger:not(.alert-primary):hover {
    color: var(--alert-danger-text); }

.alert-gray:not(.alert-primary) {
  background-color: var(--alert-gray-bg);
  border-color: var(--alert-gray-border);
  color: var(--alert-gray-text); }
  .alert-gray:not(.alert-primary) .alert-title {
    color: var(--alert-gray-text); }
  .alert-gray:not(.alert-primary) p {
    color: var(--alert-gray-text) !important; }
  .alert-gray:not(.alert-primary) hr {
    border-top-color: var(--alert-gray-border); }
  .alert-gray:not(.alert-primary) .alert-link {
    color: var(--alert-gray-text);
    filter: brightness(90%); }
  .alert-gray:not(.alert-primary):not(.alert-primary) .btn[data-dismiss="alert"] {
    color: var(--alert-gray-text); }
  .alert-gray:not(.alert-primary):not(.alert-primary) .btn.btn-icon {
    color: var(--alert-gray-text); }
  .alert-gray:not(.alert-primary).alert-icon:before {
    content: var(--alert-gray-icon); }
  .alert-gray:not(.alert-primary):hover {
    color: var(--alert-gray-text); }

.alert-type-primary:not(.alert-primary) {
  background-color: var(--alert-primary-bg);
  border-color: var(--alert-primary-border);
  color: var(--alert-primary-text); }
  .alert-type-primary:not(.alert-primary) .alert-title {
    color: var(--alert-primary-text); }
  .alert-type-primary:not(.alert-primary) p {
    color: var(--alert-primary-text) !important; }
  .alert-type-primary:not(.alert-primary) hr {
    border-top-color: var(--alert-primary-border); }
  .alert-type-primary:not(.alert-primary) .alert-link {
    color: var(--alert-primary-text);
    filter: brightness(90%); }
  .alert-type-primary:not(.alert-primary):not(.alert-primary) .btn[data-dismiss="alert"] {
    color: var(--alert-primary-text); }
  .alert-type-primary:not(.alert-primary):not(.alert-primary) .btn.btn-icon {
    color: var(--alert-primary-text); }
  .alert-type-primary:not(.alert-primary).alert-icon:before {
    content: var(--alert-primary-icon); }
  .alert-type-primary:not(.alert-primary):hover {
    color: var(--alert-primary-text); }

.alert-secondary:not(.alert-primary) {
  background-color: var(--alert-secondary-bg);
  border-color: var(--alert-secondary-border);
  color: var(--alert-secondary-text); }
  .alert-secondary:not(.alert-primary) .alert-title {
    color: var(--alert-secondary-text); }
  .alert-secondary:not(.alert-primary) p {
    color: var(--alert-secondary-text) !important; }
  .alert-secondary:not(.alert-primary) hr {
    border-top-color: var(--alert-secondary-border); }
  .alert-secondary:not(.alert-primary) .alert-link {
    color: var(--alert-secondary-text);
    filter: brightness(90%); }
  .alert-secondary:not(.alert-primary):not(.alert-primary) .btn[data-dismiss="alert"] {
    color: var(--alert-secondary-text); }
  .alert-secondary:not(.alert-primary):not(.alert-primary) .btn.btn-icon {
    color: var(--alert-secondary-text); }
  .alert-secondary:not(.alert-primary).alert-icon:before {
    content: var(--alert-secondary-icon); }
  .alert-secondary:not(.alert-primary):hover {
    color: var(--alert-secondary-text); }

.lagom-layout-top .alert-default.alert-floating {
  background-color: var(--app-nav-top-bg); }

.lagom-layout-left .alert-default.alert-floating,
.lagom-layout-left-wide .alert-default.alert-floating {
  background-color: var(--main-top-bg); }

.lagom.scroll-down .clientAlert.alert-floating {
  box-shadow: var(--ui-block-overlay-shadow); }

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

.progress {
  display: flex;
  overflow: hidden;
  height: var(--progress-height);
  margin-top: var(--ui-block-spacing-xs);
  line-height: 0;
  font-size: var(--progress-font-size);
  background-color: var(--progress-bg);
  border-radius: var(--progress-border-radius); }

.password-content-group .input-password-strength {
  padding-right: var(--ui-padding-base-h); }

.password-content-group label {
  margin-right: auto; }

.password-content-group .progress {
  height: 6px;
  max-width: var(--progress-width);
  width: var(--progress-width);
  margin-top: 0; }
  .password-content-group .progress + .password-content-text {
    margin-left: var(--spacing-2x); }

.password-content-text {
  display: flex;
  justify-content: flex-end;
  align-items: center; }
  .password-content-text i {
    margin-left: var(--spacing-1x); }

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: var(--progress-bar-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--progress-bar-bg);
  transition: var(--progress-bar-transition); }
  @media (prefers-reduced-motion: reduce) {
    .progress-bar {
      transition: none; } }

.progress-striped .progress-bar,
.progress-bar-striped {
  background-size: 40px 40px; }

.progress-bar-success {
  background-color: var(--brand-success); }

.progress-bar-info {
  background-color: var(--brand-info); }

.progress-bar-warning {
  background-color: var(--brand-warning); }

.progress-bar-danger {
  background-color: var(--brand-danger); }

.media {
  display: flex;
  align-items: flex-start; }

.media-body {
  flex: 1; }

.list-group {
  display: flex;
  flex-direction: column;
  margin-bottom: var(--ui-block-spacing-lg);
  padding-left: 0;
  background: var(--list-group-bg);
  border: var(--list-group-border);
  border-radius: var(--list-group-border-radius);
  box-shadow: var(--list-group-box-shadow); }

.list-group-item-action {
  width: 100%;
  color: var(--list-group-action-color);
  text-align: inherit; }
  .list-group-item-action:hover, .list-group-item-action:focus-visible, .list-group-item-action:focus {
    z-index: 1;
    color: var(--list-group-action-hover-color);
    text-decoration: none;
    background-color: var(--list-group-item-link-hover-bg); }
  .list-group-item-action:active {
    color: var(--list-group-action-active-color);
    background-color: var(--list-group-action-active-bg); }

.list-group-item {
  position: relative;
  display: block;
  color: var(--list-group-color);
  text-decoration: none;
  padding: var(--list-group-item-padding);
  /*background-color: var(--list-group-bg);*/
  border-bottom: 1px solid var(--list-group-item-border-color); }
  .list-group-item:first-child {
    border-top-left-radius: var(--list-group-border-radius);
    border-top-right-radius: var(--list-group-border-radius); }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom: none; }
  .list-group-item.disabled, .list-group-item:disabled {
    color: var(--list-group-item-disabled-color);
    pointer-events: none;
    background-color: var(--list-group-item-disabled-bg); }
  .list-group-item.active {
    z-index: 2;
    color: var(--list-group-active-color);
    background-color: var(--list-group-active-bg);
    border-color: var(--list-group-active-border-color); }
  .list-group-item + .list-group-item {
    border-top-width: 0; }
    .list-group-item + .list-group-item.active {
      margin-top: -var(--list-group-border-width);
      border-top-width: var(--list-group-border-width); }

a.list-group-item,
button.list-group-item,
.list-group-item-link {
  cursor: pointer;
  color: var(--list-group-item-link-color);
  transition: var(--transition-base); }
  a.list-group-item .list-group-item-heading,
  button.list-group-item .list-group-item-heading,
  .list-group-item-link .list-group-item-heading {
    color: var(--list-group-item-link-heading-color); }
  a.list-group-item .list-group-item-text,
  button.list-group-item .list-group-item-text,
  .list-group-item-link .list-group-item-text {
    color: var(--list-group-item-link-text-color); }
  a.list-group-item:hover, a.list-group-item:focus,
  button.list-group-item:hover,
  button.list-group-item:focus,
  .list-group-item-link:hover,
  .list-group-item-link:focus {
    text-decoration: none;
    color: var(--list-group-item-link-hover-color);
    background-color: var(--list-group-item-link-hover-bg); }

button.list-group-item {
  width: 100%;
  text-align: left; }

.list-group-item-heading {
  margin-bottom: 0;
  color: var(--list-group-item-heading-color);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg); }
  .list-group-item-heading + .list-group-item-text {
    margin-top: var(--ui-block-spacing-xs); }

.list-group-item-text {
  margin-bottom: 0;
  color: var(--list-group-item-text-color); }

.list-group-item-footer {
  margin-top: var(--ui-padding-base-h);
  display: flex;
  align-items: center;
  align-content: space-between; }
  .list-group-item-footer .btn + .btn {
    margin-left: var(--spacing-1x); }

.list-group-item-icon {
  color: var(--list-group-item-icon-color);
  line-height: var(--line-height-base) !important; }
  .list-group-item-icon + .list-group-item-body {
    margin-left: var(--ui-padding-base-h); }

.list-group-item.has-icon {
  display: flex; }

.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
  background-color: var(--list-group-item-link-disabled-bg);
  color: var(--list-group-item-link-disabled-color);
  cursor: var(--cursor-disabled); }
  .list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
    color: inherit; }
  .list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
    color: var(--list-group--itemdisabled-text-color); }

.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: var(--list-group-item-link-active-color);
  background-color: var(--list-group-item-link-active-bg);
  border-color: var(--list-group-item-link-active-border); }
  .list-group-item.active .list-group-item-heading,
  .list-group-item.active .list-group-item-heading > small,
  .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
  .list-group-item.active:hover .list-group-item-heading > small,
  .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
  .list-group-item.active:focus .list-group-item-heading > small,
  .list-group-item.active:focus .list-group-item-heading > .small {
    color: inherit; }
  .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
    color: var(--list-group-active-text-color); }

.list-group-lg .list-group-item {
  padding: var(--list-group-item-lg-padding); }
  .list-group-lg .list-group-item-heading {
    font-weight: var(--font-weight-h4);
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4); }
    .list-group-lg .list-group-item-heading + .list-group-item-text {
      margin-top: var(--ui-block-spacing-xs); }
  .list-group-lg .list-group-item-footer {
    margin-top: var(--ui-padding-lg-h); }

.list-group-flush {
  border-radius: 0; }
  .list-group-flush > .list-group-item {
    border-width: 0 0 var(--list-group-border-width); }
    .list-group-flush > .list-group-item:last-child {
      border-bottom-width: 0; }

.list-group-sm .list-group-item-heading {
  font-size: var(--font-size-base); }
  .list-group-sm .list-group-item-heading + .list-group-item-text {
    margin-top: var(--ui-block-spacing-xs); }

.list-group-xs .list-group-item-heading {
  font-size: var(--font-size-h8);
  line-height: var(--line-height-h8); }
  .list-group-xs .list-group-item-heading + .list-group-item-text {
    margin-top: var(--ui-block-spacing-xs);
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs); }

.list-group-xxs.has-scroll {
  max-height: 224px; }

.list-group-xxs .list-group-item {
  padding: var(--ui-block-padding-sm-v) var(--ui-block-padding-sm); }
  .list-group-xxs .list-group-item-heading {
    font-size: var(--font-size-h9);
    line-height: var(--line-height-h9); }
    .list-group-xxs .list-group-item-heading + .list-group-item-text {
      margin-top: var(--ui-block-spacing-xxs);
      font-size: var(--font-size-xxs);
      line-height: var(--line-height-xxs); }

.limited-list-group .list-group-item:nth-child(n+4) {
  display: none; }

.list-group-item-success {
  color: var(--brand-success);
  background-color: var(--brand-success-lighter-4); }
  .list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus-visible, .list-group-item-success.list-group-item-action:focus {
    color: var(--brand-success);
    background-color: var(--brand-success-lighter-3); }
  .list-group-item-success.list-group-item-action.active {
    color: #fff;
    background-color: var(--brand-success);
    border-color: var(--brand-success); }

.list-group-item-info {
  color: var(--brand-info);
  background-color: var(--brand-info-lighter-3); }
  .list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus-visible, .list-group-item-info.list-group-item-action:focus {
    color: var(--brand-info);
    background-color: var(--brand-info-lighter-2); }
  .list-group-item-info.list-group-item-action.active {
    color: #fff;
    background-color: var(--brand-info);
    border-color: var(--brand-info); }

.list-group-item-warning {
  color: var(--brand-warning);
  background-color: var(--brand-warning-lighter-4); }
  .list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus-visible, .list-group-item-warning.list-group-item-action:focus {
    color: var(--brand-warning);
    background-color: var(--brand-warning-lighter-3); }
  .list-group-item-warning.list-group-item-action.active {
    color: #fff;
    background-color: var(--brand-warning);
    border-color: var(--brand-warning); }

.list-group-item-danger {
  color: var(--brand-danger);
  background-color: var(--brand-danger-lighter-4); }
  .list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus-visible, .list-group-item-danger.list-group-item-action:focus {
    color: var(--brand-danger);
    background-color: var(--brand-danger-lighter-3); }
  .list-group-item-danger.list-group-item-action.active {
    color: #fff;
    background-color: var(--brand-danger);
    border-color: var(--brand-danger); }

.panel {
  margin-bottom: var(--ui-block-spacing-lg);
  background: var(--panel-bg);
  border: var(--panel-border);
  border-radius: var(--panel-border-radius);
  box-shadow: var(--panel-box-shadow); }
  .panel .panel,
  .panel .table-container {
    box-shadow: none;
    border: 1px solid var(--panel-default-border); }

.panel-body {
  padding: var(--panel-body-padding); }

.panel-heading {
  display: flex;
  align-items: center;
  min-height: var(--ui-block-header-height);
  padding: var(--panel-heading-padding);
  border-bottom: 1px solid transparent;
  border-top-left-radius: var(--panel-border-radius);
  border-top-right-radius: var(--panel-border-radius); }
  .panel-heading + .panel-footer {
    margin-top: -1px; }
  .panel-heading > .dropdown .dropdown-toggle {
    color: inherit; }

.panel-title {
  flex: 1;
  margin-top: 0;
  margin-bottom: 0;
  color: inherit;
  color: var(--panel-title-color);
  font-size: var(--panel-title-font-size);
  font-weight: var(--panel-title-font-weight);
  line-height: var(--panel-title-line-height); }
  .panel-title > a,
  .panel-title > small,
  .panel-title > .small,
  .panel-title > small > a,
  .panel-title > .small > a {
    color: inherit; }

.panel-footer {
  padding: var(--panel-footer-padding);
  background: var(--panel-footer-bg);
  border-top: 1px solid var(--panel-border-divider-color);
  border-bottom-right-radius: var(--panel-border-radius);
  border-bottom-left-radius: var(--panel-border-radius); }

.panel:not(.panel-sidebar) > .list-group,
.panel:not(.panel-sidebar) > .panel-collapse > .list-group {
  box-shadow: none;
  margin-bottom: 0; }
  .panel:not(.panel-sidebar) > .list-group:first-child .list-group-item:first-child,
  .panel:not(.panel-sidebar) > .panel-collapse > .list-group:first-child .list-group-item:first-child {
    border-top: 0;
    border-top-left-radius: var(--panel-border-radius)-1;
    border-top-right-radius: var(--panel-border-radius)-1; }
  .panel:not(.panel-sidebar) > .list-group:last-child .list-group-item:last-child,
  .panel:not(.panel-sidebar) > .panel-collapse > .list-group:last-child .list-group-item:last-child {
    border-bottom: 0;
    border-bottom-right-radius: var(--panel-border-radius)-1;
    border-bottom-left-radius: var(--panel-border-radius)-1; }

.panel:not(.panel-sidebar) > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0; }
  .panel > .table caption,
  .panel > .table-responsive > .table caption,
  .panel > .panel-collapse > .table caption {
    padding-left: var(--panel-body-padding);
    padding-right: var(--panel-body-padding); }

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-left-radius: var(--panel-border-radius)-1;
  border-top-right-radius: var(--panel-border-radius)-1; }
  .panel > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table:first-child > tbody:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
    border-top-left-radius: var(--panel-border-radius)-1;
    border-top-right-radius: var(--panel-border-radius)-1; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
      border-top-left-radius: var(--panel-border-radius)-1; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
      border-top-right-radius: var(--panel-border-radius)-1; }

.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: var(--panel-border-radius)-1;
  border-bottom-left-radius: var(--panel-border-radius)-1; }
  .panel > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table:last-child > tfoot:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
    border-bottom-left-radius: var(--panel-border-radius)-1;
    border-bottom-right-radius: var(--panel-border-radius)-1; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
      border-bottom-left-radius: var(--panel-border-radius)-1; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
      border-bottom-right-radius: var(--panel-border-radius)-1; }

.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid var(--table-border-color); }

.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0; }

.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0; }
  .panel > .table-bordered > thead > tr > th:first-child,
  .panel > .table-bordered > thead > tr > td:first-child,
  .panel > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-bordered > tfoot > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0; }
  .panel > .table-bordered > thead > tr > th:last-child,
  .panel > .table-bordered > thead > tr > td:last-child,
  .panel > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-bordered > tfoot > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0; }
  .panel > .table-bordered > thead > tr:first-child > td,
  .panel > .table-bordered > thead > tr:first-child > th,
  .panel > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-bordered > tbody > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
    border-bottom: 0; }
  .panel > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-bordered > tfoot > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
    border-bottom: 0; }

.panel > .table-responsive {
  border: 0;
  margin-bottom: 0; }

.panel-group {
  margin-bottom: var(--line-height-base); }
  .panel-group .panel {
    margin-bottom: 0;
    border-radius: var(--panel-border-radius);
    box-shadow: none; }
    .panel-group .panel + .panel:not(.panel-check) {
      margin-top: 5px; }
  .panel-group .panel-heading {
    border-bottom: 0; }
    .panel-group .panel-heading + .panel-collapse > .panel-body,
    .panel-group .panel-heading + .panel-collapse > .list-group {
      border-top: 1px solid var(--panel-border-divider-color); }
  .panel-group .panel-footer {
    border-top: 0; }
    .panel-group .panel-footer + .panel-collapse .panel-body {
      border-bottom: 1px solid var(--panel-border-divider-color); }

/* IE 11 */
.panel-form .panel-footer {
  overflow: auto;
  clear: both; }
  .panel-form .panel-footer .btn {
    float: left; }

.panel-default {
  background: var(--panel-default-bg);
  border-color: var(--panel-default-border); }
  .panel-default > .panel-heading {
    color: var(--panel-default-text);
    background-color: var(--panel-default-heading-bg);
    border-color: var(--panel-default-border); }
    .panel-default > .panel-heading > .panel-title {
      color: var(--panel-default-text); }
    .panel-default > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: var(--panel-default-border); }
    .panel-default > .panel-heading .badge {
      color: var(--panel-default-heading-bg);
      background-color: var(--panel-default-text); }
  .panel-default > .panel-body {
    color: var(--panel-default-text); }
  .panel-default > .panel-footer {
    border-color: var(--panel-default-border); }
    .panel-default > .panel-footer + .panel-collapse > .panel-body {
      border-bottom-color: var(--panel-default-border); }

.panel-success {
  background: var(--panel-success-bg);
  border-color: var(--panel-success-border); }
  .panel-success > .panel-heading {
    color: var(--panel-success-text);
    background-color: var(--panel-success-heading-bg);
    border-color: var(--panel-success-border); }
    .panel-success > .panel-heading > .panel-title {
      color: var(--panel-success-text); }
    .panel-success > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: var(--panel-success-border); }
    .panel-success > .panel-heading .badge {
      color: var(--panel-success-heading-bg);
      background-color: var(--panel-success-text); }
  .panel-success > .panel-body {
    color: var(--panel-success-text); }
  .panel-success > .panel-footer {
    border-color: var(--panel-success-border); }
    .panel-success > .panel-footer + .panel-collapse > .panel-body {
      border-bottom-color: var(--panel-success-border); }

.panel-info {
  background: var(--panel-info-bg);
  border-color: var(--panel-info-border); }
  .panel-info > .panel-heading {
    color: var(--panel-info-text);
    background-color: var(--panel-info-heading-bg);
    border-color: var(--panel-info-border); }
    .panel-info > .panel-heading > .panel-title {
      color: var(--panel-info-text); }
    .panel-info > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: var(--panel-info-border); }
    .panel-info > .panel-heading .badge {
      color: var(--panel-info-heading-bg);
      background-color: var(--panel-info-text); }
  .panel-info > .panel-body {
    color: var(--panel-info-text); }
  .panel-info > .panel-footer {
    border-color: var(--panel-info-border); }
    .panel-info > .panel-footer + .panel-collapse > .panel-body {
      border-bottom-color: var(--panel-info-border); }

.panel-warning {
  background: var(--panel-warning-bg);
  border-color: var(--panel-warning-border); }
  .panel-warning > .panel-heading {
    color: var(--panel-warning-text);
    background-color: var(--panel-warning-heading-bg);
    border-color: var(--panel-warning-border); }
    .panel-warning > .panel-heading > .panel-title {
      color: var(--panel-warning-text); }
    .panel-warning > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: var(--panel-warning-border); }
    .panel-warning > .panel-heading .badge {
      color: var(--panel-warning-heading-bg);
      background-color: var(--panel-warning-text); }
  .panel-warning > .panel-body {
    color: var(--panel-warning-text); }
  .panel-warning > .panel-footer {
    border-color: var(--panel-warning-border); }
    .panel-warning > .panel-footer + .panel-collapse > .panel-body {
      border-bottom-color: var(--panel-warning-border); }

.panel-danger {
  background: var(--panel-danger-bg);
  border-color: var(--panel-danger-border); }
  .panel-danger > .panel-heading {
    color: var(--panel-danger-text);
    background-color: var(--panel-danger-heading-bg);
    border-color: var(--panel-danger-border); }
    .panel-danger > .panel-heading > .panel-title {
      color: var(--panel-danger-text); }
    .panel-danger > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: var(--panel-danger-border); }
    .panel-danger > .panel-heading .badge {
      color: var(--panel-danger-heading-bg);
      background-color: var(--panel-danger-text); }
  .panel-danger > .panel-body {
    color: var(--panel-danger-text); }
  .panel-danger > .panel-footer {
    border-color: var(--panel-danger-border); }
    .panel-danger > .panel-footer + .panel-collapse > .panel-body {
      border-bottom-color: var(--panel-danger-border); }

.well {
  min-height: 20px;
  margin-bottom: var(--ui-block-spacing-lg);
  padding: var(--ui-block-padding-base);
  background-color: var(--well-bg);
  border: 1px solid var(--well-border);
  border-radius: var(--ui-block-border-radius);
  box-shadow: var(--ui-block-shadow); }
  .well blockquote {
    border-color: #ddd;
    border-color: rgba(0, 0, 0, 0.15); }

@media (min-width: 768px) {
  .well-lg {
    padding: 48px; } }

.well-sm {
  padding: var(--spacing-1x); }

.close {
  color: var(--close-color);
  outline: none;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: -2px -4px -2px 0;
  transition: var(--transition-base);
  font-size: var(--close-font-size);
  font-weight: var(--close-font-weight);
  text-shadow: var(--close-text-shadow);
  position: absolute;
  height: 28px;
  width: 28px;
  right: 12px; }
  .close:hover {
    color: var(--close-color-hover);
    text-decoration: none;
    cursor: pointer; }
  .close:focus-visible {
    color: var(--close-color-hover); }

button.close {
  padding: 4px;
  cursor: pointer;
  background: transparent;
  background-color: transparent;
  border: 0;
  -webkit-appearance: none; }

a.close.disabled {
  pointer-events: none; }

.modal-open {
  overflow: hidden; }
  .modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto; }

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  z-index: var(--zindex-modal);
  -webkit-overflow-scrolling: touch;
  outline: 0;
  padding: 0 var(--spacing-2x) !important; }
  .modal.fade .modal-dialog {
    transform: var(--modal-fade-transform);
    transition: var(--modal-transition); }
  .modal.show .modal-dialog {
    transform: scale(1); }

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto; }
  .modal-open .modal.fade.show, .modal-open .modal.show {
    visibility: visible;
    opacity: 1; }

.modal-dialog {
  position: relative;
  width: auto;
  pointer-events: none;
  display: flex;
  align-items: center;
  min-height: var(--modal-dialog-centered-min-height); }
  .modal.show .modal-dialog {
    transform: var(--modal-show-transform); }
  .modal.modal-static .modal-dialog {
    transform: var(--modal-scale-transform); }
  .modal-dialog::before {
    display: block;
    height: var(--modal-dialog-centered-before-height);
    height: min-content;
    content: ""; }
  @media (min-width: 480px) {
    .modal-dialog {
      min-height: var(--modal-dialog-centered-min-height-sm); }
      .modal-dialog::before {
        height: var(--modal-dialog-centered-before-height-sm);
        height: min-content; } }

.modal-dialog-scrollable {
  display: flex;
  max-height: var(--modal-dialog-max-height); }
  .modal-dialog-scrollable .modal-content {
    max-height: var(--modal-content-max-height);
    overflow: hidden; }
  .modal-dialog-scrollable .modal-header,
  .modal-dialog-scrollable .modal-footer {
    flex-shrink: 0; }
  .modal-dialog-scrollable .modal-body {
    overflow-y: auto; }

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: var(--modal-dialog-centered-min-height); }
  .modal-dialog-centered::before {
    display: block;
    height: var(--modal-dialog-centered-before-height);
    height: min-content;
    content: ""; }
  .modal-dialog-centered.modal-dialog-scrollable {
    flex-direction: column;
    justify-content: center;
    height: 100%; }
    .modal-dialog-centered.modal-dialog-scrollable .modal-content {
      max-height: none; }
    .modal-dialog-centered.modal-dialog-scrollable::before {
      content: none; }

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--modal-content-color);
  pointer-events: auto;
  background: var(--modal-content-bg);
  background-clip: padding-box;
  border-radius: var(--modal-content-border-radius);
  box-shadow: var(--modal-content-box-shadow);
  outline: 0;
  margin: 30px auto; }
  .modal-content .modal-body > *:last-child {
    margin-bottom: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--zindex-modal-background);
  width: 100vw;
  height: 100vh;
  background: var(--modal-backdrop-bg);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }
  .modal-backdrop.fade {
    opacity: 0; }
  .modal-backdrop.show {
    opacity: 1; }

.modal-header {
  display: flex;
  align-items: center;
  padding: var(--modal-title-padding);
  border-bottom: 1px solid var(--modal-header-border-color);
  background: var(--modal-header-background-color);
  border-radius: var(--modal-content-border-radius) var(--modal-content-border-radius) 0 0; }
  .modal-header .close {
    padding: var(--modal-btn-close-padding); }
    .modal-header .close > span {
      padding-bottom: 4px; }
    .modal-header .close i {
      font-size: 14px !important; }

.modal-title {
  margin: 0;
  font-size: var(--modal-title-font-size);
  font-weight: var(--modal-title-font-weight);
  line-height: var(--modal-title-line-height); }

.modal-body {
  position: relative;
  padding: var(--modal-inner-padding);
  color: var(--text-body-color); }
  .modal-body strong {
    color: var(--text-heading-color); }

.modal.modal-default .modal-title:before, .modal.modal-primary .modal-title:before, .modal.modal-secondary .modal-title:before, .modal.modal-gray .modal-title:before, .modal.modal-info .modal-title:before, .modal.modal-success .modal-title:before, .modal.modal-danger .modal-title:before, .modal.modal-warning .modal-title:before {
  font-family: 'lagom-medium-icons' !important;
  margin-right: var(--spacing-2x);
  font-size: 18px; }

.modal.modal-default .modal-title:before, .modal.modal-gray .modal-title:before {
  content: "\e94c";
  color: var(--brand-primary); }

.modal.modal-primary .modal-title:before, .modal.modal-secondary .modal-title:before {
  content: "\e94c";
  color: var(--text-secondary-body-color); }

.modal.modal-info .modal-title:before {
  content: "\e94c";
  color: var(--text-primary-color); }

.modal.modal-success .modal-title:before {
  content: "\e903";
  color: var(--text-success-color); }

.modal.modal-danger .modal-title:before {
  content: "\e94c";
  color: var(--text-danger-color);
  transform: rotateX(180deg);
  display: inline-block; }

.modal.modal-danger-remove .modal-title {
  display: flex;
  align-items: center;
  font-weight: var(--font-weight-light) !important; }
  .modal.modal-danger-remove .modal-title:before {
    content: "\e938";
    color: var(--text-danger-color);
    display: inline-block; }

.modal.modal-danger-remove .checkbox-styled {
  margin-right: var(--spacing-1x); }

.modal.modal-warning .modal-title:before {
  content: "\e94c";
  color: var(--text-warning-color);
  transform: rotateX(180deg);
  display: inline-block; }

.modal.modal .modal-header-no-icon .modal-title:before {
  content: unset; }

.modal.modal-type-primary .modal-header, .modal.modal-secondary .modal-header {
  border-bottom: 1px solid var(--ui-block-secondary-divider-border-color); }

.modal.modal-type-primary .modal-title, .modal.modal-secondary .modal-title {
  color: var(--text-secondary-heading-color); }

.modal.modal-type-primary .modal-body, .modal.modal-secondary .modal-body {
  color: var(--text-secondary-body-color); }

.modal.modal-type-primary .modal-footer .checkbox > label span, .modal.modal-secondary .modal-footer .checkbox > label span {
  color: var(--text-secondary-body-color); }

.modal.modal-type-primary .modal-footer .checkbox-styled.checked, .modal.modal-secondary .modal-footer .checkbox-styled.checked {
  border-color: rgba(255, 255, 255, 0.32);
  background: rgba(255, 255, 255, 0.32); }

.modal.modal-type-primary .modal-footer .checkbox-styled:not(.checked), .modal.modal-secondary .modal-footer .checkbox-styled:not(.checked) {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.32); }
  .modal.modal-type-primary .modal-footer .checkbox-styled:not(.checked).hover, .modal.modal-secondary .modal-footer .checkbox-styled:not(.checked).hover {
    border-color: rgba(255, 255, 255, 0.56); }

.modal.modal-type-primary .close, .modal.modal-secondary .close {
  color: var(--text-secondary-body-color);
  opacity: 0.8; }
  .modal.modal-type-primary .close:hover, .modal.modal-secondary .close:hover {
    opacity: 1; }

.modal.modal-type-primary .modal-content {
  background: var(--brand-primary); }

.modal.modal-secondary .modal-content {
  background: var(--brand-secondary); }

.modal.modal-gray .modal-content {
  background: var(--gray-faded); }

.recommendations-complete .product-added-panel,
.modal-recomendations .modal-body .product-added-panel {
  padding: var(--spacing-3x);
  border: 1px solid var(--brand-success);
  border-radius: var(--border-radius-base);
  margin-bottom: var(--spacing-3x); }

.recommendations-complete .product-added-body,
.modal-recomendations .modal-body .product-added-body {
  display: flex;
  justify-content: flex-start;
  align-items: center; }

.recommendations-complete .product-added-icon,
.modal-recomendations .modal-body .product-added-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  width: 56px;
  background-color: var(--brand-success-lighter-4);
  color: var(--text-success-color);
  border-radius: 50%;
  margin-right: var(--spacing-2x); }
  .recommendations-complete .product-added-icon i,
  .modal-recomendations .modal-body .product-added-icon i {
    font-weight: var(--font-weight-bold); }

.recommendations-complete .product-added-info .product-name,
.recommendations-complete .product-added-info .product-group,
.modal-recomendations .modal-body .product-added-info .product-name,
.modal-recomendations .modal-body .product-added-info .product-group {
  font-size: var(--font-size-h6);
  font-weight: var(--font-weight-h6);
  line-height: var(--line-height-h6);
  color: var(--text-heading-color); }

.recommendations-complete .product-added-info .product-price,
.modal-recomendations .modal-body .product-added-info .product-price {
  color: var(--text-heading-color);
  font-weight: var(--font-weight-light);
  line-height: var(--line-height-md);
  font-size: var(--font-size-md);
  margin-top: var(--spacing-1x); }

.recommendations-complete .product-recommendations .recommendation-title,
.modal-recomendations .modal-body .product-recommendations .recommendation-title {
  font-weight: var(--font-weight-light);
  margin-bottom: var(--spacing-2x); }

.recommendations-complete .product-recommendations .product-recommendation,
.modal-recomendations .modal-body .product-recommendations .product-recommendation {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--gray-lighter-4);
  border-color: var(--gray-lighter-4) !important;
  border-radius: var(--border-radius-base);
  padding: var(--spacing-3x);
  padding-left: calc(var(--spacing-3x) + 4px);
  padding-top: var(--spacing-2x); }
  .recommendations-complete .product-recommendations .product-recommendation:not(:last-child),
  .modal-recomendations .modal-body .product-recommendations .product-recommendation:not(:last-child) {
    margin-bottom: var(--spacing-2x); }
  .recommendations-complete .product-recommendations .product-recommendation-title,
  .modal-recomendations .modal-body .product-recommendations .product-recommendation-title {
    margin-bottom: var(--spacing-1x);
    white-space: break-spaces; }
  .recommendations-complete .product-recommendations .product-recommendation-desc,
  .modal-recomendations .modal-body .product-recommendations .product-recommendation-desc {
    margin-bottom: 0; }
  .recommendations-complete .product-recommendations .product-recommendation .el-left,
  .modal-recomendations .modal-body .product-recommendations .product-recommendation .el-left {
    content: '';
    position: absolute;
    width: 4px;
    top: 0;
    left: 0;
    bottom: 0;
    background-color: #9abb3a; }
  .recommendations-complete .product-recommendations .product-recommendation-footer,
  .modal-recomendations .modal-body .product-recommendations .product-recommendation-footer {
    margin-top: var(--spacing-2x);
    display: flex;
    justify-content: space-between;
    align-items: flex-end; }
  .recommendations-complete .product-recommendations .product-recommendation-actions,
  .modal-recomendations .modal-body .product-recommendations .product-recommendation-actions {
    order: 1; }
    .recommendations-complete .product-recommendations .product-recommendation-actions .btn-add,
    .modal-recomendations .modal-body .product-recommendations .product-recommendation-actions .btn-add {
      color: #fff; }
  .recommendations-complete .product-recommendations .product-recommendation-price,
  .modal-recomendations .modal-body .product-recommendations .product-recommendation-price {
    order: 2;
    font-weight: var(--font-weight-light); }
    .recommendations-complete .product-recommendations .product-recommendation-price h4,
    .modal-recomendations .modal-body .product-recommendations .product-recommendation-price h4 {
      margin-bottom: 0; }

#modalGeneratePassword {
  align-items: center;
  justify-content: center; }
  #modalGeneratePassword.show {
    display: flex !important; }

.page-user-security .modal .form-horizontal .form-group [class*=col-sm] {
  max-width: 100%;
  flex: 100%;
  padding: 0; }

@media (max-width: 991.98px) {
  #modalGeneratePassword .copy-to-clipboard {
    margin-left: 12px; } }

@media (max-width: 479.98px) {
  .modal-recomendations .modal-dialog {
    width: 100%; }
    .modal-recomendations .modal-dialog .product-recommendations {
      width: 100%; }
  .modal-recomendations .product-added-icon {
    min-width: 56px; } }

@media (min-width: 768px) {
  #modalGeneratePassword .copy-to-clipboard {
    margin-top: 12px; }
  #modalGeneratePassword .modal-dialog {
    width: var(--modal-md); }
  #modalGeneratePassword label {
    text-align: right;
    margin-bottom: 0; } }

@media (max-width: 399px) {
  #modalGeneratePassword .col-md-8.offset-md-4 {
    display: flex;
    flex-direction: column; }
    #modalGeneratePassword .col-md-8.offset-md-4 .copy-to-clipboard {
      margin-top: 8px;
      margin-left: 0; }
  #modalGeneratePassword .modal-footer {
    display: flex;
    flex-direction: column;
    margin-top: 8px; }
    #modalGeneratePassword .modal-footer .btn {
      margin: 0; }
      #modalGeneratePassword .modal-footer .btn + .btn {
        margin-top: 8px; } }

.modal-footer {
  padding: var(--modal-footer-padding);
  border-bottom-right-radius: var(--modal-content-inner-border-radius);
  border-bottom-left-radius: var(--modal-content-inner-border-radius); }
  .modal-footer::after {
    display: block;
    clear: both;
    content: ""; }
  .modal-footer > .btn {
    margin-right: var(--modal-footer-margin-between); }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 480px) {
  .modal-dialog {
    width: var(--modal-md);
    margin: var(--modal-dialog-margin-y-sm-up) auto; }
  .modal-dialog-scrollable {
    max-height: var(--modal-dialog-scrollable-max-height-sm); }
    .modal-dialog-scrollable .modal-content {
      max-height: var(--modal-content-min-height-sm); }
  .modal-dialog-centered {
    min-height: var(--modal-dialog-centered-min-height-sm); }
    .modal-dialog-centered::before {
      height: var(--modal-dialog-centered-before-height-sm);
      height: min-content; }
  .modal-sm .modal-dialog {
    width: var(--modal-sm); } }

@media (min-width: 992px) {
  .modal-lg .modal-dialog {
    width: var(--modal-lg); } }

.fade.show {
  visibility: visible; }

@media (min-width: 1320px) {
  .modal-xl .modal-dialog {
    width: var(--modal-xl); } }

#mg-wrapper .modal.show:not(#modal-ip),
.mg-wrapper .modal.show:not(#modal-ip) {
  opacity: 1;
  visibility: visible; }

.modal.clientAlertModal .modal-title {
  display: flex;
  padding-right: var(--spacing-4x); }

.tooltip {
  pointer-events: none;
  position: absolute;
  z-index: var(--zindex-tooltip);
  display: block;
  word-wrap: break-word;
  font-family: var(--font-family-base);
  font-style: normal;
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-base);
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: var(--tooltip-font-size);
  line-height: var(--line-height-sm);
  transition: var(--show-animation); }
  .tooltip.show {
    opacity: var(--tooltip-opacity); }
  .tooltip .arrow {
    position: absolute;
    display: block;
    width: var(--tooltip-arrow-width);
    height: var(--tooltip-arrow-height); }
    .tooltip .arrow::before {
      position: absolute;
      content: "";
      border-color: transparent;
      border-style: solid; }

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: var(--tooltip-arrow-height) 0; }
  .bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
    bottom: 0; }
    .bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
      top: 0;
      border-width: var(--tooltip-arrow-height) var(--tooltip-arrow-width)/2 0;
      border-top-color: var(--tooltip-arrow-color); }

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 var(--tooltip-arrow-height); }
  .bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
    left: 0;
    width: var(--tooltip-arrow-height);
    height: var(--tooltip-arrow-width); }
    .bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
      right: 0;
      border-width: var(--tooltip-arrow-width)/2 var(--tooltip-arrow-height) var(--tooltip-arrow-width)/2 0;
      border-right-color: var(--tooltip-arrow-color); }

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: var(--tooltip-arrow-height) 0; }
  .bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
    top: 0; }
    .bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
      bottom: 0;
      border-width: 0 var(--tooltip-arrow-width)/2 var(--tooltip-arrow-height);
      border-bottom-color: var(--tooltip-arrow-color); }

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 var(--tooltip-arrow-height); }
  .bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
    right: 0;
    width: var(--tooltip-arrow-height);
    height: var(--tooltip-arrow-width); }
    .bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
      left: 0;
      border-width: var(--tooltip-arrow-width)/2 0 var(--tooltip-arrow-width)/2 var(--tooltip-arrow-height);
      border-left-color: var(--tooltip-arrow-color); }

.tooltip-inner {
  max-width: var(--tooltip-max-width);
  color: var(--tooltip-color);
  text-align: center;
  background-color: var(--tooltip-bg);
  border-radius: var(--border-radius-sm);
  box-shadow: var(--tooltip-box-shadow);
  font-size: var(--font-size-xs);
  line-height: var(--line-height-xs);
  font-weight: var(--font-weight-base);
  padding: 10px 12px; }

/* RTL */
@media (max-width: 479.98px) {
  html[dir="rtl"] .page-domainregister .tooltip {
    left: -290px !important; } }

.lagom-futuristic .tooltip {
  will-change: unset !important; }
  .lagom-futuristic .tooltip .arrow::before {
    border-bottom-color: transparent;
    color: transparent; }
  .lagom-futuristic .tooltip .tooltip-inner {
    background: var(--dropdown-bg);
    color: #fff;
    position: relative;
    padding: 6px 10px; }
    .lagom-futuristic .tooltip .tooltip-inner::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
      z-index: -1;
      opacity: 0.8; }

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: var(--zindex-popover);
  display: block;
  max-width: var(--popover-max-width);
  text-align: center;
  font-size: var(--font-size-base);
  word-wrap: break-word;
  background: var(--popover-bg);
  background-clip: padding-box;
  border: 1px solid var(--popover-border-color);
  border-radius: var(--border-radius-base);
  box-shadow: var(--box-shadow-lg);
  transition: var(--show-animation); }
  .popover .arrow {
    position: absolute;
    display: block;
    width: var(--popover-arrow-height);
    height: var(--popover-arrow-width);
    margin: 0 var(--popover-border-radius); }
    .popover .arrow::before, .popover .arrow::after {
      position: absolute;
      display: block;
      content: "";
      border-color: transparent;
      border-style: solid; }
  .popover.top {
    opacity: 0;
    visibility: hidden;
    transform: translateY(16px); }
    .popover.top.in {
      opacity: 1;
      visibility: visible;
      transform: translateY(0); }
  .popover.right {
    margin-left: -26px; }
  .popover.bottom {
    margin-top: -16px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-16px); }
    .popover.bottom.in {
      opacity: 1;
      visibility: visible;
      transform: translateY(0); }
  .popover.left {
    margin-left: -26px; }

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: var(--popover-arrow-height); }
  .bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
    bottom: calc(var(--popover-arrow-height) - var(--popover-arrow-width)); }
    .bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
      bottom: 0;
      border-width: var(--popover-arrow-height) var(--popover-arrow-width)/2 0;
      border-top-color: var(--popover-arrow-outer-color); }
    .bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
      bottom: var(--popover-arrow-width);
      border-width: var(--popover-arrow-height) var(--popover-arrow-width)/2 0;
      border-top-color: var(--popover-arrow-color); }

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: var(--popover-arrow-height); }
  .bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
    left: -20px;
    width: var(--popover-arrow-height);
    height: var(--popover-arrow-width);
    margin: var(--popover-border-radius) 0; }
    .bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
      left: 0;
      border-width: var(--popover-arrow-width) var(--popover-arrow-height) var(--popover-arrow-width) 0;
      border-right-color: var(--popover-arrow-outer-color); }
    .bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
      left: var(--popover-border-width);
      border-width: var(--popover-arrow-width) var(--popover-arrow-height) var(--popover-arrow-width) 0;
      border-right-color: var(--popover-arrow-outer-color); }

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: var(--popover-arrow-height); }
  .bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
    top: calc(var(--popover-arrow-height) - var(--popover-arrow-width)); }
    .bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
      top: 0;
      border-width: 0 var(--popover-arrow-width)/2 var(--popover-arrow-height) var(--popover-arrow-width)/2;
      border-bottom-color: var(--popover-arrow-outer-color); }
    .bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
      top: var(--popover-border-width);
      border-width: 0 var(--popover-arrow-width)/2 var(--popover-arrow-height) var(--popover-arrow-width)/2;
      border-bottom-color: var(--popover-arrow-color); }
  .bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: var(--popover-arrow-width);
    margin-left: -var(--popover-arrow-width)/2;
    content: "";
    border-bottom: var(--popover-arrow-width) solid var(--popover-header-bg); }

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: var(--popover-arrow-height); }
  .bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
    right: calc(var(--popover-arrow-height) - var(--popover-arrow-width));
    width: var(--popover-arrow-height);
    height: var(--popover-arrow-width);
    margin: var(--popover-border-radius) 0; }
    .bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
      right: 0;
      border-width: var(--popover-arrow-width)/2 0 var(--popover-arrow-width)/2 var(--popover-arrow-height);
      border-left-color: var(--popover-arrow-outer-color); }
    .bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
      right: var(--popover-arrow-width);
      border-width: var(--popover-arrow-width)/2 0 var(--popover-arrow-width)/2 var(--popover-arrow-height);
      border-left-color: var(--popover-arrow-color); }

.popover-header {
  padding: var(--popover-header-padding-y) var(--popover-header-padding-x);
  margin-bottom: 0;
  font-size: var(--font-size-base);
  color: var(--popover-header-color);
  background-color: var(--popover-header-bg);
  border-bottom: var(--popover-border-width) solid var(--popover-header-border-bottom-color);
  border-top-left-radius: var(--popover-inner-border-radius);
  border-top-right-radius: var(--popover-inner-border-radius); }
  .popover-header:empty {
    display: none; }

.popover-body {
  padding: var(--popover-body-padding-y) var(--popover-body-padding-x);
  color: var(--popover-body-color); }

.popover-title {
  margin: 0;
  padding: 17px 24px;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-lg);
  background-color: var(--popover-title-bg);
  border-bottom: 1px solid var(--popover-border-color);
  border-radius: var(--border-radius-base)-1 var(--border-radius-base)-1 0 0; }

.popover-content {
  padding: 18px 24px;
  color: var(--text-lighter-color); }

.popover .btn-group {
  margin-bottom: 6px; }
  .popover .btn-group .btn {
    border-radius: var(--border-radius-sm) !important; }
    .popover .btn-group .btn + .btn {
      margin-left: 10px; }
    .popover .btn-group .btn i {
      display: none; }

/* Arrows */
/*.arrow is outer, .arrow:after is inner*/
.popover > .arrow, .popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover > .arrow:before {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover > .arrow {
  border-width: var(--popover-arrow-outer-width); }

.popover > .arrow:before,
.popover > .arrow:after {
  border-width: var(--popover-arrow-width);
  content: ""; }

.popover.top > .arrow {
  left: 50%;
  margin-left: var(--popover-arrow-outer-width);
  border-bottom-width: 0;
  border-top-color: var(--popover-arrow-outer-fallback-color);
  border-top-color: var(--popover-arrow-outer-color);
  bottom: var(--popover-arrow-outer-width); }
  .popover.top > .arrow:after {
    content: " ";
    bottom: 1px;
    margin-left: -var(--popover-arrow-width);
    border-bottom-width: 0;
    border-top-color: var(--popover-arrow-color); }
  .popover.top > .arrow:before {
    bottom: -9px;
    margin-left: -10px;
    border-bottom-width: 0px;
    border-top-color: rgba(0, 0, 0, 0.07);
    width: 0px;
    border-width: 10px;
    z-index: -3; }

.popover.right > .arrow {
  top: 50%;
  left: var(--popover-arrow-outer-width);
  margin-top: var(--popover-arrow-outer-width);
  border-left-width: 0;
  border-right-color: var(--popover-arrow-outer-fallback-color);
  border-right-color: var(--popover-arrow-outer-color); }
  .popover.right > .arrow:after {
    content: " ";
    left: 1px;
    bottom: -var(--popover-arrow-width);
    border-left-width: 0;
    border-right-color: var(--popover-arrow-color); }
  .popover.right > .arrow:before {
    content: " ";
    left: 1px;
    bottom: -var(--popover-arrow-width);
    border-left-width: 0;
    border-right-color: var(--popover-arrow-color); }

.popover.bottom > .arrow {
  left: 50%;
  margin-left: var(--popover-arrow-outer-width);
  border-top-width: 0;
  border-bottom-color: var(--popover-arrow-outer-fallback-color);
  border-bottom-color: var(--popover-arrow-outer-color);
  top: var(--popover-arrow-outer-width); }
  .popover.bottom > .arrow:after {
    content: " ";
    top: 1px;
    margin-left: -var(--popover-arrow-width);
    border-top-width: 0;
    border-bottom-color: var(--popover-arrow-color); }
  .popover.bottom > .arrow:before {
    content: " ";
    top: 1px;
    margin-left: -var(--popover-arrow-width);
    border-top-width: 0;
    border-bottom-color: var(--popover-arrow-color); }

.popover.left > .arrow {
  top: 50%;
  right: var(--popover-arrow-outer-width);
  margin-top: var(--popover-arrow-outer-width);
  border-right-width: 0;
  border-left-color: var(--popover-arrow-outer-fallback-color);
  border-left-color: var(--popover-arrow-outer-color); }
  .popover.left > .arrow:after {
    content: " ";
    right: 1px;
    border-right-width: 0;
    border-left-color: var(--popover-arrow-color);
    bottom: -var(--popover-arrow-width); }
  .popover.left > .arrow:before {
    content: " ";
    right: 1px;
    border-right-width: 0;
    border-left-color: var(--popover-arrow-color);
    bottom: -var(--popover-arrow-width); }

.carousel {
  position: relative; }

.carousel.pointer-event {
  touch-action: pan-y; }

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden; }
  .carousel-inner::after {
    display: block;
    clear: both;
    content: ""; }

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: var(--transition-base); }
  @media (prefers-reduced-motion: reduce) {
    .carousel-item {
      transition: none; } }
  .carousel-item img {
    max-width: 100%; }

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block; }

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%); }

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%); }

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none; }

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1; }

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity var(--transition-base); }
  @media (prefers-reduced-motion: reduce) {
    .carousel-fade .active.carousel-item-left,
    .carousel-fade .active.carousel-item-right {
      transition: none; } }

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--carousel-control-width);
  color: var(--carousel-control-color);
  text-align: center;
  opacity: var(--carousel-control-opacity);
  transition: var(--transition-base); }
  @media (prefers-reduced-motion: reduce) {
    .carousel-control-prev,
    .carousel-control-next {
      transition: none; } }
  .carousel-control-prev:hover, .carousel-control-prev:focus-visible, .carousel-control-prev:focus,
  .carousel-control-next:hover,
  .carousel-control-next:focus-visible,
  .carousel-control-next:focus {
    color: var(--carousel-control-color);
    text-decoration: none;
    outline: 0;
    opacity: var(--carousel-control-hover-opacity); }

.carousel-control-prev {
  left: 0;
  background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.001)); }

.carousel-control-next {
  right: 0;
  background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.001)); }

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: var(--carousel-control-icon-width);
  height: var(--carousel-control-icon-width);
  background: 50% / 100% 100% no-repeat; }

.carousel-control-prev-icon {
  background-image: var(--carousel-control-prev-icon-bg); }

.carousel-control-next-icon {
  background-image: var(--carousel-control-next-icon-bg); }

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: var(--carousel-control-width);
  margin-left: var(--carousel-control-width);
  list-style: none; }
  .carousel-indicators li {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: var(--carousel-indicator-width);
    height: var(--carousel-indicator-height);
    margin-right: var(--carousel-indicator-spacer);
    margin-left: var(--carousel-indicator-spacer);
    text-indent: -999px;
    cursor: pointer;
    background-color: var(--carousel-indicator-active-bg);
    background-clip: padding-box;
    border-top: var(--carousel-indicator-hit-area-height) solid transparent;
    border-bottom: var(--carousel-indicator-hit-area-height) solid transparent;
    opacity: .5;
    transition: var(--transition-base); }
    @media (prefers-reduced-motion: reduce) {
      .carousel-indicators li {
        transition: none; } }
  .carousel-indicators .active {
    opacity: 1; }

.carousel-caption {
  position: absolute;
  right: 100%-var(--carousel-caption-width)/2;
  bottom: 20px;
  left: 100%-var(--carousel-caption-width)/2;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: var(--carousel-caption-color);
  text-align: center; }

.align-baseline {
  vertical-align: baseline !important; }

.align-top {
  vertical-align: top !important; }

.align-middle {
  vertical-align: middle !important; }

.align-bottom {
  vertical-align: bottom !important; }

.align-text-bottom {
  vertical-align: text-bottom !important; }

.align-text-top {
  vertical-align: text-top !important; }

.bg-primary {
  background-color: var(--brand-primary) !important; }

a.bg-primary:hover, a.bg-primary:focus-visible, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus-visible,
button.bg-primary:focus {
  background-color: var(--brand-primary-darker) true !important; }

.bg-secondary {
  background-color: var(--brand-secondary) !important; }

a.bg-secondary:hover, a.bg-secondary:focus-visible, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus-visible,
button.bg-secondary:focus {
  background-color: var(--brand-secondary-darker) true !important; }

.bg-success {
  background-color: var(--brand-success) !important; }

a.bg-success:hover, a.bg-success:focus-visible, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus-visible,
button.bg-success:focus {
  background-color: var(--brand-success-darker) true !important; }

.bg-info {
  background-color: var(--brand-info) !important; }

a.bg-info:hover, a.bg-info:focus-visible, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus-visible,
button.bg-info:focus {
  background-color: var(--brand-info-darker) true !important; }

.bg-warning {
  background-color: var(--brand-warning) !important; }

a.bg-warning:hover, a.bg-warning:focus-visible, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus-visible,
button.bg-warning:focus {
  background-color: var(--brand-warning-darker) true !important; }

.bg-danger {
  background-color: var(--brand-danger) !important; }

a.bg-danger:hover, a.bg-danger:focus-visible, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus-visible,
button.bg-danger:focus {
  background-color: var(--brand-danger-darker) true !important; }

.bg-white {
  background-color: #fff !important; }

.bg-transparent {
  background-color: transparent !important; }

.border {
  border: var(--border-width-base) solid var(--input-border-color) !important; }

.border-top {
  border-top: var(--border-width-base) solid var(--input-border-color) !important; }

.border-right {
  border-right: var(--border-width-base) solid var(--input-border-color) !important; }

.border-bottom {
  border-bottom: var(--border-width-base) solid var(--input-border-color) !important; }

.border-left {
  border-left: var(--border-width-base) solid var(--input-border-color) !important; }

.border-0 {
  border: 0 !important; }

.border-top-0 {
  border-top: 0 !important; }

.border-right-0 {
  border-right: 0 !important; }

.border-bottom-0 {
  border-bottom: 0 !important; }

.border-left-0 {
  border-left: 0 !important; }

.border-primary {
  border-color: var(--brand-primary) !important; }

.border-secondary {
  border-color: var(--brand-secondary) !important; }

.border-success {
  border-color: var(--brand-success) !important; }

.border-info {
  border-color: var(--brand-info) !important; }

.border-warning {
  border-color: var(--brand-warning) !important; }

.border-danger {
  border-color: var(--brand-danger) !important; }

.border-white {
  border-color: #fff !important; }

.rounded-sm {
  border-radius: var(--border-radius-sm) !important; }

.rounded {
  border-radius: var(--border-radius-base) !important; }

.rounded-top {
  border-top-left-radius: var(--border-radius-base) !important;
  border-top-right-radius: var(--border-radius-base) !important; }

.rounded-right {
  border-top-right-radius: var(--border-radius-base) !important;
  border-bottom-right-radius: var(--border-radius-base) !important; }

.rounded-bottom {
  border-bottom-right-radius: var(--border-radius-base) !important;
  border-bottom-left-radius: var(--border-radius-base) !important; }

.rounded-left {
  border-top-left-radius: var(--border-radius-base) !important;
  border-bottom-left-radius: var(--border-radius-base) !important; }

.rounded-lg {
  border-radius: var(--border-radius-lg) !important; }

.rounded-circle {
  border-radius: 50% !important; }

.rounded-pill {
  border-radius: var(--rounded-pill) !important; }

.rounded-0 {
  border-radius: 0 !important; }

.clearfix::after {
  display: block;
  clear: both;
  content: ""; }

.d-none {
  display: none !important; }

.d-inline {
  display: inline !important; }

.d-inline-block {
  display: inline-block !important; }

.d-block {
  display: block !important; }

.d-table {
  display: table !important; }

.d-table-row {
  display: table-row !important; }

.d-table-cell {
  display: table-cell !important; }

.d-flex {
  display: flex !important; }

.d-inline-flex {
  display: inline-flex !important; }

@media (min-width: 480px) {
  .d-sm-none {
    display: none !important; }
  .d-sm-inline {
    display: inline !important; }
  .d-sm-inline-block {
    display: inline-block !important; }
  .d-sm-block {
    display: block !important; }
  .d-sm-table {
    display: table !important; }
  .d-sm-table-row {
    display: table-row !important; }
  .d-sm-table-cell {
    display: table-cell !important; }
  .d-sm-flex {
    display: flex !important; }
  .d-sm-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 768px) {
  .d-md-none {
    display: none !important; }
  .d-md-inline {
    display: inline !important; }
  .d-md-inline-block {
    display: inline-block !important; }
  .d-md-block {
    display: block !important; }
  .d-md-table {
    display: table !important; }
  .d-md-table-row {
    display: table-row !important; }
  .d-md-table-cell {
    display: table-cell !important; }
  .d-md-flex {
    display: flex !important; }
  .d-md-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important; }
  .d-lg-inline {
    display: inline !important; }
  .d-lg-inline-block {
    display: inline-block !important; }
  .d-lg-block {
    display: block !important; }
  .d-lg-table {
    display: table !important; }
  .d-lg-table-row {
    display: table-row !important; }
  .d-lg-table-cell {
    display: table-cell !important; }
  .d-lg-flex {
    display: flex !important; }
  .d-lg-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 1320px) {
  .d-xl-none {
    display: none !important; }
  .d-xl-inline {
    display: inline !important; }
  .d-xl-inline-block {
    display: inline-block !important; }
  .d-xl-block {
    display: block !important; }
  .d-xl-table {
    display: table !important; }
  .d-xl-table-row {
    display: table-row !important; }
  .d-xl-table-cell {
    display: table-cell !important; }
  .d-xl-flex {
    display: flex !important; }
  .d-xl-inline-flex {
    display: inline-flex !important; } }

@media print {
  .d-print-none {
    display: none !important; }
  .d-print-inline {
    display: inline !important; }
  .d-print-inline-block {
    display: inline-block !important; }
  .d-print-block {
    display: block !important; }
  .d-print-table {
    display: table !important; }
  .d-print-table-row {
    display: table-row !important; }
  .d-print-table-cell {
    display: table-cell !important; }
  .d-print-flex {
    display: flex !important; }
  .d-print-inline-flex {
    display: inline-flex !important; } }

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed-responsive::before {
    display: block;
    content: ""; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-21by9::before {
  padding-top: 42.85714%; }

.embed-responsive-16by9::before {
  padding-top: 56.25%; }

.embed-responsive-4by3::before {
  padding-top: 75%; }

.embed-responsive-1by1::before {
  padding-top: 100%; }

.flex-row {
  flex-direction: row !important; }

.flex-column {
  flex-direction: column !important; }

.flex-row-reverse {
  flex-direction: row-reverse !important; }

.flex-column-reverse {
  flex-direction: column-reverse !important; }

.flex-wrap {
  flex-wrap: wrap !important; }

.flex-nowrap {
  flex-wrap: nowrap !important; }

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important; }

.flex-fill {
  flex: 1 1 auto !important; }

.flex-grow-0 {
  flex-grow: 0 !important; }

.flex-grow-1 {
  flex-grow: 1 !important; }

.flex-shrink-0 {
  flex-shrink: 0 !important; }

.flex-shrink-1 {
  flex-shrink: 1 !important; }

.justify-content-start {
  justify-content: flex-start !important; }

.justify-content-end {
  justify-content: flex-end !important; }

.justify-content-center {
  justify-content: center !important; }

.justify-content-between {
  justify-content: space-between !important; }

.justify-content-around {
  justify-content: space-around !important; }

.align-items-start {
  align-items: flex-start !important; }

.align-items-end {
  align-items: flex-end !important; }

.align-items-center {
  align-items: center !important; }

.align-items-baseline {
  align-items: baseline !important; }

.align-items-stretch {
  align-items: stretch !important; }

.align-content-start {
  align-content: flex-start !important; }

.align-content-end {
  align-content: flex-end !important; }

.align-content-center {
  align-content: center !important; }

.align-content-between {
  align-content: space-between !important; }

.align-content-around {
  align-content: space-around !important; }

.align-content-stretch {
  align-content: stretch !important; }

.align-self-auto {
  align-self: auto !important; }

.align-self-start {
  align-self: flex-start !important; }

.align-self-end {
  align-self: flex-end !important; }

.align-self-center {
  align-self: center !important; }

.align-self-baseline {
  align-self: baseline !important; }

.align-self-stretch {
  align-self: stretch !important; }

@media (min-width: 480px) {
  .flex-sm-row {
    flex-direction: row !important; }
  .flex-sm-column {
    flex-direction: column !important; }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-sm-wrap {
    flex-wrap: wrap !important; }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important; }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-sm-fill {
    flex: 1 1 auto !important; }
  .flex-sm-grow-0 {
    flex-grow: 0 !important; }
  .flex-sm-grow-1 {
    flex-grow: 1 !important; }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-sm-start {
    justify-content: flex-start !important; }
  .justify-content-sm-end {
    justify-content: flex-end !important; }
  .justify-content-sm-center {
    justify-content: center !important; }
  .justify-content-sm-between {
    justify-content: space-between !important; }
  .justify-content-sm-around {
    justify-content: space-around !important; }
  .align-items-sm-start {
    align-items: flex-start !important; }
  .align-items-sm-end {
    align-items: flex-end !important; }
  .align-items-sm-center {
    align-items: center !important; }
  .align-items-sm-baseline {
    align-items: baseline !important; }
  .align-items-sm-stretch {
    align-items: stretch !important; }
  .align-content-sm-start {
    align-content: flex-start !important; }
  .align-content-sm-end {
    align-content: flex-end !important; }
  .align-content-sm-center {
    align-content: center !important; }
  .align-content-sm-between {
    align-content: space-between !important; }
  .align-content-sm-around {
    align-content: space-around !important; }
  .align-content-sm-stretch {
    align-content: stretch !important; }
  .align-self-sm-auto {
    align-self: auto !important; }
  .align-self-sm-start {
    align-self: flex-start !important; }
  .align-self-sm-end {
    align-self: flex-end !important; }
  .align-self-sm-center {
    align-self: center !important; }
  .align-self-sm-baseline {
    align-self: baseline !important; }
  .align-self-sm-stretch {
    align-self: stretch !important; } }

@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important; }
  .flex-md-column {
    flex-direction: column !important; }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-md-wrap {
    flex-wrap: wrap !important; }
  .flex-md-nowrap {
    flex-wrap: nowrap !important; }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-md-fill {
    flex: 1 1 auto !important; }
  .flex-md-grow-0 {
    flex-grow: 0 !important; }
  .flex-md-grow-1 {
    flex-grow: 1 !important; }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-md-start {
    justify-content: flex-start !important; }
  .justify-content-md-end {
    justify-content: flex-end !important; }
  .justify-content-md-center {
    justify-content: center !important; }
  .justify-content-md-between {
    justify-content: space-between !important; }
  .justify-content-md-around {
    justify-content: space-around !important; }
  .align-items-md-start {
    align-items: flex-start !important; }
  .align-items-md-end {
    align-items: flex-end !important; }
  .align-items-md-center {
    align-items: center !important; }
  .align-items-md-baseline {
    align-items: baseline !important; }
  .align-items-md-stretch {
    align-items: stretch !important; }
  .align-content-md-start {
    align-content: flex-start !important; }
  .align-content-md-end {
    align-content: flex-end !important; }
  .align-content-md-center {
    align-content: center !important; }
  .align-content-md-between {
    align-content: space-between !important; }
  .align-content-md-around {
    align-content: space-around !important; }
  .align-content-md-stretch {
    align-content: stretch !important; }
  .align-self-md-auto {
    align-self: auto !important; }
  .align-self-md-start {
    align-self: flex-start !important; }
  .align-self-md-end {
    align-self: flex-end !important; }
  .align-self-md-center {
    align-self: center !important; }
  .align-self-md-baseline {
    align-self: baseline !important; }
  .align-self-md-stretch {
    align-self: stretch !important; } }

@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important; }
  .flex-lg-column {
    flex-direction: column !important; }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-lg-wrap {
    flex-wrap: wrap !important; }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important; }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-lg-fill {
    flex: 1 1 auto !important; }
  .flex-lg-grow-0 {
    flex-grow: 0 !important; }
  .flex-lg-grow-1 {
    flex-grow: 1 !important; }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-lg-start {
    justify-content: flex-start !important; }
  .justify-content-lg-end {
    justify-content: flex-end !important; }
  .justify-content-lg-center {
    justify-content: center !important; }
  .justify-content-lg-between {
    justify-content: space-between !important; }
  .justify-content-lg-around {
    justify-content: space-around !important; }
  .align-items-lg-start {
    align-items: flex-start !important; }
  .align-items-lg-end {
    align-items: flex-end !important; }
  .align-items-lg-center {
    align-items: center !important; }
  .align-items-lg-baseline {
    align-items: baseline !important; }
  .align-items-lg-stretch {
    align-items: stretch !important; }
  .align-content-lg-start {
    align-content: flex-start !important; }
  .align-content-lg-end {
    align-content: flex-end !important; }
  .align-content-lg-center {
    align-content: center !important; }
  .align-content-lg-between {
    align-content: space-between !important; }
  .align-content-lg-around {
    align-content: space-around !important; }
  .align-content-lg-stretch {
    align-content: stretch !important; }
  .align-self-lg-auto {
    align-self: auto !important; }
  .align-self-lg-start {
    align-self: flex-start !important; }
  .align-self-lg-end {
    align-self: flex-end !important; }
  .align-self-lg-center {
    align-self: center !important; }
  .align-self-lg-baseline {
    align-self: baseline !important; }
  .align-self-lg-stretch {
    align-self: stretch !important; } }

@media (min-width: 1320px) {
  .flex-xl-row {
    flex-direction: row !important; }
  .flex-xl-column {
    flex-direction: column !important; }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-xl-wrap {
    flex-wrap: wrap !important; }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important; }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-xl-fill {
    flex: 1 1 auto !important; }
  .flex-xl-grow-0 {
    flex-grow: 0 !important; }
  .flex-xl-grow-1 {
    flex-grow: 1 !important; }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-xl-start {
    justify-content: flex-start !important; }
  .justify-content-xl-end {
    justify-content: flex-end !important; }
  .justify-content-xl-center {
    justify-content: center !important; }
  .justify-content-xl-between {
    justify-content: space-between !important; }
  .justify-content-xl-around {
    justify-content: space-around !important; }
  .align-items-xl-start {
    align-items: flex-start !important; }
  .align-items-xl-end {
    align-items: flex-end !important; }
  .align-items-xl-center {
    align-items: center !important; }
  .align-items-xl-baseline {
    align-items: baseline !important; }
  .align-items-xl-stretch {
    align-items: stretch !important; }
  .align-content-xl-start {
    align-content: flex-start !important; }
  .align-content-xl-end {
    align-content: flex-end !important; }
  .align-content-xl-center {
    align-content: center !important; }
  .align-content-xl-between {
    align-content: space-between !important; }
  .align-content-xl-around {
    align-content: space-around !important; }
  .align-content-xl-stretch {
    align-content: stretch !important; }
  .align-self-xl-auto {
    align-self: auto !important; }
  .align-self-xl-start {
    align-self: flex-start !important; }
  .align-self-xl-end {
    align-self: flex-end !important; }
  .align-self-xl-center {
    align-self: center !important; }
  .align-self-xl-baseline {
    align-self: baseline !important; }
  .align-self-xl-stretch {
    align-self: stretch !important; } }

.float-left {
  float: left !important; }

.float-right {
  float: right !important; }

.float-none {
  float: none !important; }

@media (min-width: 480px) {
  .float-sm-left {
    float: left !important; }
  .float-sm-right {
    float: right !important; }
  .float-sm-none {
    float: none !important; } }

@media (min-width: 768px) {
  .float-md-left {
    float: left !important; }
  .float-md-right {
    float: right !important; }
  .float-md-none {
    float: none !important; } }

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important; }
  .float-lg-right {
    float: right !important; }
  .float-lg-none {
    float: none !important; } }

@media (min-width: 1320px) {
  .float-xl-left {
    float: left !important; }
  .float-xl-right {
    float: right !important; }
  .float-xl-none {
    float: none !important; } }

.user-select-all {
  user-select: all !important; }

.user-select-auto {
  user-select: auto !important; }

.user-select-none {
  user-select: none !important; }

.overflow-auto {
  overflow: auto !important; }

.overflow-hidden {
  overflow: hidden !important; }

.overflow-x-hidden {
  overflow-x: hidden !important; }

.position-static {
  position: static !important; }

.position-relative {
  position: relative !important; }

.position-absolute {
  position: absolute !important; }

.position-fixed {
  position: fixed !important; }

.position-sticky {
  position: sticky !important; }

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: var(--zindex-fixed); }

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: var(--zindex-fixed); }

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: var(--zindex-sticky); } }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

.shadow-sm {
  box-shadow: var(--box-shadow-sm) !important; }

.shadow {
  box-shadow: var(--box-shadow) !important; }

.shadow-lg {
  box-shadow: var(--box-shadow-lg) !important; }

.shadow-none {
  box-shadow: none !important; }

.w-25 {
  width: 25% !important; }

.w-50 {
  width: 50% !important; }

.w-75 {
  width: 75% !important; }

.w-100 {
  width: 100% !important; }

.w-auto {
  width: auto !important; }

.h-25 {
  height: 25% !important; }

.h-50 {
  height: 50% !important; }

.h-75 {
  height: 75% !important; }

.h-100 {
  height: 100% !important; }

.h-auto {
  height: auto !important; }

.mw-100 {
  max-width: 100% !important; }

.mh-100 {
  max-height: 100% !important; }

.min-vw-100 {
  min-width: 100vw !important; }

.min-vh-100 {
  min-height: 100vh !important; }

.vw-100 {
  width: 100vw !important; }

.vh-100 {
  height: 100vh !important; }

.m-0 {
  margin: 0 !important; }

.mt-0,
.my-0 {
  margin-top: 0 !important; }

.mr-0,
.mx-0 {
  margin-right: 0 !important; }

.mb-0,
.my-0 {
  margin-bottom: 0 !important; }

.ml-0,
.mx-0 {
  margin-left: 0 !important; }

.m-1 {
  margin: 0.25rem !important; }

.mt-1,
.my-1 {
  margin-top: 0.25rem !important; }

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important; }

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important; }

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important; }

.m-2 {
  margin: 0.5rem !important; }

.mt-2,
.my-2 {
  margin-top: 0.5rem !important; }

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important; }

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important; }

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important; }

.m-3 {
  margin: 1rem !important; }

.mt-3,
.my-3 {
  margin-top: 1rem !important; }

.mr-3,
.mx-3 {
  margin-right: 1rem !important; }

.mb-3,
.my-3 {
  margin-bottom: 1rem !important; }

.ml-3,
.mx-3 {
  margin-left: 1rem !important; }

.m-4 {
  margin: 1.5rem !important; }

.mt-4,
.my-4 {
  margin-top: 1.5rem !important; }

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important; }

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important; }

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important; }

.m-5 {
  margin: 3rem !important; }

.mt-5,
.my-5 {
  margin-top: 3rem !important; }

.mr-5,
.mx-5 {
  margin-right: 3rem !important; }

.mb-5,
.my-5 {
  margin-bottom: 3rem !important; }

.ml-5,
.mx-5 {
  margin-left: 3rem !important; }

.p-0 {
  padding: 0 !important; }

.pt-0,
.py-0 {
  padding-top: 0 !important; }

.pr-0,
.px-0 {
  padding-right: 0 !important; }

.pb-0,
.py-0 {
  padding-bottom: 0 !important; }

.pl-0,
.px-0 {
  padding-left: 0 !important; }

.p-1 {
  padding: 0.25rem !important; }

.pt-1,
.py-1 {
  padding-top: 0.25rem !important; }

.pr-1,
.px-1 {
  padding-right: 0.25rem !important; }

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important; }

.pl-1,
.px-1 {
  padding-left: 0.25rem !important; }

.p-2 {
  padding: 0.5rem !important; }

.pt-2,
.py-2 {
  padding-top: 0.5rem !important; }

.pr-2,
.px-2 {
  padding-right: 0.5rem !important; }

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important; }

.pl-2,
.px-2 {
  padding-left: 0.5rem !important; }

.p-3 {
  padding: 1rem !important; }

.pt-3,
.py-3 {
  padding-top: 1rem !important; }

.pr-3,
.px-3 {
  padding-right: 1rem !important; }

.pb-3,
.py-3 {
  padding-bottom: 1rem !important; }

.pl-3,
.px-3 {
  padding-left: 1rem !important; }

.p-4 {
  padding: 1.5rem !important; }

.pt-4,
.py-4 {
  padding-top: 1.5rem !important; }

.pr-4,
.px-4 {
  padding-right: 1.5rem !important; }

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important; }

.pl-4,
.px-4 {
  padding-left: 1.5rem !important; }

.p-5 {
  padding: 3rem !important; }

.pt-5,
.py-5 {
  padding-top: 3rem !important; }

.pr-5,
.px-5 {
  padding-right: 3rem !important; }

.pb-5,
.py-5 {
  padding-bottom: 3rem !important; }

.pl-5,
.px-5 {
  padding-left: 3rem !important; }

.m-n1 {
  margin: -0.25rem !important; }

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important; }

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important; }

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important; }

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important; }

.m-n2 {
  margin: -0.5rem !important; }

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important; }

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important; }

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important; }

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important; }

.m-n3 {
  margin: -1rem !important; }

.mt-n3,
.my-n3 {
  margin-top: -1rem !important; }

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important; }

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important; }

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important; }

.m-n4 {
  margin: -1.5rem !important; }

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important; }

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important; }

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important; }

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important; }

.m-n5 {
  margin: -3rem !important; }

.mt-n5,
.my-n5 {
  margin-top: -3rem !important; }

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important; }

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important; }

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important; }

.m-auto {
  margin: auto !important; }

.mt-auto,
.my-auto {
  margin-top: auto !important; }

.mr-auto,
.mx-auto {
  margin-right: auto !important; }

.mb-auto,
.my-auto {
  margin-bottom: auto !important; }

.ml-auto,
.mx-auto {
  margin-left: auto !important; }

@media (min-width: 480px) {
  .m-sm-0 {
    margin: 0 !important; }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important; }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important; }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important; }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important; }
  .m-sm-1 {
    margin: 0.25rem !important; }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important; }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important; }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important; }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important; }
  .m-sm-2 {
    margin: 0.5rem !important; }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important; }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important; }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important; }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important; }
  .m-sm-3 {
    margin: 1rem !important; }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important; }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important; }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important; }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important; }
  .m-sm-4 {
    margin: 1.5rem !important; }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important; }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important; }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important; }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important; }
  .m-sm-5 {
    margin: 3rem !important; }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important; }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important; }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important; }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important; }
  .p-sm-0 {
    padding: 0 !important; }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important; }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important; }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important; }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important; }
  .p-sm-1 {
    padding: 0.25rem !important; }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important; }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important; }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important; }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important; }
  .p-sm-2 {
    padding: 0.5rem !important; }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important; }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important; }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important; }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important; }
  .p-sm-3 {
    padding: 1rem !important; }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important; }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important; }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important; }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important; }
  .p-sm-4 {
    padding: 1.5rem !important; }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important; }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important; }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important; }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important; }
  .p-sm-5 {
    padding: 3rem !important; }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important; }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important; }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important; }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important; }
  .m-sm-n1 {
    margin: -0.25rem !important; }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important; }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important; }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important; }
  .m-sm-n2 {
    margin: -0.5rem !important; }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important; }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important; }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important; }
  .m-sm-n3 {
    margin: -1rem !important; }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important; }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important; }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important; }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important; }
  .m-sm-n4 {
    margin: -1.5rem !important; }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important; }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important; }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important; }
  .m-sm-n5 {
    margin: -3rem !important; }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important; }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important; }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important; }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important; }
  .m-sm-auto {
    margin: auto !important; }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important; }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important; }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important; }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important; } }

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important; }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important; }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important; }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important; }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important; }
  .m-md-1 {
    margin: 0.25rem !important; }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important; }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important; }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important; }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important; }
  .m-md-2 {
    margin: 0.5rem !important; }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important; }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important; }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important; }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important; }
  .m-md-3 {
    margin: 1rem !important; }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important; }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important; }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important; }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important; }
  .m-md-4 {
    margin: 1.5rem !important; }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important; }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important; }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important; }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important; }
  .m-md-5 {
    margin: 3rem !important; }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important; }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important; }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important; }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important; }
  .p-md-0 {
    padding: 0 !important; }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important; }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important; }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important; }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important; }
  .p-md-1 {
    padding: 0.25rem !important; }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important; }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important; }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important; }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important; }
  .p-md-2 {
    padding: 0.5rem !important; }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important; }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important; }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important; }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important; }
  .p-md-3 {
    padding: 1rem !important; }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important; }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important; }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important; }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important; }
  .p-md-4 {
    padding: 1.5rem !important; }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important; }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important; }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important; }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important; }
  .p-md-5 {
    padding: 3rem !important; }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important; }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important; }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important; }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important; }
  .m-md-n1 {
    margin: -0.25rem !important; }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important; }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important; }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important; }
  .m-md-n2 {
    margin: -0.5rem !important; }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important; }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important; }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important; }
  .m-md-n3 {
    margin: -1rem !important; }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important; }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important; }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important; }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important; }
  .m-md-n4 {
    margin: -1.5rem !important; }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important; }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important; }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important; }
  .m-md-n5 {
    margin: -3rem !important; }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important; }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important; }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important; }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important; }
  .m-md-auto {
    margin: auto !important; }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important; }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important; }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important; }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important; } }

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important; }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important; }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important; }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important; }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important; }
  .m-lg-1 {
    margin: 0.25rem !important; }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important; }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important; }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important; }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important; }
  .m-lg-2 {
    margin: 0.5rem !important; }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important; }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important; }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important; }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important; }
  .m-lg-3 {
    margin: 1rem !important; }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important; }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important; }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important; }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important; }
  .m-lg-4 {
    margin: 1.5rem !important; }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important; }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important; }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important; }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important; }
  .m-lg-5 {
    margin: 3rem !important; }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important; }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important; }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important; }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important; }
  .p-lg-0 {
    padding: 0 !important; }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important; }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important; }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important; }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important; }
  .p-lg-1 {
    padding: 0.25rem !important; }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important; }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important; }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important; }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important; }
  .p-lg-2 {
    padding: 0.5rem !important; }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important; }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important; }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important; }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important; }
  .p-lg-3 {
    padding: 1rem !important; }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important; }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important; }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important; }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important; }
  .p-lg-4 {
    padding: 1.5rem !important; }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important; }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important; }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important; }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important; }
  .p-lg-5 {
    padding: 3rem !important; }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important; }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important; }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important; }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important; }
  .m-lg-n1 {
    margin: -0.25rem !important; }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important; }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important; }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important; }
  .m-lg-n2 {
    margin: -0.5rem !important; }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important; }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important; }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important; }
  .m-lg-n3 {
    margin: -1rem !important; }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important; }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important; }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important; }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important; }
  .m-lg-n4 {
    margin: -1.5rem !important; }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important; }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important; }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important; }
  .m-lg-n5 {
    margin: -3rem !important; }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important; }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important; }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important; }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important; }
  .m-lg-auto {
    margin: auto !important; }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important; }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important; }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important; }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important; } }

@media (min-width: 1320px) {
  .m-xl-0 {
    margin: 0 !important; }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important; }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important; }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important; }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important; }
  .m-xl-1 {
    margin: 0.25rem !important; }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important; }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important; }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important; }
  .m-xl-2 {
    margin: 0.5rem !important; }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important; }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important; }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important; }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important; }
  .m-xl-3 {
    margin: 1rem !important; }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important; }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important; }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important; }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important; }
  .m-xl-4 {
    margin: 1.5rem !important; }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important; }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important; }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important; }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important; }
  .m-xl-5 {
    margin: 3rem !important; }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important; }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important; }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important; }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important; }
  .p-xl-0 {
    padding: 0 !important; }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important; }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important; }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important; }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important; }
  .p-xl-1 {
    padding: 0.25rem !important; }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important; }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important; }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important; }
  .p-xl-2 {
    padding: 0.5rem !important; }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important; }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important; }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important; }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important; }
  .p-xl-3 {
    padding: 1rem !important; }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important; }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important; }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important; }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important; }
  .p-xl-4 {
    padding: 1.5rem !important; }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important; }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important; }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important; }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important; }
  .p-xl-5 {
    padding: 3rem !important; }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important; }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important; }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important; }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important; }
  .m-xl-n1 {
    margin: -0.25rem !important; }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important; }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important; }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important; }
  .m-xl-n2 {
    margin: -0.5rem !important; }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important; }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important; }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important; }
  .m-xl-n3 {
    margin: -1rem !important; }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important; }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important; }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important; }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important; }
  .m-xl-n4 {
    margin: -1.5rem !important; }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important; }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important; }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important; }
  .m-xl-n5 {
    margin: -3rem !important; }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important; }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important; }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important; }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important; }
  .m-xl-auto {
    margin: auto !important; }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important; }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important; }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important; }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important; } }

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0); }

.text-monospace {
  font-family: var(--font-family-monospace) !important; }

.text-justify {
  text-align: justify !important; }

.text-wrap {
  white-space: normal !important; }

.text-nowrap {
  white-space: nowrap !important; }

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.text-left {
  text-align: left !important; }

.text-right {
  text-align: right !important; }

.text-center {
  text-align: center !important; }

@media (min-width: 480px) {
  .text-sm-left {
    text-align: left !important; }
  .text-sm-right {
    text-align: right !important; }
  .text-sm-center {
    text-align: center !important; } }

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important; }
  .text-md-right {
    text-align: right !important; }
  .text-md-center {
    text-align: center !important; } }

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important; }
  .text-lg-right {
    text-align: right !important; }
  .text-lg-center {
    text-align: center !important; } }

@media (min-width: 1320px) {
  .text-xl-left {
    text-align: left !important; }
  .text-xl-right {
    text-align: right !important; }
  .text-xl-center {
    text-align: center !important; } }

.text-lowercase {
  text-transform: lowercase !important; }

.text-uppercase {
  text-transform: uppercase !important; }

.text-capitalize {
  text-transform: capitalize !important; }

.font-weight-light {
  font-weight: var(--font-weight-light) !important; }

.font-weight-normal {
  font-weight: var(--font-weight-base) !important; }

.font-weight-medium {
  font-weight: var(--font-weight-medium) !important; }

.font-weight-bold {
  font-weight: var(--font-weight-bold) !important; }

.font-weight-bolder {
  font-weight: var(--font-weight-black) !important; }

.font-italic {
  font-style: italic !important; }

.text-white {
  color: #fff !important; }

.text-body {
  color: var(--text-body-color) !important; }

.text-muted {
  color: var(--text-lighter-color) !important; }

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important; }

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.text-decoration-none {
  text-decoration: none !important; }

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important; }

.text-reset {
  color: inherit !important; }

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

@-ms-viewport {
  width: device-width; }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xl {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block,
.visible-xl-block,
.visible-xl-inline,
.visible-xl-inline-block {
  display: none !important; }

@media (max-width: 479.98px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 479.98px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 479.98px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 479.98px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 480px) and (max-width: 767.98px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 480px) and (max-width: 767.98px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 480px) and (max-width: 767.98px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 480px) and (max-width: 767.98px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991.98px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991.98px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991.98px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991.98px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (min-width: 1320px) {
  .visible-xl {
    display: block !important; }
  table.visible-xl {
    display: table !important; }
  tr.visible-xl {
    display: table-row !important; }
  th.visible-xl,
  td.visible-xl {
    display: table-cell !important; } }

@media (min-width: 1320px) {
  .visible-xl-block {
    display: block !important; } }

@media (min-width: 1320px) {
  .visible-xl-inline {
    display: inline !important; } }

@media (min-width: 1320px) {
  .visible-xl-inline-block {
    display: inline-block !important; } }

@media (max-width: 479.98px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 480px) and (max-width: 767.98px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991.98px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .hidden-lg {
    display: none !important; } }

@media (min-width: 1320px) {
  .hidden-xl {
    display: none !important; } }

.visible-print {
  display: none !important; }

@media print {
  .visible-print {
    display: block !important; }
  table.visible-print {
    display: table !important; }
  tr.visible-print {
    display: table-row !important; }
  th.visible-print,
  td.visible-print {
    display: table-cell !important; } }

.visible-print-block {
  display: none !important; }
  @media print {
    .visible-print-block {
      display: block !important; } }

.visible-print-inline {
  display: none !important; }
  @media print {
    .visible-print-inline {
      display: inline !important; } }

.visible-print-inline-block {
  display: none !important; }
  @media print {
    .visible-print-inline-block {
      display: inline-block !important; } }

@media print {
  .hidden-print {
    display: none !important; } }

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  color: var(--text-heading-color); }
  h1 small,
  h1 .small,
  h2 small,
  h2 .small,
  h3 small,
  h3 .small,
  h4 small,
  h4 .small,
  h5 small,
  h5 .small,
  h6 small,
  h6 .small,
  .h1 small,
  .h1 .small,
  .h2 small,
  .h2 .small,
  .h3 small,
  .h3 .small,
  .h4 small,
  .h4 .small,
  .h5 small,
  .h5 .small,
  .h6 small,
  .h6 .small {
    font-weight: normal;
    line-height: 1; }

h1 {
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  font-weight: var(--font-weight-h1); }

h2 {
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
  font-weight: var(--font-weight-h2); }

h3 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
  font-weight: var(--font-weight-h3); }

h4 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  font-weight: var(--font-weight-h4); }

h5 {
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  font-weight: var(--font-weight-h5); }

h6 {
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  font-weight: var(--font-weight-h6); }

.h1 {
  font-size: var(--font-size-h1) !important;
  line-height: var(--line-height-h1) !important;
  font-weight: var(--font-weight-h1) !important; }

.h2 {
  font-size: var(--font-size-h2) !important;
  line-height: var(--line-height-h2) !important;
  font-weight: var(--font-weight-h2) !important; }

.h3 {
  font-size: var(--font-size-h3) !important;
  line-height: var(--line-height-h3) !important;
  font-weight: var(--font-weight-h3) !important; }

.h4 {
  font-size: var(--font-size-h4) !important;
  line-height: var(--line-height-h4) !important;
  font-weight: var(--font-weight-h4) !important; }

.h5 {
  font-size: var(--font-size-h5) !important;
  line-height: var(--line-height-h5) !important;
  font-weight: var(--font-weight-h5) !important; }

.h6 {
  font-size: var(--font-size-h6) !important;
  line-height: var(--line-height-h6) !important;
  font-weight: var(--font-weight-h6) !important; }

.h7 {
  font-size: var(--font-size-h7) !important;
  line-height: var(--line-height-h7) !important;
  font-weight: var(--font-weight-h7) !important; }

.h8 {
  font-size: var(--font-size-h8) !important;
  line-height: var(--line-height-h8) !important;
  font-weight: var(--font-weight-h8) !important; }

.h9 {
  font-size: var(--font-size-h9) !important;
  line-height: var(--line-height-h9) !important;
  font-weight: var(--font-weight-h9) !important; }

p {
  margin: 0 0 16px; }

.p-xxs {
  font-size: var(--font-size-xxs);
  line-height: var(--line-height-xxs); }

.p-xs {
  font-size: var(--font-size-xs);
  line-height: var(--line-height-xs); }

.p-sm {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm); }

.p-base {
  font-size: var(--font-size-base);
  line-height: var(--line-height-base); }

.p-lg {
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg);
  font-weight: var(--font-weight-light); }

.p-xlg {
  font-size: var(--font-size-xlg);
  line-height: var(--line-height-xlg);
  font-weight: var(--font-weight-light); }

.p-xxlg {
  font-size: var(--font-size-xxlg);
  line-height: var(--line-height-xxlg);
  font-weight: var(--font-weight-light); }

.lead {
  margin-bottom: var(--line-height-base);
  font-size: var(--font-size-base);
  font-weight: 300;
  line-height: 1.4; }

.display-1 {
  font-size: var(--display1-size);
  font-weight: var(--display1-weight);
  line-height: var(--display-line-height); }

.display-2 {
  font-size: var(--display2-size);
  font-weight: var(--display2-weight);
  line-height: var(--display-line-height); }

.display-3 {
  font-size: var(--display3-size);
  font-weight: var(--display3-weight);
  line-height: var(--display-line-height); }

.display-4 {
  font-size: var(--display4-size);
  font-weight: var(--display4-weight);
  line-height: var(--display-line-height); }

hr {
  margin-top: var(--hr-margin-y);
  margin-bottom: var(--hr-margin-y);
  border-top: var(--hr-border-width) solid var(--hr-border-color); }

small,
.small {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm); }

mark,
.mark {
  background-color: var(--brand-warning-lighter-4);
  padding: .2em; }

.text-left {
  text-align: left !important; }

.text-right {
  text-align: right !important; }

.text-center {
  text-align: center !important; }

.text-justify {
  text-align: justify !important; }

.text-nowrap {
  white-space: nowrap !important; }

.text-lowercase {
  text-transform: lowercase !important; }

.text-uppercase {
  text-transform: uppercase !important; }

.text-capitalize {
  text-transform: capitalize !important; }

.text-large {
  font-size: var(--font-size-lg) !important; }

.text-small {
  font-size: var(--font-size-sm) !important;
  line-height: var(--line-height-sm) !important; }

.text-faded {
  color: var(--text-faded-color) !important; }

.text-lighter {
  color: var(--text-lighter-color) !important; }

.line-through {
  text-decoration: line-through !important; }

.text-primary {
  color: var(--text-primary-color) !important; }

a.text-primary:hover, a.text-primary:focus-visible, a.text-primary:focus {
  color: var(--brand-primary-darker) !important; }

.text-success {
  color: var(--text-success-color) !important; }

a.text-success:hover, a.text-success:focus-visible, a.text-success:focus {
  color: var(--brand-success-darker) !important; }

.text-info {
  color: var(--brand-info) !important; }

a.text-info:hover, a.text-info:focus-visible, a.text-info:focus {
  color: var(--brand-info-darker) !important; }

.text-warning {
  color: var(--text-warning-color) !important; }

a.text-warning:hover, a.text-warning:focus-visible, a.text-warning:focus {
  color: var(--brand-warning-darker) !important; }

.text-danger {
  color: var(--text-danger-color) !important; }

a.text-danger:hover, a.text-danger:focus-visible, a.text-danger:focus {
  color: var(--brand-danger-darker) !important; }

.bg-primary {
  color: #fff; }

.bg-primary {
  background-color: var(--brand-primary) !important; }

a.bg-primary:hover, a.bg-primary:focus-visible, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus-visible,
button.bg-primary:focus {
  background-color: var(--brand-danger-lighter-2) !important; }

.bg-success {
  background-color: var(--brand-success-lighter-4) !important; }

a.bg-success:hover, a.bg-success:focus-visible, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus-visible,
button.bg-success:focus {
  background-color: var(--brand-success-lighter-3) !important; }

.bg-info {
  background-color: var(--brand-info-lighter-3) !important; }

a.bg-info:hover, a.bg-info:focus-visible, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus-visible,
button.bg-info:focus {
  background-color: var(--brand-info-lighter-2) !important; }

.bg-warning {
  background-color: var(--brand-warning-lighter-4) !important; }

a.bg-warning:hover, a.bg-warning:focus-visible, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus-visible,
button.bg-warning:focus {
  background-color: var(--brand-warning-lighter-3) !important; }

.bg-danger {
  background-color: var(--brand-danger-lighter-4) !important; }

a.bg-danger:hover, a.bg-danger:focus-visible, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus-visible,
button.bg-danger:focus {
  background-color: var(--brand-danger-lighter-3) !important; }

.bg-default {
  background-color: var(--gray-lighter-4) !important; }

a.bg-default:hover, a.bg-default:focus-visible, a.bg-default:focus,
button.bg-default:hover,
button.bg-default:focus-visible,
button.bg-default:focus {
  background-color: var(--gray-lighter-3) !important; }

ul,
ol {
  margin-top: 0;
  margin-bottom: var(--line-height-base)/2; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin-bottom: 0; }

.list-unstyled {
  padding-left: 0;
  list-style: none; }

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px; }
  .list-inline > li, .list-inline .list-inline-item {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px; }
    .list-inline > li:not(:last-child), .list-inline .list-inline-item:not(:last-child) {
      margin-right: var(--list-inline-padding); }

.initialism {
  font-size: 90%;
  text-transform: uppercase; }

blockquote {
  background: var(--blockquote-bg);
  border: 1px solid var(--blockquote-border-color);
  border-radius: var(--ui-block-border-radius);
  padding: var(--blockquote-padding);
  position: relative;
  font-size: var(--blockquote-font-color);
  font-weight: var(--balckquote-font-weight);
  line-height: var(--blockquote-line-height); }
  blockquote > :last-child {
    margin-bottom: 0; }
  blockquote p span {
    font-style: italic;
    margin: 0; }
  blockquote p:after {
    content: "";
    background-image: url(../img/quote-icon.svg);
    position: absolute;
    top: 24px;
    left: 24px;
    height: 24px;
    width: 24px; }

.blockquote-footer {
  display: block;
  font-size: var(--blockquote-small-font-size);
  color: var(--blockquote-small-color); }
  .blockquote-footer::before {
    content: "\2014\00A0"; }

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: var(--card-bg);
  background-clip: border-box;
  border: var(--card-border);
  border-radius: var(--card-border-radius); }
  .card > hr {
    margin-right: 0;
    margin-left: 0; }
  .card > .list-group {
    border-top: inherit;
    border-bottom: inherit; }
    .card > .list-group:first-child {
      border-top-width: 0;
      border-top-left-radius: var(--card-inner-border-radius);
      border-top-right-radius: var(--card-inner-border-radius); }
    .card > .list-group:last-child {
      border-bottom-width: 0;
      border-bottom-right-radius: var(--card-inner-border-radius);
      border-bottom-left-radius: var(--card-inner-border-radius); }
  .card > .card-header + .list-group,
  .card > .list-group + .card-footer {
    border-top: 0; }

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: var(--card-body-padding); }

.card-title {
  margin-bottom: var(--card-spacer-y); }

.card-subtitle {
  margin-top: -var(--card-spacer-y)/2;
  margin-bottom: 0; }

.card-text:last-child {
  margin-bottom: 0; }

.card-link:hover {
  text-decoration: none; }

.card-link + .card-link {
  margin-left: var(--card-spacer-x); }

.card-header {
  padding: var(--card-heading-padding);
  margin-bottom: 0;
  background-color: var(--card-cap-bg);
  border-bottom: var(--card-border); }
  .card-header:first-child {
    border-radius: var(--card-inner-border-radius) var(--card-inner-border-radius) 0 0; }

.card-footer {
  padding: var(--card-footer-padding);
  background-color: var(--card-cap-bg);
  border-top: var(--card-border); }
  .card-footer:last-child {
    border-radius: 0 0 var(--card-inner-border-radius) var(--card-inner-border-radius); }

.card-header-tabs {
  margin-right: -var(--card-spacer-x)/2;
  margin-bottom: -var(--card-spacer-y);
  margin-left: -var(--card-spacer-x)/2;
  border-bottom: 0; }

.card-header-pills {
  margin-right: -var(--card-spacer-x)/2;
  margin-left: -var(--card-spacer-x)/2; }

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: var(--card-img-overlay-padding);
  border-radius: var(--card-inner-border-radius); }

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%; }

.card-img,
.card-img-top {
  border-top-left-radius: var(--card-inner-border-radius);
  border-top-right-radius: var(--card-inner-border-radius); }

.card-img,
.card-img-bottom {
  border-bottom-right-radius: var(--card-inner-border-radius);
  border-bottom-left-radius: var(--card-inner-border-radius); }

.card-deck .card {
  margin-bottom: var(--card-deck-margin); }

@media (min-width: 480px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -var(--card-deck-margin);
    margin-left: -var(--card-deck-margin); }
    .card-deck .card {
      flex: 1 0 0%;
      margin-right: var(--card-deck-margin);
      margin-bottom: 0;
      margin-left: var(--card-deck-margin); } }

.card-group > .card {
  margin-bottom: var(--card-group-margin); }

@media (min-width: 480px) {
  .card-group {
    display: flex;
    flex-flow: row wrap; }
    .card-group > .card {
      flex: 1 0 0%;
      margin-bottom: 0; }
      .card-group > .card + .card {
        margin-left: 0;
        border-left: 0; }
      .card-group > .card:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0; }
        .card-group > .card:not(:last-child) .card-img-top,
        .card-group > .card:not(:last-child) .card-header {
          border-top-right-radius: 0; }
        .card-group > .card:not(:last-child) .card-img-bottom,
        .card-group > .card:not(:last-child) .card-footer {
          border-bottom-right-radius: 0; }
      .card-group > .card:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0; }
        .card-group > .card:not(:first-child) .card-img-top,
        .card-group > .card:not(:first-child) .card-header {
          border-top-left-radius: 0; }
        .card-group > .card:not(:first-child) .card-img-bottom,
        .card-group > .card:not(:first-child) .card-footer {
          border-bottom-left-radius: 0; } }

.card-columns .card {
  margin-bottom: var(--card-columns-margin); }

@media (min-width: 480px) {
  .card-columns {
    column-count: var(--card-columns-count);
    column-gap: var(--card-columns-gap);
    orphans: 1;
    widows: 1; }
    .card-columns .card {
      display: inline-block;
      width: 100%; } }

.accordion {
  overflow-anchor: none; }
  .accordion > .card {
    overflow: hidden; }
    .accordion > .card:not(:last-of-type) {
      border-bottom: 0;
      border-bottom-right-radius: 0;
      border-bottom-left-radius: 0; }
    .accordion > .card:not(:first-of-type) {
      border-top-left-radius: 0;
      border-top-right-radius: 0; }
    .accordion > .card > .card-header {
      border-radius: 0;
      margin-bottom: -1px; }

.img-fluid {
  max-width: 100%;
  height: auto; }

.img-thumbnail {
  padding: var(--thumbnail-padding);
  background-color: var(--thumbnail-bg);
  border: var(--thumbnail-border-width) solid var(--thumbnail-border-color);
  border-radius: var(--thumbnail-border-radius);
  box-shadow: var(--thumbnail-box-shadow);
  max-width: 100%;
  height: auto; }

.figure {
  display: inline-block; }

.figure-img {
  margin-bottom: var(--ui-block-spacing-xs)/2;
  line-height: 1; }

.figure-caption {
  font-size: var(--figure-caption-font-size);
  color: var(--figure-caption-color); }

*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block; }

body {
  margin: 0;
  font-family: var(--font-family-base), sans-serif;
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-base);
  line-height: var(--line-height-base);
  color: var(--text-body-color);
  background: var(--body-bg);
  text-align: left; }

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: var(--headings-margin-bottom); }

p {
  margin-top: 0;
  margin-bottom: var(--paragraph-margin-bottom); }

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none; }

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit; }

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem; }

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0; }

dt {
  font-weight: var(--dt-font-weight); }

dd {
  margin-bottom: .5rem;
  margin-left: 0; }

blockquote {
  margin: 0 0 1rem; }

b,
strong {
  font-weight: var(--font-weight-bold); }

small,
.small {
  font-size: var(--font-size-xs);
  line-height: var(--line-height-sm); }

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

a {
  color: var(--link-color);
  text-decoration: var(--link-decoration);
  background-color: transparent; }
  a:hover {
    color: var(--link-hover-color);
    text-decoration: var(--link-hover-decoration); }

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none; }
  a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none; }

figure {
  margin: 0 0 1rem; }

img {
  vertical-align: middle;
  border-style: none; }

svg {
  overflow: hidden;
  vertical-align: middle; }

table {
  border-collapse: collapse; }

caption {
  padding-top: var(--table-td-padding);
  padding-bottom: var(--table-td-padding);
  color: var(--table-caption-color);
  text-align: left;
  caption-side: bottom; }

th {
  font-weight: var(--table-th-font-weight);
  text-align: inherit;
  text-align: -webkit-match-parent; }

label {
  display: inline-block;
  margin-bottom: var(--label-margin-bottom); }

button {
  border-radius: 0; }

button:focus:not(:focus-visible) {
  outline: 0; }

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

[role="button"] {
  cursor: pointer; }

select {
  word-wrap: normal; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0; }

textarea {
  overflow: auto;
  resize: vertical; }

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0; }

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal; }
  @media (max-width: 1200px) {
    legend {
      font-size: calc(1.275rem + 0.3vw) ; } }

progress {
  vertical-align: baseline; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button; }

output {
  display: inline-block; }

summary {
  display: list-item;
  cursor: pointer; }

template {
  display: none; }

[hidden] {
  display: none !important; }

@keyframes spinner-border {
  to {
    transform: rotate(360deg); } }

.spinner-border {
  display: inline-block;
  width: var(--spinner-width);
  height: var(--spinner-height);
  vertical-align: text-bottom;
  border: var(--spinner-border-width) solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: .75s linear infinite spinner-border; }

.spinner-border-sm {
  width: var(--spinner-width-sm);
  height: var(--spinner-height-sm);
  border-width: var(--spinner-border-width-sm); }

@keyframes spinner-grow {
  0% {
    transform: scale(0); }
  50% {
    opacity: 1;
    transform: none; } }

.spinner-grow {
  display: inline-block;
  width: var(--spinner-width);
  height: var(--spinner-height);
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: .75s linear infinite spinner-grow; }

.spinner-grow-sm {
  width: var(--spinner-width-sm);
  height: var(--spinner-height-sm); }

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    animation-duration: 1.5s; } }

.toast {
  flex-basis: var(--toast-max-width);
  max-width: var(--toast-max-width);
  font-size: var(--toast-font-size);
  color: var(--toast-color);
  background-color: var(--toast-background-color);
  background-clip: padding-box;
  border: var(--toast-border-width) solid var(--toast-border-color);
  box-shadow: var(--toast-box-shadow);
  opacity: 0;
  border-radius: var(--toast-border-radius); }
  .toast:not(:last-child) {
    margin-bottom: var(--toast-padding-x); }
  .toast.showing {
    opacity: 1; }
  .toast.show {
    display: block;
    opacity: 1; }
  .toast.hide {
    display: none; }

.toast-header {
  display: flex;
  align-items: center;
  padding: var(--toast-padding-y) var(--toast-padding-x);
  color: var(--toast-header-color);
  background-color: var(--toast-header-background-color);
  background-clip: padding-box;
  border-bottom: var(--toast-border-width) solid var(--toast-header-border-color);
  border-top-left-radius: calc(var(--toast-border-radius) - var(--toast-border-width));
  border-top-right-radius: calc(var(--toast-border-radius) - var(--toast-border-width)); }
  .toast-header .close {
    position: static;
    margin-bottom: 0 !important;
    margin-left: 0.5rem !important; }

.toast-body {
  padding: var(--toast-padding-x); }

.fade {
  transition: var(--transition-fade); }
  @media (prefers-reduced-motion: reduce) {
    .fade {
      transition: none; } }
  .fade:not(.show) {
    opacity: 0; }

.collapse:not(.lu-collapse):not(.show) {
  display: none; }

.collapse:not(.lu-collapse).in {
  display: block; }

.collapse.lu-collapse:not(.lu-show) {
  display: none; }

.collapse.lu-collapse.in {
  display: block; }

.lu-collapsing,
.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: var(--transition-collapse); }
  @media (prefers-reduced-motion: reduce) {
    .lu-collapsing,
    .collapsing {
      transition: none; } }

.panel.panel-check.checked + .panel.panel-check:not(.checked) .panel-collapse.collapse.show {
  display: none; }

/**
 * -------------------------
 * Markdown Editor Typography
 * -------------------------
 */
/*
*******************************************
Article - Content
*******************************************
*/
.markdown-content,
.md-preview {
  color: var(--markdown-font-color);
  font-size: var(--markdown-font-size-base);
  font-weight: var(--markdown-font-weight-base);
  line-height: var(--markdown-line-height-base);
  word-break: break-word; }
  .markdown-content > *:not(pre:has(code)):not(hr),
  .md-preview > *:not(pre:has(code)):not(hr) {
    margin: 0 !important; }
  .markdown-content > *:first-child,
  .md-preview > *:first-child {
    margin-top: 0; }
  .markdown-content > *:last-child,
  .md-preview > *:last-child {
    margin-bottom: 0; }
  .markdown-content h1,
  .markdown-content .h1,
  .md-preview h1,
  .md-preview .h1 {
    font-size: var(--font-size-h3);
    line-height: var(--line-height-h3);
    font-weight: var(--font-weight-light);
    padding-top: var(--markdown-h1-padding-top);
    padding-bottom: var(--markdown-h1-padding-bottom); }
  .markdown-content h2,
  .markdown-content .h2,
  .md-preview h2,
  .md-preview .h2 {
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
    font-weight: var(--font-weight-light);
    padding-top: var(--markdown-h2-padding-top);
    padding-bottom: var(--markdown-h2-padding-bottom); }
  .markdown-content h3,
  .markdown-content .h3,
  .md-preview h3,
  .md-preview .h3 {
    font-size: var(--font-size-h5);
    line-height: var(--line-height-h5);
    font-weight: var(--font-weight-medium);
    padding-top: var(--markdown-h3-padding-top);
    padding-bottom: var(--markdown-h3-padding-bottom); }
  .markdown-content h4,
  .markdown-content .h4,
  .md-preview h4,
  .md-preview .h4 {
    font-size: var(--font-size-h6);
    line-height: var(--line-height-h6);
    font-weight: var(--font-weight-medium);
    padding-top: var(--markdown-h4-padding-top);
    padding-bottom: var(--markdown-h4-padding-bottom); }
  .markdown-content h5,
  .markdown-content .h5,
  .md-preview h5,
  .md-preview .h5 {
    font-size: var(--font-size-md);
    line-height: var(--line-height-md);
    font-weight: var(--font-weight-medium);
    padding-top: var(--markdown-h5-padding-top);
    padding-bottom: var(--markdown-h5-padding-bottom); }
  .markdown-content h6,
  .markdown-content .h6,
  .md-preview h6,
  .md-preview .h6 {
    font-size: var(--font-size-base);
    line-height: var(--line-height-base);
    font-weight: var(--font-weight-medium);
    padding-top: var(--markdown-h6-padding-top);
    padding-bottom: var(--markdown-h6-padding-bottom); }
  .markdown-content h1, .markdown-content h2, .markdown-content h3, .markdown-content h4, .markdown-content h5, .markdown-content h6,
  .md-preview h1,
  .md-preview h2,
  .md-preview h3,
  .md-preview h4,
  .md-preview h5,
  .md-preview h6 {
    color: var(--text-heading-color); }
    .markdown-content h1 + br, .markdown-content h2 + br, .markdown-content h3 + br, .markdown-content h4 + br, .markdown-content h5 + br, .markdown-content h6 + br,
    .md-preview h1 + br,
    .md-preview h2 + br,
    .md-preview h3 + br,
    .md-preview h4 + br,
    .md-preview h5 + br,
    .md-preview h6 + br {
      display: none; }
  .markdown-content p, .markdown-content ol,
  .md-preview p,
  .md-preview ol {
    color: var(--text-body-color);
    padding-bottom: var(--markdown-paragraph-padding-bottom); }
  .markdown-content b,
  .markdown-content strong,
  .md-preview b,
  .md-preview strong {
    font-weight: var(--font-weight-bold);
    color: var(--text-heading-color); }
  .markdown-content .table,
  .markdown-content table,
  .md-preview .table,
  .md-preview table {
    border: 1px solid var(--ui-block-divider-color); }
    .markdown-content .table td,
    .markdown-content .table th,
    .markdown-content table td,
    .markdown-content table th,
    .md-preview .table td,
    .md-preview .table th,
    .md-preview table td,
    .md-preview table th {
      height: auto; }
  .markdown-content img,
  .md-preview img {
    max-width: 100%;
    height: auto; }
  .markdown-content ul,
  .md-preview ul {
    margin-bottom: 0;
    padding-left: 30px;
    padding-bottom: 12px; }
    .markdown-content ul li,
    .md-preview ul li {
      font-size: var(--font-size-lg);
      line-height: var(--line-height-lg);
      color: var(--text-body-color); }
      .markdown-content ul li code,
      .md-preview ul li code {
        background-color: var(--state-success-bg);
        color: var(--state-success-text);
        border: 1px solid var(--state-success-border);
        font-size: 12px;
        line-height: 20px;
        color: var(--text-body-color);
        padding-inline: 4px; }
  .markdown-content blockquote,
  .md-preview blockquote {
    padding: 0 0 0 var(--spacing-2x);
    background: transparent;
    border: none;
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-lg);
    color: var(--text-body-color);
    padding-bottom: var(--markdown-blockquote-padding-bottom); }
    .markdown-content blockquote p,
    .md-preview blockquote p {
      margin-bottom: 0;
      padding-bottom: 0;
      position: relative; }
      .markdown-content blockquote p::after,
      .md-preview blockquote p::after {
        background-image: none;
        background-color: var(--text-primary-color);
        top: 0;
        left: calc(-1 * var(--spacing-2x));
        width: 2px;
        height: 100%; }
  .markdown-content pre,
  .md-preview pre {
    background-color: var(--gray-faded);
    border: 1px solid var(--gray-lighter-3);
    padding: 12px;
    border-radius: var(border-radius-sm); }
    .markdown-content pre:has(code),
    .md-preview pre:has(code) {
      margin-bottom: var(--markdown-code-padding-bottom); }
    .markdown-content pre code,
    .md-preview pre code {
      background: unset;
      color: var(--text-body-color);
      font-size: var(--font-size-lg);
      line-height: var(--line-height-lg); }
  .markdown-content .ip-address,
  .md-preview .ip-address {
    font-size: var(--font-size-xxs);
    line-height: var(--line-heigth-xxs); }

.announcements-list img {
  max-width: 100%;
  height: auto;
  margin: var(--spacing-1x) 0; }

/**
 * -------------------------
 * Markdown Editor
 * -------------------------
 */
.md-editor {
  border: 1px solid var(--input-border-color);
  border-radius: var(--input-border-radius);
  transition: all var(--transition-base);
  background: var(--input-bg); }
  .md-editor.active {
    border-color: var(--input-focus-border-color); }

.md-editor .md-header:has(.btn.active[data-handler="bootstrap-markdown-cmdPreview"]) .btn-group:not(.btn-group-preview) {
  display: none; }

.md-editor .md-header:has(.btn.active[data-handler="bootstrap-markdown-cmdPreview"]) .btn-group.btn-group-preview::after {
  content: none; }

.md-editor .md-header:has(.btn.active[data-handler="bootstrap-markdown-cmdPreview"]) .btn-group.btn-group-preview .ls-arrow-left {
  pointer-events: none; }

.md-editor > .btn-toolbar.md-header {
  display: flex;
  align-items: center; }

.md-editor > .btn-toolbar > .md-controls {
  margin-left: auto; }

.md-editor > .btn-toolbar > .btn-group {
  display: flex;
  position: relative;
  padding-inline: var(--spacing-1x);
  margin-left: 0; }
  .md-editor > .btn-toolbar > .btn-group::after {
    position: absolute;
    content: '';
    right: 0;
    top: 50%;
    background: var(--ui-block-divider-color);
    transform: translateY(-50%);
    width: 1px;
    height: 16px; }
  .md-editor > .btn-toolbar > .btn-group:has(button[data-handler="bootstrap-markdown-cmdPreview"]) {
    order: -1;
    padding-left: 0; }
    .md-editor > .btn-toolbar > .btn-group:has(button[data-handler="bootstrap-markdown-cmdPreview"]) .btn-default {
      padding: 6px 12px !important;
      font-weight: var(--font-weight-medium);
      width: unset !important; }
  .md-editor > .btn-toolbar > .btn-group:nth-child(5) {
    padding-left: 10px; }
    .md-editor > .btn-toolbar > .btn-group:nth-child(5)::after {
      content: none; }
  .md-editor > .btn-toolbar > .btn-group .btn:not(.btn-primary) {
    padding: 0;
    margin-right: 0;
    border: none;
    box-shadow: none;
    background: transparent;
    width: 30px; }
    .md-editor > .btn-toolbar > .btn-group .btn:not(.btn-primary) .fa,
    .md-editor > .btn-toolbar > .btn-group .btn:not(.btn-primary) .fas {
      margin: 0;
      line-height: inherit;
      color: var(--gray-icons);
      transition: all var(--transition-base);
      width: 16px;
      height: 16px; }
    .md-editor > .btn-toolbar > .btn-group .btn:not(.btn-primary) .fa-search {
      margin-right: 6px; }
    .md-editor > .btn-toolbar > .btn-group .btn:not(.btn-primary):hover {
      color: var(--brand-primary); }
      .md-editor > .btn-toolbar > .btn-group .btn:not(.btn-primary):hover .fa,
      .md-editor > .btn-toolbar > .btn-group .btn:not(.btn-primary):hover .fas {
        color: var(--gray-icons-hover); }

.md-editor > textarea.markdown-editor,
.md-editor > .md-preview {
  padding: 15px !important;
  border-top: 1px solid var(--ui-block-divider-color) !important;
  border-bottom: 1px solid var(--ui-block-divider-color) !important;
  background-color: var(--input-bg) !important; }

.markdown-editor-status {
  display: flex;
  align-items: center;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  color: var(--text-body-color); }

.small-font {
  font-size: var(--font-size-xxs);
  line-height: var(--line-height-xxs);
  font-weight: 400; }

/**
 * -------------------------
 * Markdown Content Formatting
 * -------------------------
 */
.md-editor .md-footer {
  display: block;
  padding: var(--spacing-1x) var(--spacing-2x); }

.md-editor > .md-header {
  display: block;
  padding: calc(var(--spacing-1x) / 2); }

.md-editor > .md-header {
  margin: 0; }

.md-editor > .md-preview {
  background: #fff;
  border-top: 1px dashed #ddd;
  border-bottom: 1px dashed #ddd;
  min-height: 10px;
  overflow: auto; }

.md-editor > textarea {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  font-size: 14px;
  outline: 0;
  margin: 0;
  display: block;
  padding: 0;
  width: 100%;
  border: 0;
  border-top: 1px dashed #ddd;
  border-bottom: 1px dashed #ddd;
  border-radius: 0;
  box-shadow: none;
  background: #eee; }

.md-editor > textarea:focus {
  box-shadow: none;
  background: #fff; }

.md-editor .md-controls .md-control {
  width: 30px;
  height: 30px;
  display: inline-flex;
  justify-content: center;
  align-items: center; }
  .md-editor .md-controls .md-control:not(:hover) {
    color: var(--ui-icon-color); }
  .md-editor .md-controls .md-control:focus-visible {
    color: var(--brand-primary-darker); }

.md-editor.md-fullscreen-mode {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  padding: 60px 30px 15px;
  background: #fff !important;
  border: 0 !important; }

.md-editor.md-fullscreen-mode .md-footer {
  display: none; }

.md-editor.md-fullscreen-mode .md-input,
.md-editor.md-fullscreen-mode .md-preview {
  margin: 0 auto !important;
  height: 100% !important;
  font-size: 20px !important;
  padding: 20px !important;
  color: #999;
  line-height: 1.6em !important;
  resize: none !important;
  box-shadow: none !important;
  background: #fff !important;
  border: 0 !important; }

.md-editor.md-fullscreen-mode .md-preview {
  color: #333;
  overflow: auto; }

.md-editor.md-fullscreen-mode .md-input:focus,
.md-editor.md-fullscreen-mode .md-input:hover {
  color: #333;
  background: #fff !important; }

.md-editor.md-fullscreen-mode .md-header {
  background: 0 0;
  text-align: center;
  position: fixed;
  width: 100%;
  top: 20px; }

.md-editor.md-fullscreen-mode .btn-group {
  float: none; }

.md-editor.md-fullscreen-mode .btn {
  border: 0;
  background: 0 0;
  color: #b3b3b3; }

.md-editor.md-fullscreen-mode .btn.active,
.md-editor.md-fullscreen-mode .btn:active,
.md-editor.md-fullscreen-mode .btn:focus,
.md-editor.md-fullscreen-mode .btn:hover {
  box-shadow: none;
  color: #333; }

.md-editor.md-fullscreen-mode .md-fullscreen-controls {
  position: absolute;
  top: 20px;
  right: 20px;
  text-align: right;
  z-index: 1002;
  display: block; }

.md-editor.md-fullscreen-mode .md-fullscreen-controls a {
  color: #b3b3b3;
  clear: right;
  margin: 10px;
  width: 30px;
  height: 30px;
  text-align: center; }

.md-editor.md-fullscreen-mode .md-fullscreen-controls a:hover {
  color: #333;
  text-decoration: none; }

.md-editor.md-fullscreen-mode .md-editor {
  height: 100% !important;
  position: relative; }

.md-editor .md-fullscreen-controls {
  display: none; }

.md-nooverflow {
  overflow: hidden;
  position: fixed;
  width: 100%; }

table.dataTable {
  clear: both;
  max-width: none !important;
  border-collapse: separate !important; }
  table.dataTable td,
  table.dataTable th {
    box-sizing: border-box !important; }
    table.dataTable td.dataTables_empty,
    table.dataTable th.dataTables_empty {
      text-align: center; }
    table.dataTable td:focus,
    table.dataTable th:focus {
      outline: none; }
  table.dataTable > thead > tr > th:empty {
    padding-right: 0 !important; }
  table.dataTable.nowrap th,
  table.dataTable.nowrap td {
    white-space: nowrap; }

div.dataTables_wrapper div.dataTables_length label {
  display: flex;
  align-items: center;
  font-weight: normal;
  text-align: left;
  white-space: nowrap; }

div.dataTables_wrapper div.dataTables_length select {
  padding-top: var(--ui-padding-xs-v);
  padding-bottom: var(--ui-padding-xs-v);
  padding-left: var(--ui-padding-xs-h);
  height: var(--ui-height-xs);
  display: inline-block; }

div.dataTables_wrapper div.dataTables_filter {
  text-align: right; }
  div.dataTables_wrapper div.dataTables_filter label {
    font-weight: normal;
    white-space: nowrap;
    text-align: left; }
  div.dataTables_wrapper div.dataTables_filter input {
    margin-left: 0.5em;
    display: inline-block;
    width: auto; }

div.dataTables_wrapper div.dataTables_info {
  padding-top: var(--spacing-1x);
  white-space: nowrap; }

div.dataTables_wrapper div.dataTables_paginate {
  margin: 0;
  white-space: nowrap;
  text-align: right;
  display: flex;
  align-items: center; }
  div.dataTables_wrapper div.dataTables_paginate ul.pagination {
    white-space: nowrap; }

div.dataTables_wrapper div.dataTables_processing {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 200px;
  margin-left: -100px;
  margin-top: -26px;
  text-align: center;
  padding: 1em 0; }

table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc,
table.dataTable thead .sorting_asc_disabled,
table.dataTable thead .sorting_desc_disabled {
  white-space: nowrap;
  cursor: pointer;
  position: relative; }
  table.dataTable thead .sorting > span,
  table.dataTable thead .sorting_asc > span,
  table.dataTable thead .sorting_desc > span,
  table.dataTable thead .sorting_asc_disabled > span,
  table.dataTable thead .sorting_desc_disabled > span {
    display: flex;
    align-items: center; }
    table.dataTable thead .sorting > span span:not(.sorting-arrows),
    table.dataTable thead .sorting_asc > span span:not(.sorting-arrows),
    table.dataTable thead .sorting_desc > span span:not(.sorting-arrows),
    table.dataTable thead .sorting_asc_disabled > span span:not(.sorting-arrows),
    table.dataTable thead .sorting_desc_disabled > span span:not(.sorting-arrows) {
      white-space: normal; }
  table.dataTable thead .sorting:before, table.dataTable thead .sorting:after,
  table.dataTable thead .sorting_asc:before,
  table.dataTable thead .sorting_asc:after,
  table.dataTable thead .sorting_desc:before,
  table.dataTable thead .sorting_desc:after,
  table.dataTable thead .sorting_asc_disabled:before,
  table.dataTable thead .sorting_asc_disabled:after,
  table.dataTable thead .sorting_desc_disabled:before,
  table.dataTable thead .sorting_desc_disabled:after {
    display: none !important; }
  table.dataTable thead .sorting .sorting-arrows,
  table.dataTable thead .sorting_asc .sorting-arrows,
  table.dataTable thead .sorting_desc .sorting-arrows,
  table.dataTable thead .sorting_asc_disabled .sorting-arrows,
  table.dataTable thead .sorting_desc_disabled .sorting-arrows {
    display: inline-block;
    position: relative;
    margin-left: var(--spacing-1x);
    height: 12px;
    width: 12px;
    vertical-align: middle; }
    table.dataTable thead .sorting .sorting-arrows:before, table.dataTable thead .sorting .sorting-arrows:after,
    table.dataTable thead .sorting_asc .sorting-arrows:before,
    table.dataTable thead .sorting_asc .sorting-arrows:after,
    table.dataTable thead .sorting_desc .sorting-arrows:before,
    table.dataTable thead .sorting_desc .sorting-arrows:after,
    table.dataTable thead .sorting_asc_disabled .sorting-arrows:before,
    table.dataTable thead .sorting_asc_disabled .sorting-arrows:after,
    table.dataTable thead .sorting_desc_disabled .sorting-arrows:before,
    table.dataTable thead .sorting_desc_disabled .sorting-arrows:after {
      display: block;
      position: absolute;
      left: 0;
      font-family: var(--font-family-icons-small) !important;
      color: var(--decoration-icons);
      line-height: 1;
      font-size: var(--ui-icon-size-small); }
    table.dataTable thead .sorting .sorting-arrows:before,
    table.dataTable thead .sorting_asc .sorting-arrows:before,
    table.dataTable thead .sorting_desc .sorting-arrows:before,
    table.dataTable thead .sorting_asc_disabled .sorting-arrows:before,
    table.dataTable thead .sorting_desc_disabled .sorting-arrows:before {
      top: 0;
      content: "\e939" !important; }
    table.dataTable thead .sorting .sorting-arrows:after,
    table.dataTable thead .sorting_asc .sorting-arrows:after,
    table.dataTable thead .sorting_desc .sorting-arrows:after,
    table.dataTable thead .sorting_asc_disabled .sorting-arrows:after,
    table.dataTable thead .sorting_desc_disabled .sorting-arrows:after {
      bottom: 0;
      content: "\e93a" !important; }

table.dataTable thead .sorting_desc .sorting-arrows:after {
  color: var(--text-primary-color); }

table.dataTable thead .sorting_asc .sorting-arrows:before {
  color: var(--text-primary-color); }

table.dataTable thead .sorting_disabled {
  cursor: auto !important; }
  table.dataTable thead .sorting_disabled .sorting-arrows {
    display: none; }

div.dataTables_scrollHead table.dataTable {
  margin-bottom: 0 !important; }

div.dataTables_scrollBody > table {
  border-top: none;
  margin-top: 0 !important;
  margin-bottom: 0 !important; }
  div.dataTables_scrollBody > table > thead .sorting:after,
  div.dataTables_scrollBody > table > thead .sorting_asc:after,
  div.dataTables_scrollBody > table > thead .sorting_desc:after {
    display: none; }
  div.dataTables_scrollBody > table > tbody > tr:first-child > th,
  div.dataTables_scrollBody > table > tbody > tr:first-child > td {
    border-top: none; }

div.dataTables_scrollFoot > .dataTables_scrollFootInner {
  box-sizing: content-box; }
  div.dataTables_scrollFoot > .dataTables_scrollFootInner > table {
    margin-top: 0 !important;
    border-top: none; }

table.dataTable.table-condensed > thead > tr > th {
  padding-right: 20px; }

table.dataTable.table-condensed .sorting:after,
table.dataTable.table-condensed .sorting_asc:after,
table.dataTable.table-condensed .sorting_desc:after {
  top: 6px;
  right: 6px; }

table.table-bordered.dataTable th,
table.table-bordered.dataTable td {
  border-left-width: 0; }
  table.table-bordered.dataTable th:last-child, table.table-bordered.dataTable th:last-child,
  table.table-bordered.dataTable td:last-child,
  table.table-bordered.dataTable td:last-child {
    border-right-width: 0; }

table.table-bordered.dataTable tbody th,
table.table-bordered.dataTable tbody td {
  border-bottom-width: 0; }

div.dataTables_scrollHead table.table-bordered {
  border-bottom-width: 0; }

div.table-responsive > div.dataTables_wrapper > div.row {
  margin: 0; }
  div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:first-child {
    padding-left: 0; }
  div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:last-child {
    padding-right: 0; }

table.dataTable.dtr-inline.collapsed > tbody > tr > td.child,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.child,
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty {
  cursor: default !important; }
  table.dataTable.dtr-inline.collapsed > tbody > tr > td.child:before,
  table.dataTable.dtr-inline.collapsed > tbody > tr > th.child:before,
  table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty:before {
    display: none !important; }

table.dataTable.dtr-inline.collapsed > tbody > tr > td.child,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.child {
  position: relative;
  border: 0;
  padding-left: 60px; }
  table.dataTable.dtr-inline.collapsed > tbody > tr > td.child ul,
  table.dataTable.dtr-inline.collapsed > tbody > tr > th.child ul {
    width: 100%; }
    table.dataTable.dtr-inline.collapsed > tbody > tr > td.child ul:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr > th.child ul:before {
      display: flex;
      content: '';
      position: absolute;
      background-color: var(--table-container-header-bg);
      top: 0;
      bottom: 0;
      left: 0;
      width: 44px; }
    table.dataTable.dtr-inline.collapsed > tbody > tr > td.child ul li,
    table.dataTable.dtr-inline.collapsed > tbody > tr > th.child ul li {
      border: 0;
      display: flex;
      flex-wrap: wrap; }

table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child,
table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child {
  position: relative;
  padding-left: 60px;
  cursor: pointer; }
  table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child:before,
  table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child:before {
    display: none; }
  table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child .btn-table-collapse,
  table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child .btn-table-collapse {
    top: 0px !important;
    left: 0;
    bottom: 0;
    border: 0;
    border-radius: 0;
    height: 100%;
    width: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    color: var(--text-lighter-color);
    text-align: center;
    text-indent: 0 !important;
    outline: none;
    background-color: var(--table-container-header-bg); }
    table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child .btn-table-collapse:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child .btn-table-collapse:before {
      font-family: var(--font-family-icons-small);
      font-size: var(--ui-icon-size-small); }
    table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child .btn-table-collapse:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child .btn-table-collapse:before {
      content: "\e931"; }
  table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child .product-graphic,
  table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child .product-graphic {
    display: none; }

table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child .btn-table-collapse,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child .btn-table-collapse {
  background-color: var(--table-container-header-bg) !important; }
  table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child .btn-table-collapse:before,
  table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child .btn-table-collapse:before {
    content: "\e92c"; }

table.dataTable.dtr-column > tbody > tr > td.control,
table.dataTable.dtr-column > tbody > tr > th.control {
  position: relative;
  cursor: pointer; }
  table.dataTable.dtr-column > tbody > tr > td.control:before,
  table.dataTable.dtr-column > tbody > tr > th.control:before {
    top: 50%;
    left: 50%;
    height: 16px;
    width: 16px;
    margin-top: -10px;
    margin-left: -10px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    color: var(--text-lighter-color);
    text-align: center;
    text-indent: 0 !important;
    outline: none;
    background-color: var(--table-container-header-bg); }
    table.dataTable.dtr-column > tbody > tr > td.control:before:before,
    table.dataTable.dtr-column > tbody > tr > th.control:before:before {
      font-family: var(--font-family-icons-small);
      font-size: var(--ui-icon-size-small); }
    table.dataTable.dtr-column > tbody > tr > td.control:before:before,
    table.dataTable.dtr-column > tbody > tr > th.control:before:before {
      content: "\e931"; }

table.dataTable.dtr-column > tbody > tr.parent td.control:before,
table.dataTable.dtr-column > tbody > tr.parent th.control:before {
  background-color: var(--table-container-header-bg) !important; }
  table.dataTable.dtr-column > tbody > tr.parent td.control:before:before,
  table.dataTable.dtr-column > tbody > tr.parent th.control:before:before {
    content: "\e92c"; }

table.dataTable > tbody > tr.child {
  padding: 0.5em 1em; }
  table.dataTable > tbody > tr.child:hover {
    background: transparent !important; }
  table.dataTable > tbody > tr.child ul.dtr-details {
    display: inline-block;
    list-style-type: none;
    margin: 0;
    padding: 0; }
    table.dataTable > tbody > tr.child ul.dtr-details > li {
      display: flex;
      flex-wrap: wrap; }
      table.dataTable > tbody > tr.child ul.dtr-details > li:first-child {
        padding-top: 0; }
      table.dataTable > tbody > tr.child ul.dtr-details > li:last-child {
        border-bottom: none; }
  table.dataTable > tbody > tr.child span.dtr-title {
    min-width: auto;
    display: inline-block;
    margin-right: var(--spacing-1x);
    color: var(--text-lighter-color);
    font-weight: 400; }
    table.dataTable > tbody > tr.child span.dtr-title:after {
      content: ":"; }
  table.dataTable > tbody > tr.child span.dtr-data br {
    display: none; }

.btn-table-collapse {
  display: none; }

div.dtr-modal {
  position: fixed;
  box-sizing: border-box;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 100;
  padding: 10em 1em; }
  div.dtr-modal div.dtr-modal-display {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 50%;
    height: 50%;
    overflow: auto;
    margin: auto;
    z-index: 102;
    overflow: auto;
    background-color: #f5f5f7;
    border: 1px solid black;
    border-radius: 0.5em;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6); }
  div.dtr-modal div.dtr-modal-content {
    position: relative;
    padding: 1em; }
  div.dtr-modal div.dtr-modal-close {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 22px;
    height: 22px;
    border: 1px solid #eaeaea;
    background-color: #f9f9f9;
    text-align: center;
    border-radius: 3px;
    cursor: pointer;
    z-index: 12; }
    div.dtr-modal div.dtr-modal-close:hover {
      background-color: #eaeaea; }
  div.dtr-modal div.dtr-modal-background {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 101;
    background: rgba(0, 0, 0, 0.6); }

table.dtr-inline.collapsed > thead > tr > th:first-child {
  padding-left: 60px !important; }
  table.dtr-inline.collapsed > thead > tr > th:first-child .btn-table-collapse {
    top: 0 !important;
    left: 0;
    bottom: 0;
    border: 0;
    border-radius: 0;
    height: 100%;
    width: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    color: var(--text-lighter-color);
    text-align: center;
    text-indent: 0 !important;
    outline: none;
    font-size: 14px;
    background-color: #f6f7f8;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    color: var(--text-lighter-color);
    text-align: center;
    text-indent: 0 !important;
    outline: none;
    background-color: var(--table-container-header-bg); }
    table.dtr-inline.collapsed > thead > tr > th:first-child .btn-table-collapse:before {
      font-family: var(--font-family-icons-small);
      font-size: var(--ui-icon-size-small); }
    table.dtr-inline.collapsed > thead > tr > th:first-child .btn-table-collapse:before {
      content: "\e931"; }
    table.dtr-inline.collapsed > thead > tr > th:first-child .btn-table-collapse.expanded {
      background-color: var(--table-container-header-bg) !important; }
      table.dtr-inline.collapsed > thead > tr > th:first-child .btn-table-collapse.expanded:before {
        content: "\e92c"; }
  table.dtr-inline.collapsed > thead > tr > th:first-child .checkbox-styled {
    margin-right: -1px; }

@media (max-width: 767.98px) {
  div.dtr-modal div.dtr-modal-display {
    width: 95%; } }

.intl-tel-input {
  position: relative; }
  .intl-tel-input * {
    box-sizing: border-box;
    -moz-box-sizing: border-box; }
  .intl-tel-input .hide {
    display: none; }
  .intl-tel-input .v-hide {
    visibility: hidden; }
  .intl-tel-input input, .intl-tel-input input[type=text], .intl-tel-input input[type=tel] {
    position: relative;
    z-index: 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-left: 106px;
    margin-right: 0; }
  .intl-tel-input .flag-container {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    padding: 1px; }
  .intl-tel-input .selected-flag {
    z-index: 1;
    position: relative;
    width: 94px;
    outline: none;
    height: 100%;
    padding: 0 20px 0 12px;
    border-right: 1px solid var(--input-border); }
    .intl-tel-input .selected-flag:focus-visible {
      color: var(--text-primary-color); }
      .intl-tel-input .selected-flag:focus-visible .iti-arrow {
        border-top-color: var(--brand-primary); }
    .intl-tel-input .selected-flag .iti-flag {
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto; }
    .intl-tel-input .selected-flag .iti-arrow {
      position: absolute;
      top: 50%;
      margin-top: -2px;
      right: 12px;
      width: 0;
      height: 0;
      border-left: 3px solid transparent;
      border-right: 3px solid transparent;
      border-top: 4px solid var(--ui-icon-color); }
      .intl-tel-input .selected-flag .iti-arrow.up {
        border-top: none;
        border-bottom: 4px solid var(--ui-icon-color); }
  .intl-tel-input .country-list {
    position: absolute;
    left: 1px;
    right: 1px;
    z-index: 2;
    list-style: none;
    text-align: left;
    padding: 0;
    margin: 0 0 0 -1px;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
    background: var(--dropdown-bg);
    border: 1px solid var(--input-border);
    white-space: nowrap;
    max-height: 200px;
    overflow-y: scroll; }
    .intl-tel-input .country-list.dropup {
      bottom: 100%;
      margin-bottom: -1px; }
    .intl-tel-input .country-list .flag-box {
      display: inline-block;
      width: 20px; }
    @media (max-width: 500px) {
      .intl-tel-input .country-list {
        white-space: normal; } }
    .intl-tel-input .country-list .divider {
      padding-bottom: 5px;
      margin-bottom: 5px;
      border-bottom: 1px solid var(--input-border); }
    .intl-tel-input .country-list .country {
      padding: 9px 12px 7px;
      display: flex;
      align-items: center; }
      .intl-tel-input .country-list .country .dial-code {
        color: var(--text-body-color); }
      .intl-tel-input .country-list .country.active {
        color: var(--text-primary-color); }
    .intl-tel-input .country-list .country.highlight {
      transition: var(--transition-base);
      background: var(--ui-nav-link-active-bg);
      color: var(--text-primary-color); }
    .intl-tel-input .country-list .flag-box, .intl-tel-input .country-list .country-name, .intl-tel-input .country-list .dial-code {
      vertical-align: middle; }
    .intl-tel-input .country-list .flag-box, .intl-tel-input .country-list .country-name {
      margin-right: var(--spacing-1x); }
    .intl-tel-input .country-list .country-name {
      text-overflow: ellipsis;
      white-space: nowrap;
      overflow: hidden; }
  .intl-tel-input.allow-dropdown .flag-container, .intl-tel-input.separate-dial-code .flag-container {
    right: 0;
    left: 0; }
  .intl-tel-input.allow-dropdown .flag-container:hover {
    cursor: pointer; }
    .intl-tel-input.allow-dropdown .flag-container:hover .selected-flag {
      color: var(--text-primary-color); }
      .intl-tel-input.allow-dropdown .flag-container:hover .selected-flag .iti-arrow {
        border-top-color: var(--brand-primary); }
  .intl-tel-input.allow-dropdown input[disabled] + .flag-container:hover, .intl-tel-input.allow-dropdown input[readonly] + .flag-container:hover {
    cursor: default; }
    .intl-tel-input.allow-dropdown input[disabled] + .flag-container:hover .selected-flag, .intl-tel-input.allow-dropdown input[readonly] + .flag-container:hover .selected-flag {
      background-color: transparent; }
  .intl-tel-input.separate-dial-code .selected-flag {
    display: table; }
  .intl-tel-input.separate-dial-code .selected-dial-code {
    display: table-cell;
    vertical-align: middle;
    padding-top: 3px;
    padding-left: 28px; }
  .intl-tel-input.iti-container {
    position: absolute;
    top: -1000px;
    left: -1000px;
    z-index: 1060;
    padding: 1px; }
    .intl-tel-input.iti-container:hover {
      cursor: pointer; }

.iti-mobile .intl-tel-input.iti-container {
  top: 30px;
  bottom: 30px;
  left: 30px;
  right: 30px;
  position: fixed; }

.iti-mobile .intl-tel-input .country-list {
  max-height: 100%;
  width: 100%; }
  .iti-mobile .intl-tel-input .country-list .country {
    padding: 10px 10px;
    line-height: 1.5em; }

.iti-flag {
  width: 20px; }
  .iti-flag.be {
    width: 18px; }
  .iti-flag.ch {
    width: 15px; }
  .iti-flag.mc {
    width: 19px; }
  .iti-flag.ne {
    width: 18px; }
  .iti-flag.np {
    width: 13px; }
  .iti-flag.va {
    width: 15px; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    .iti-flag {
      background-size: 5630px 15px; } }
  .iti-flag.ac {
    height: 10px;
    background-position: 0px 0px; }
  .iti-flag.ad {
    height: 14px;
    background-position: -22px 0px; }
  .iti-flag.ae {
    height: 10px;
    background-position: -44px 0px; }
  .iti-flag.af {
    height: 14px;
    background-position: -66px 0px; }
  .iti-flag.ag {
    height: 14px;
    background-position: -88px 0px; }
  .iti-flag.ai {
    height: 10px;
    background-position: -110px 0px; }
  .iti-flag.al {
    height: 15px;
    background-position: -132px 0px; }
  .iti-flag.am {
    height: 10px;
    background-position: -154px 0px; }
  .iti-flag.ao {
    height: 14px;
    background-position: -176px 0px; }
  .iti-flag.aq {
    height: 14px;
    background-position: -198px 0px; }
  .iti-flag.ar {
    height: 13px;
    background-position: -220px 0px; }
  .iti-flag.as {
    height: 10px;
    background-position: -242px 0px; }
  .iti-flag.at {
    height: 14px;
    background-position: -264px 0px; }
  .iti-flag.au {
    height: 10px;
    background-position: -286px 0px; }
  .iti-flag.aw {
    height: 14px;
    background-position: -308px 0px; }
  .iti-flag.ax {
    height: 13px;
    background-position: -330px 0px; }
  .iti-flag.az {
    height: 10px;
    background-position: -352px 0px; }
  .iti-flag.ba {
    height: 10px;
    background-position: -374px 0px; }
  .iti-flag.bb {
    height: 14px;
    background-position: -396px 0px; }
  .iti-flag.bd {
    height: 12px;
    background-position: -418px 0px; }
  .iti-flag.be {
    height: 15px;
    background-position: -440px 0px; }
  .iti-flag.bf {
    height: 14px;
    background-position: -460px 0px; }
  .iti-flag.bg {
    height: 12px;
    background-position: -482px 0px; }
  .iti-flag.bh {
    height: 12px;
    background-position: -504px 0px; }
  .iti-flag.bi {
    height: 12px;
    background-position: -526px 0px; }
  .iti-flag.bj {
    height: 14px;
    background-position: -548px 0px; }
  .iti-flag.bl {
    height: 14px;
    background-position: -570px 0px; }
  .iti-flag.bm {
    height: 10px;
    background-position: -592px 0px; }
  .iti-flag.bn {
    height: 10px;
    background-position: -614px 0px; }
  .iti-flag.bo {
    height: 14px;
    background-position: -636px 0px; }
  .iti-flag.bq {
    height: 14px;
    background-position: -658px 0px; }
  .iti-flag.br {
    height: 14px;
    background-position: -680px 0px; }
  .iti-flag.bs {
    height: 10px;
    background-position: -702px 0px; }
  .iti-flag.bt {
    height: 14px;
    background-position: -724px 0px; }
  .iti-flag.bv {
    height: 15px;
    background-position: -746px 0px; }
  .iti-flag.bw {
    height: 14px;
    background-position: -768px 0px; }
  .iti-flag.by {
    height: 10px;
    background-position: -790px 0px; }
  .iti-flag.bz {
    height: 14px;
    background-position: -812px 0px; }
  .iti-flag.ca {
    height: 10px;
    background-position: -834px 0px; }
  .iti-flag.cc {
    height: 10px;
    background-position: -856px 0px; }
  .iti-flag.cd {
    height: 15px;
    background-position: -878px 0px; }
  .iti-flag.cf {
    height: 14px;
    background-position: -900px 0px; }
  .iti-flag.cg {
    height: 14px;
    background-position: -922px 0px; }
  .iti-flag.ch {
    height: 15px;
    background-position: -944px 0px; }
  .iti-flag.ci {
    height: 14px;
    background-position: -961px 0px; }
  .iti-flag.ck {
    height: 10px;
    background-position: -983px 0px; }
  .iti-flag.cl {
    height: 14px;
    background-position: -1005px 0px; }
  .iti-flag.cm {
    height: 14px;
    background-position: -1027px 0px; }
  .iti-flag.cn {
    height: 14px;
    background-position: -1049px 0px; }
  .iti-flag.co {
    height: 14px;
    background-position: -1071px 0px; }
  .iti-flag.cp {
    height: 14px;
    background-position: -1093px 0px; }
  .iti-flag.cr {
    height: 12px;
    background-position: -1115px 0px; }
  .iti-flag.cu {
    height: 10px;
    background-position: -1137px 0px; }
  .iti-flag.cv {
    height: 12px;
    background-position: -1159px 0px; }
  .iti-flag.cw {
    height: 14px;
    background-position: -1181px 0px; }
  .iti-flag.cx {
    height: 10px;
    background-position: -1203px 0px; }
  .iti-flag.cy {
    height: 13px;
    background-position: -1225px 0px; }
  .iti-flag.cz {
    height: 14px;
    background-position: -1247px 0px; }
  .iti-flag.de {
    height: 12px;
    background-position: -1269px 0px; }
  .iti-flag.dg {
    height: 10px;
    background-position: -1291px 0px; }
  .iti-flag.dj {
    height: 14px;
    background-position: -1313px 0px; }
  .iti-flag.dk {
    height: 15px;
    background-position: -1335px 0px; }
  .iti-flag.dm {
    height: 10px;
    background-position: -1357px 0px; }
  .iti-flag.do {
    height: 13px;
    background-position: -1379px 0px; }
  .iti-flag.dz {
    height: 14px;
    background-position: -1401px 0px; }
  .iti-flag.ea {
    height: 14px;
    background-position: -1423px 0px; }
  .iti-flag.ec {
    height: 14px;
    background-position: -1445px 0px; }
  .iti-flag.ee {
    height: 13px;
    background-position: -1467px 0px; }
  .iti-flag.eg {
    height: 14px;
    background-position: -1489px 0px; }
  .iti-flag.eh {
    height: 10px;
    background-position: -1511px 0px; }
  .iti-flag.er {
    height: 10px;
    background-position: -1533px 0px; }
  .iti-flag.es {
    height: 14px;
    background-position: -1555px 0px; }
  .iti-flag.et {
    height: 10px;
    background-position: -1577px 0px; }
  .iti-flag.eu {
    height: 14px;
    background-position: -1599px 0px; }
  .iti-flag.fi {
    height: 12px;
    background-position: -1621px 0px; }
  .iti-flag.fj {
    height: 10px;
    background-position: -1643px 0px; }
  .iti-flag.fk {
    height: 10px;
    background-position: -1665px 0px; }
  .iti-flag.fm {
    height: 11px;
    background-position: -1687px 0px; }
  .iti-flag.fo {
    height: 15px;
    background-position: -1709px 0px; }
  .iti-flag.fr {
    height: 14px;
    background-position: -1731px 0px; }
  .iti-flag.ga {
    height: 15px;
    background-position: -1753px 0px; }
  .iti-flag.gb {
    height: 10px;
    background-position: -1775px 0px; }
  .iti-flag.gd {
    height: 12px;
    background-position: -1797px 0px; }
  .iti-flag.ge {
    height: 14px;
    background-position: -1819px 0px; }
  .iti-flag.gf {
    height: 14px;
    background-position: -1841px 0px; }
  .iti-flag.gg {
    height: 14px;
    background-position: -1863px 0px; }
  .iti-flag.gh {
    height: 14px;
    background-position: -1885px 0px; }
  .iti-flag.gi {
    height: 10px;
    background-position: -1907px 0px; }
  .iti-flag.gl {
    height: 14px;
    background-position: -1929px 0px; }
  .iti-flag.gm {
    height: 14px;
    background-position: -1951px 0px; }
  .iti-flag.gn {
    height: 14px;
    background-position: -1973px 0px; }
  .iti-flag.gp {
    height: 14px;
    background-position: -1995px 0px; }
  .iti-flag.gq {
    height: 14px;
    background-position: -2017px 0px; }
  .iti-flag.gr {
    height: 14px;
    background-position: -2039px 0px; }
  .iti-flag.gs {
    height: 10px;
    background-position: -2061px 0px; }
  .iti-flag.gt {
    height: 13px;
    background-position: -2083px 0px; }
  .iti-flag.gu {
    height: 11px;
    background-position: -2105px 0px; }
  .iti-flag.gw {
    height: 10px;
    background-position: -2127px 0px; }
  .iti-flag.gy {
    height: 12px;
    background-position: -2149px 0px; }
  .iti-flag.hk {
    height: 14px;
    background-position: -2171px 0px; }
  .iti-flag.hm {
    height: 10px;
    background-position: -2193px 0px; }
  .iti-flag.hn {
    height: 10px;
    background-position: -2215px 0px; }
  .iti-flag.hr {
    height: 10px;
    background-position: -2237px 0px; }
  .iti-flag.ht {
    height: 12px;
    background-position: -2259px 0px; }
  .iti-flag.hu {
    height: 10px;
    background-position: -2281px 0px; }
  .iti-flag.ic {
    height: 14px;
    background-position: -2303px 0px; }
  .iti-flag.id {
    height: 14px;
    background-position: -2325px 0px; }
  .iti-flag.ie {
    height: 10px;
    background-position: -2347px 0px; }
  .iti-flag.il {
    height: 15px;
    background-position: -2369px 0px; }
  .iti-flag.im {
    height: 10px;
    background-position: -2391px 0px; }
  .iti-flag.in {
    height: 14px;
    background-position: -2413px 0px; }
  .iti-flag.io {
    height: 10px;
    background-position: -2435px 0px; }
  .iti-flag.iq {
    height: 14px;
    background-position: -2457px 0px; }
  .iti-flag.ir {
    height: 12px;
    background-position: -2479px 0px; }
  .iti-flag.is {
    height: 15px;
    background-position: -2501px 0px; }
  .iti-flag.it {
    height: 14px;
    background-position: -2523px 0px; }
  .iti-flag.je {
    height: 12px;
    background-position: -2545px 0px; }
  .iti-flag.jm {
    height: 10px;
    background-position: -2567px 0px; }
  .iti-flag.jo {
    height: 10px;
    background-position: -2589px 0px; }
  .iti-flag.jp {
    height: 14px;
    background-position: -2611px 0px; }
  .iti-flag.ke {
    height: 14px;
    background-position: -2633px 0px; }
  .iti-flag.kg {
    height: 12px;
    background-position: -2655px 0px; }
  .iti-flag.kh {
    height: 13px;
    background-position: -2677px 0px; }
  .iti-flag.ki {
    height: 10px;
    background-position: -2699px 0px; }
  .iti-flag.km {
    height: 12px;
    background-position: -2721px 0px; }
  .iti-flag.kn {
    height: 14px;
    background-position: -2743px 0px; }
  .iti-flag.kp {
    height: 10px;
    background-position: -2765px 0px; }
  .iti-flag.kr {
    height: 14px;
    background-position: -2787px 0px; }
  .iti-flag.kw {
    height: 10px;
    background-position: -2809px 0px; }
  .iti-flag.ky {
    height: 10px;
    background-position: -2831px 0px; }
  .iti-flag.kz {
    height: 10px;
    background-position: -2853px 0px; }
  .iti-flag.la {
    height: 14px;
    background-position: -2875px 0px; }
  .iti-flag.lb {
    height: 14px;
    background-position: -2897px 0px; }
  .iti-flag.lc {
    height: 10px;
    background-position: -2919px 0px; }
  .iti-flag.li {
    height: 12px;
    background-position: -2941px 0px; }
  .iti-flag.lk {
    height: 10px;
    background-position: -2963px 0px; }
  .iti-flag.lr {
    height: 11px;
    background-position: -2985px 0px; }
  .iti-flag.ls {
    height: 14px;
    background-position: -3007px 0px; }
  .iti-flag.lt {
    height: 12px;
    background-position: -3029px 0px; }
  .iti-flag.lu {
    height: 12px;
    background-position: -3051px 0px; }
  .iti-flag.lv {
    height: 10px;
    background-position: -3073px 0px; }
  .iti-flag.ly {
    height: 10px;
    background-position: -3095px 0px; }
  .iti-flag.ma {
    height: 14px;
    background-position: -3117px 0px; }
  .iti-flag.mc {
    height: 15px;
    background-position: -3139px 0px; }
  .iti-flag.md {
    height: 10px;
    background-position: -3160px 0px; }
  .iti-flag.me {
    height: 10px;
    background-position: -3182px 0px; }
  .iti-flag.mf {
    height: 14px;
    background-position: -3204px 0px; }
  .iti-flag.mg {
    height: 14px;
    background-position: -3226px 0px; }
  .iti-flag.mh {
    height: 11px;
    background-position: -3248px 0px; }
  .iti-flag.mk {
    height: 10px;
    background-position: -3270px 0px; }
  .iti-flag.ml {
    height: 14px;
    background-position: -3292px 0px; }
  .iti-flag.mm {
    height: 14px;
    background-position: -3314px 0px; }
  .iti-flag.mn {
    height: 10px;
    background-position: -3336px 0px; }
  .iti-flag.mo {
    height: 14px;
    background-position: -3358px 0px; }
  .iti-flag.mp {
    height: 10px;
    background-position: -3380px 0px; }
  .iti-flag.mq {
    height: 14px;
    background-position: -3402px 0px; }
  .iti-flag.mr {
    height: 14px;
    background-position: -3424px 0px; }
  .iti-flag.ms {
    height: 10px;
    background-position: -3446px 0px; }
  .iti-flag.mt {
    height: 14px;
    background-position: -3468px 0px; }
  .iti-flag.mu {
    height: 14px;
    background-position: -3490px 0px; }
  .iti-flag.mv {
    height: 14px;
    background-position: -3512px 0px; }
  .iti-flag.mw {
    height: 14px;
    background-position: -3534px 0px; }
  .iti-flag.mx {
    height: 12px;
    background-position: -3556px 0px; }
  .iti-flag.my {
    height: 10px;
    background-position: -3578px 0px; }
  .iti-flag.mz {
    height: 14px;
    background-position: -3600px 0px; }
  .iti-flag.na {
    height: 14px;
    background-position: -3622px 0px; }
  .iti-flag.nc {
    height: 10px;
    background-position: -3644px 0px; }
  .iti-flag.ne {
    height: 15px;
    background-position: -3666px 0px; }
  .iti-flag.nf {
    height: 10px;
    background-position: -3686px 0px; }
  .iti-flag.ng {
    height: 10px;
    background-position: -3708px 0px; }
  .iti-flag.ni {
    height: 12px;
    background-position: -3730px 0px; }
  .iti-flag.nl {
    height: 14px;
    background-position: -3752px 0px; }
  .iti-flag.no {
    height: 15px;
    background-position: -3774px 0px; }
  .iti-flag.np {
    height: 15px;
    background-position: -3796px 0px; }
  .iti-flag.nr {
    height: 10px;
    background-position: -3811px 0px; }
  .iti-flag.nu {
    height: 10px;
    background-position: -3833px 0px; }
  .iti-flag.nz {
    height: 10px;
    background-position: -3855px 0px; }
  .iti-flag.om {
    height: 10px;
    background-position: -3877px 0px; }
  .iti-flag.pa {
    height: 14px;
    background-position: -3899px 0px; }
  .iti-flag.pe {
    height: 14px;
    background-position: -3921px 0px; }
  .iti-flag.pf {
    height: 14px;
    background-position: -3943px 0px; }
  .iti-flag.pg {
    height: 15px;
    background-position: -3965px 0px; }
  .iti-flag.ph {
    height: 10px;
    background-position: -3987px 0px; }
  .iti-flag.pk {
    height: 14px;
    background-position: -4009px 0px; }
  .iti-flag.pl {
    height: 13px;
    background-position: -4031px 0px; }
  .iti-flag.pm {
    height: 14px;
    background-position: -4053px 0px; }
  .iti-flag.pn {
    height: 10px;
    background-position: -4075px 0px; }
  .iti-flag.pr {
    height: 14px;
    background-position: -4097px 0px; }
  .iti-flag.ps {
    height: 10px;
    background-position: -4119px 0px; }
  .iti-flag.pt {
    height: 14px;
    background-position: -4141px 0px; }
  .iti-flag.pw {
    height: 13px;
    background-position: -4163px 0px; }
  .iti-flag.py {
    height: 11px;
    background-position: -4185px 0px; }
  .iti-flag.qa {
    height: var(--spacing-1x);
    background-position: -4207px 0px; }
  .iti-flag.re {
    height: 14px;
    background-position: -4229px 0px; }
  .iti-flag.ro {
    height: 14px;
    background-position: -4251px 0px; }
  .iti-flag.rs {
    height: 14px;
    background-position: -4273px 0px; }
  .iti-flag.ru {
    height: 14px;
    background-position: -4295px 0px; }
  .iti-flag.rw {
    height: 14px;
    background-position: -4317px 0px; }
  .iti-flag.sa {
    height: 14px;
    background-position: -4339px 0px; }
  .iti-flag.sb {
    height: 10px;
    background-position: -4361px 0px; }
  .iti-flag.sc {
    height: 10px;
    background-position: -4383px 0px; }
  .iti-flag.sd {
    height: 10px;
    background-position: -4405px 0px; }
  .iti-flag.se {
    height: 13px;
    background-position: -4427px 0px; }
  .iti-flag.sg {
    height: 14px;
    background-position: -4449px 0px; }
  .iti-flag.sh {
    height: 10px;
    background-position: -4471px 0px; }
  .iti-flag.si {
    height: 10px;
    background-position: -4493px 0px; }
  .iti-flag.sj {
    height: 15px;
    background-position: -4515px 0px; }
  .iti-flag.sk {
    height: 14px;
    background-position: -4537px 0px; }
  .iti-flag.sl {
    height: 14px;
    background-position: -4559px 0px; }
  .iti-flag.sm {
    height: 15px;
    background-position: -4581px 0px; }
  .iti-flag.sn {
    height: 14px;
    background-position: -4603px 0px; }
  .iti-flag.so {
    height: 14px;
    background-position: -4625px 0px; }
  .iti-flag.sr {
    height: 14px;
    background-position: -4647px 0px; }
  .iti-flag.ss {
    height: 10px;
    background-position: -4669px 0px; }
  .iti-flag.st {
    height: 10px;
    background-position: -4691px 0px; }
  .iti-flag.sv {
    height: 12px;
    background-position: -4713px 0px; }
  .iti-flag.sx {
    height: 14px;
    background-position: -4735px 0px; }
  .iti-flag.sy {
    height: 14px;
    background-position: -4757px 0px; }
  .iti-flag.sz {
    height: 14px;
    background-position: -4779px 0px; }
  .iti-flag.ta {
    height: 10px;
    background-position: -4801px 0px; }
  .iti-flag.tc {
    height: 10px;
    background-position: -4823px 0px; }
  .iti-flag.td {
    height: 14px;
    background-position: -4845px 0px; }
  .iti-flag.tf {
    height: 14px;
    background-position: -4867px 0px; }
  .iti-flag.tg {
    height: 13px;
    background-position: -4889px 0px; }
  .iti-flag.th {
    height: 14px;
    background-position: -4911px 0px; }
  .iti-flag.tj {
    height: 10px;
    background-position: -4933px 0px; }
  .iti-flag.tk {
    height: 10px;
    background-position: -4955px 0px; }
  .iti-flag.tl {
    height: 10px;
    background-position: -4977px 0px; }
  .iti-flag.tm {
    height: 14px;
    background-position: -4999px 0px; }
  .iti-flag.tn {
    height: 14px;
    background-position: -5021px 0px; }
  .iti-flag.to {
    height: 10px;
    background-position: -5043px 0px; }
  .iti-flag.tr {
    height: 14px;
    background-position: -5065px 0px; }
  .iti-flag.tt {
    height: 12px;
    background-position: -5087px 0px; }
  .iti-flag.tv {
    height: 10px;
    background-position: -5109px 0px; }
  .iti-flag.tw {
    height: 14px;
    background-position: -5131px 0px; }
  .iti-flag.tz {
    height: 14px;
    background-position: -5153px 0px; }
  .iti-flag.ua {
    height: 14px;
    background-position: -5175px 0px; }
  .iti-flag.ug {
    height: 14px;
    background-position: -5197px 0px; }
  .iti-flag.um {
    height: 11px;
    background-position: -5219px 0px; }
  .iti-flag.us {
    height: 11px;
    background-position: -5241px 0px; }
  .iti-flag.uy {
    height: 14px;
    background-position: -5263px 0px; }
  .iti-flag.uz {
    height: 10px;
    background-position: -5285px 0px; }
  .iti-flag.va {
    height: 15px;
    background-position: -5307px 0px; }
  .iti-flag.vc {
    height: 14px;
    background-position: -5324px 0px; }
  .iti-flag.ve {
    height: 14px;
    background-position: -5346px 0px; }
  .iti-flag.vg {
    height: 10px;
    background-position: -5368px 0px; }
  .iti-flag.vi {
    height: 14px;
    background-position: -5390px 0px; }
  .iti-flag.vn {
    height: 14px;
    background-position: -5412px 0px; }
  .iti-flag.vu {
    height: 12px;
    background-position: -5434px 0px; }
  .iti-flag.wf {
    height: 14px;
    background-position: -5456px 0px; }
  .iti-flag.ws {
    height: 10px;
    background-position: -5478px 0px; }
  .iti-flag.xk {
    height: 15px;
    background-position: -5500px 0px; }
  .iti-flag.ye {
    height: 14px;
    background-position: -5522px 0px; }
  .iti-flag.yt {
    height: 14px;
    background-position: -5544px 0px; }
  .iti-flag.za {
    height: 14px;
    background-position: -5566px 0px; }
  .iti-flag.zm {
    height: 14px;
    background-position: -5588px 0px; }
  .iti-flag.zw {
    height: 10px;
    background-position: -5610px 0px; }

.iti-flag {
  width: 20px;
  height: 15px;
  box-shadow: 0px 0px 1px 0px #888;
  background-image: url("../img/flags.png");
  background-repeat: no-repeat;
  background-color: #DBDBDB;
  background-position: 20px 0; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    .iti-flag {
      background-image: url("../img/flags@2x.png"); } }

.iti-flag.np {
  background-color: transparent; }

/*
*******************************************
Buttons - General
*******************************************
*/
.btn {
  position: relative;
  overflow: hidden;
  box-shadow: var(--btn-box-shadow); }
  .btn-rounded {
    border-radius: 50%; }
  .btn-register-domain {
    font-weight: var(--font-weight-medium); }

@media (min-width: 500px) {
  .btn-input-padded-responsive {
    padding-left: 35px;
    padding-right: 35px; } }

@media (min-width: 380px) {
  .btn-input-padded-responsive {
    padding-left: 20px;
    padding-right: 20px; } }

/*
*******************************************
 Buttons - Primary Block
*******************************************
*/
.app-nav-primary .btn.btn-outline,
.app-nav-secondary .btn.btn-outline,
.panel-sidebar.panel-sidebar-primary .btn.btn-outline,
.panel-sidebar.panel-sidebar-secondary .btn.btn-outline {
  color: var(--primary-block-btn-outline-color);
  border-color: var(--primary-block-btn-outline-border-color); }
  .app-nav-primary .btn.btn-outline:hover,
  .app-nav-secondary .btn.btn-outline:hover,
  .panel-sidebar.panel-sidebar-primary .btn.btn-outline:hover,
  .panel-sidebar.panel-sidebar-secondary .btn.btn-outline:hover {
    color: var(--primary-block-btn-outline-hover-color) !important;
    background: var(--primary-block-btn-outline-hover-bg) !important;
    border-color: var(--primary-block-btn-outline-hover-border-color) !important; }
  .app-nav-primary .btn.btn-outline:focus, .app-nav-primary .btn.btn-outline:focus-visible, .app-nav-primary .btn.btn-outline:active,
  .app-nav-secondary .btn.btn-outline:focus,
  .app-nav-secondary .btn.btn-outline:focus-visible,
  .app-nav-secondary .btn.btn-outline:active,
  .panel-sidebar.panel-sidebar-primary .btn.btn-outline:focus,
  .panel-sidebar.panel-sidebar-primary .btn.btn-outline:focus-visible,
  .panel-sidebar.panel-sidebar-primary .btn.btn-outline:active,
  .panel-sidebar.panel-sidebar-secondary .btn.btn-outline:focus,
  .panel-sidebar.panel-sidebar-secondary .btn.btn-outline:focus-visible,
  .panel-sidebar.panel-sidebar-secondary .btn.btn-outline:active {
    color: var(--primary-block-btn-outline-hover-color) !important;
    background: var(--primary-block-active-btn-outline-hover-bg) !important;
    border-color: var(--primary-block-btn-outline-active-border-color) !important; }

.panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded),
.panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn),
.panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn),
.panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded),
.panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn),
.panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn),
.panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded),
.panel-summary-primary input[type="button"]:not(.btn),
.panel-summary-primary input[type="submit"]:not(.btn),
.panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded),
.panel-summary-secondary input[type="button"]:not(.btn),
.panel-summary-secondary input[type="submit"]:not(.btn),
.panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded),
.panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn),
.panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn) {
  color: var(--primary-block-btn-color);
  background: var(--primary-block-btn-bg);
  border-color: var(--primary-block-btn-border-color); }
  .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):focus, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):focus-visible, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).focus,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):focus,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):focus-visible,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).focus,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):focus,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):focus-visible,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).focus,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):focus,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):focus-visible,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).focus,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):focus,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):focus-visible,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).focus,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):focus,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):focus-visible,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).focus,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):focus,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):focus-visible,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).focus,
  .panel-summary-primary input[type="button"]:not(.btn):focus,
  .panel-summary-primary input[type="button"]:not(.btn):focus-visible,
  .panel-summary-primary input[type="button"]:not(.btn).focus,
  .panel-summary-primary input[type="submit"]:not(.btn):focus,
  .panel-summary-primary input[type="submit"]:not(.btn):focus-visible,
  .panel-summary-primary input[type="submit"]:not(.btn).focus,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):focus,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):focus-visible,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).focus,
  .panel-summary-secondary input[type="button"]:not(.btn):focus,
  .panel-summary-secondary input[type="button"]:not(.btn):focus-visible,
  .panel-summary-secondary input[type="button"]:not(.btn).focus,
  .panel-summary-secondary input[type="submit"]:not(.btn):focus,
  .panel-summary-secondary input[type="submit"]:not(.btn):focus-visible,
  .panel-summary-secondary input[type="submit"]:not(.btn).focus,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):focus,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):focus-visible,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).focus,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):focus,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):focus-visible,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).focus,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):focus,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):focus-visible,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).focus {
    color: var(--primary-block-btn-hover-color);
    background-color: var(--primary-block-btn-hover-bg);
    border-color: var(--primary-block-btn-hover-border-color); }
  .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):hover,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):hover,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):hover,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):hover,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):hover,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):hover,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):hover,
  .panel-summary-primary input[type="button"]:not(.btn):hover,
  .panel-summary-primary input[type="submit"]:not(.btn):hover,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):hover,
  .panel-summary-secondary input[type="button"]:not(.btn):hover,
  .panel-summary-secondary input[type="submit"]:not(.btn):hover,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):hover,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):hover,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):hover {
    color: var(--primary-block-btn-hover-color);
    background-color: var(--primary-block-btn-hover-bg);
    border-color: var(--primary-block-btn-hover-border-color); }
  .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active,
  .open > .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active,
  .open >
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active,
  .open >
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active,
  .open >
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active,
  .open >
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active,
  .open >
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--primary-block-btn-hover-color);
    background-color: var(--primary-block-btn-active-bg);
    border-color: var(--primary-block-btn-active-border-color); }
    .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active.focus,
    .open > .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:hover,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus-visible,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active.focus,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:hover,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus-visible,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:hover,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus-visible,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active.focus,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:hover,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus-visible,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-summary-primary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-summary-primary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:hover,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus-visible,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active.focus,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:hover,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus-visible,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-summary-secondary input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-summary-secondary input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:hover,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active:focus-visible,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled):active.focus,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:hover,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active:focus-visible,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:hover,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active:focus-visible,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled):active.focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:hover,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active:focus-visible,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).active.focus,
    .open >
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open >
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open >
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open >
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--primary-block-btn-hover-color);
      background-color: var(--primary-block-btn-hover-bg);
      border-color: var(--primary-block-btn-hover-border-color); }
  .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline),
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline),
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline),
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline),
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline),
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline),
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline),
  .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline),
  .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline),
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline),
  .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline),
  .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline),
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline),
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline),
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline) {
    color: var(--primary-block-btn-color);
    background-color: transparent;
    border-color: transparent; }
    .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus-visible, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline).focus,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus-visible,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline).focus,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus-visible,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline).focus,
    .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus-visible,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline).focus,
    .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):focus-visible,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline).focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline).focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):focus-visible,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline).focus {
      color: var(--primary-block-btn-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):hover,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):hover,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):hover,
    .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):hover,
    .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):hover,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):hover,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):hover {
      color: var(--primary-block-btn-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--primary-block-btn-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-summary-primary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-summary-primary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-summary-secondary input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-summary-secondary input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
      .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover,
      .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus,
      .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible,
      .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus,
      .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover,
      .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus,
      .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible,
      .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--primary-block-btn-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded):active, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).active,
  .open > .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).dropdown-toggle,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn):active,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).active,
  .open >
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).dropdown-toggle,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn):active,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).active,
  .open >
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).dropdown-toggle,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded):active,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).active,
  .open >
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).dropdown-toggle,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn):active,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).active,
  .open >
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).dropdown-toggle,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn):active,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).active,
  .open >
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).dropdown-toggle,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded):active,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).active,
  .open >
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).dropdown-toggle,
  .panel-summary-primary input[type="button"]:not(.btn):active,
  .panel-summary-primary input[type="button"]:not(.btn).active,
  .open >
  .panel-summary-primary input[type="button"]:not(.btn).dropdown-toggle,
  .panel-summary-primary input[type="submit"]:not(.btn):active,
  .panel-summary-primary input[type="submit"]:not(.btn).active,
  .open >
  .panel-summary-primary input[type="submit"]:not(.btn).dropdown-toggle,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded):active,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).active,
  .open >
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).dropdown-toggle,
  .panel-summary-secondary input[type="button"]:not(.btn):active,
  .panel-summary-secondary input[type="button"]:not(.btn).active,
  .open >
  .panel-summary-secondary input[type="button"]:not(.btn).dropdown-toggle,
  .panel-summary-secondary input[type="submit"]:not(.btn):active,
  .panel-summary-secondary input[type="submit"]:not(.btn).active,
  .open >
  .panel-summary-secondary input[type="submit"]:not(.btn).dropdown-toggle,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded):active,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).active,
  .open >
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).dropdown-toggle,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn):active,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).active,
  .open >
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).dropdown-toggle,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn):active,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).active,
  .open >
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).dropdown-toggle {
    background-image: none; }
  .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded),
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn),
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn),
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded),
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn),
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn),
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded),
  .panel-summary-primary input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-summary-primary input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-summary-primary input[type="button"]:not(.btn),
  .panel-summary-primary input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-summary-primary input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-summary-primary input[type="submit"]:not(.btn),
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded),
  .panel-summary-secondary input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-summary-secondary input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-summary-secondary input[type="button"]:not(.btn),
  .panel-summary-secondary input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-summary-secondary input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-summary-secondary input[type="submit"]:not(.btn),
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded),
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn),
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled]
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn) {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn) .loader .spinner > div,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded) .loader .spinner > div,
    .panel-summary-primary input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-summary-primary input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-summary-primary input[type="button"]:not(.btn) .loader .spinner > div,
    .panel-summary-primary input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-summary-primary input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-summary-primary input[type="submit"]:not(.btn) .loader .spinner > div,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded) .loader .spinner > div,
    .panel-summary-secondary input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-summary-secondary input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-summary-secondary input[type="button"]:not(.btn) .loader .spinner > div,
    .panel-summary-secondary input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-summary-secondary input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-summary-secondary input[type="submit"]:not(.btn) .loader .spinner > div,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn) .loader .spinner > div,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled]
    .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn) .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-primary):not(.btn-default), .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-primary):not(.btn-default),
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-summary-primary input[type="button"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-summary-primary input[type="button"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-summary-primary input[type="submit"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-summary-primary input[type="submit"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-primary):not(.btn-default),
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-summary-secondary input[type="button"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-summary-secondary input[type="button"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-summary-secondary input[type="submit"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-summary-secondary input[type="submit"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded).disabled:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn).disabled:not(.btn-primary):not(.btn-default),
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn)[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .panel-sidebar.panel-sidebar-primary .btn:not(.btn-outline):not(.btn-primary-faded) .badge,
  .panel-sidebar.panel-sidebar-primary input[type="button"]:not(.btn) .badge,
  .panel-sidebar.panel-sidebar-primary input[type="submit"]:not(.btn) .badge,
  .panel-sidebar.panel-sidebar-secondary .btn:not(.btn-outline):not(.btn-primary-faded) .badge,
  .panel-sidebar.panel-sidebar-secondary input[type="button"]:not(.btn) .badge,
  .panel-sidebar.panel-sidebar-secondary input[type="submit"]:not(.btn) .badge,
  .panel-summary-primary .btn:not(.btn-outline):not(.btn-primary-faded) .badge,
  .panel-summary-primary input[type="button"]:not(.btn) .badge,
  .panel-summary-primary input[type="submit"]:not(.btn) .badge,
  .panel-summary-secondary .btn:not(.btn-outline):not(.btn-primary-faded) .badge,
  .panel-summary-secondary input[type="button"]:not(.btn) .badge,
  .panel-summary-secondary input[type="submit"]:not(.btn) .badge,
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(.btn-primary-faded) .badge,
  .panel-sidebar.panel-client-details .panel-footer input[type="button"]:not(.btn) .badge,
  .panel-sidebar.panel-client-details .panel-footer input[type="submit"]:not(.btn) .badge {
    color: var(--primary-block-btn-bg);
    background-color: var(--primary-block-btn-color); }

.panel-sidebar.panel-ticket-information .panel-footer .btn-success {
  color: var(--btn-primary-color);
  background: var(--btn-primary-bg);
  border-color: var(--btn-primary-border); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-success:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.focus {
    color: var(--btn-primary-hover-color);
    background-color: var(--btn-primary-hover-bg);
    border-color: var(--btn-primary-hover-border); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-success:hover {
    color: var(--btn-primary-hover-color);
    background-color: var(--btn-primary-hover-bg);
    border-color: var(--btn-primary-hover-border); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled):active, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).active,
  .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-primary-hover-color);
    background-color: var(--btn-primary-active-bg);
    border-color: var(--btn-primary-active-border); }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).active.focus,
    .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-success:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-primary-hover-color);
      background-color: var(--btn-primary-hover-bg);
      border-color: var(--btn-primary-hover-border); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline) {
    color: var(--btn-primary-color);
    background-color: transparent;
    border-color: transparent; }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline).focus {
      color: var(--btn-primary-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):hover {
      color: var(--btn-primary-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-primary-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-primary-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-success:active, .panel-sidebar.panel-ticket-information .panel-footer .btn-success.active,
  .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-success.dropdown-toggle {
    background-image: none; }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-success.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .panel-sidebar.panel-ticket-information .panel-footer .btn-success[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .panel-sidebar.panel-ticket-information .panel-footer .btn-success {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-success.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .panel-sidebar.panel-ticket-information .panel-footer .btn-success[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .panel-sidebar.panel-ticket-information .panel-footer .btn-success .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-success.disabled:not(.btn-primary):not(.btn-default), .panel-sidebar.panel-ticket-information .panel-footer .btn-success[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-success .badge {
    color: var(--btn-primary-bg);
    background-color: var(--btn-primary-color); }

.panel-sidebar.panel-ticket-information .panel-footer .btn-danger {
  color: var(--btn-default-color);
  background: var(--btn-default-bg);
  border-color: var(--btn-default-border); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.focus {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-hover-bg);
    border-color: var(--btn-default-hover-border); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:hover {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-hover-bg);
    border-color: var(--btn-default-hover-border); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled):active, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).active,
  .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-default-hover-color);
    background-color: var(--btn-default-active-bg);
    border-color: var(--btn-default-active-border); }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).active.focus,
    .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-default-hover-color);
      background-color: var(--btn-default-hover-bg);
      border-color: var(--btn-default-hover-border); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline) {
    color: var(--btn-default-color);
    background-color: transparent;
    border-color: transparent; }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline).focus {
      color: var(--btn-default-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):hover {
      color: var(--btn-default-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-default-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-default-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-danger:active, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.active,
  .open > .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.dropdown-toggle {
    background-image: none; }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .panel-sidebar.panel-ticket-information .panel-footer .btn-danger[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .panel-sidebar.panel-ticket-information .panel-footer .btn-danger {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .panel-sidebar.panel-ticket-information .panel-footer .btn-danger[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .panel-sidebar.panel-ticket-information .panel-footer .btn-danger .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-danger.disabled:not(.btn-primary):not(.btn-default), .panel-sidebar.panel-ticket-information .panel-footer .btn-danger[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .panel-sidebar.panel-ticket-information .panel-footer .btn-danger .badge {
    color: var(--btn-default-bg);
    background-color: var(--btn-default-color); }

/*
*******************************************
 Buttons - Social Buttons
*******************************************
*/
.social-signin-btns:not(.social-signin-btns-circle) .btn-social:before,
.social-signin-btns:not(.social-signin-btns-circle) .btn-social i {
  margin-right: var(--spacing-1x); }

.social-signin-btns:not(.social-signin-btns-circle) .btn-social:not(:last-child) {
  margin-bottom: var(--ui-block-spacing-xs); }

.social-signin-btns-circle {
  display: flex;
  justify-content: center;
  margin: 0 -8px; }
  .social-signin-btns-circle .btn {
    margin-bottom: 5px;
    margin-left: 4px;
    margin-right: 4px; }

.btn-social {
  height: var(--btn-social-height);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: none;
  border: 1px solid var(--gray-lighter-4);
  border-radius: var(--btn-social-border-radius);
  overflow: hidden;
  text-overflow: ellipsis;
  overflow: hidden;
  padding: 0; }
  .btn-social i {
    margin: 0;
    font-size: 19px;
    display: none;
    align-items: center;
    justify-content: center;
    text-indent: 0; }
  .btn-social img {
    display: none; }
  .btn-social.btn {
    height: var(--btn-social-height);
    font-size: var(--btn-social-font-size);
    padding-left: var(--btn-social-padding-h);
    padding-right: var(--btn-social-padding-h); }
    .btn-social.btn-facebook {
      color: var(--btn-social-facebook-color);
      border-color: var(--btn-social-facebook-border-color);
      background-color: var(--btn-social-facebook-bg); }
      .btn-social.btn-facebook:before {
        content: '';
        width: 18px;
        height: 18px;
        min-width: 18px;
        margin-right: 24px;
        background: url(../img/auth/logo-facebook.svg);
        background-position: center;
        background-repeat: no-repeat; }
      .btn-social.btn-facebook:hover:not(.disabled):not(:disabled), .btn-social.btn-facebook:focus:not(.disabled):not(:disabled), .btn-social.btn-facebook:focus-visible:not(.disabled):not(:disabled), .btn-social.btn-facebook:active:not(.disabled):not(:disabled), .btn-social.btn-facebook.active:not(.disabled):not(:disabled) {
        color: var(--btn-social-facebook-hover-color);
        background-color: var(--btn-social-facebook-hover-bg);
        border-color: var(--btn-social-facebook-hover-border); }
      .btn-social.btn-facebook[disabled]:hover, .btn-social.btn-facebook[disabled]:focus, .btn-social.btn-facebook[disabled]:focus-visible, .btn-social.btn-facebook[disabled]:active, .btn-social.btn-facebook[disabled].active, .btn-social.btn-facebook.disabled:hover, .btn-social.btn-facebook.disabled:focus, .btn-social.btn-facebook.disabled:focus-visible, .btn-social.btn-facebook.disabled:active, .btn-social.btn-facebook.disabled.active {
        background-color: var(--btn-social-facebook-bg); }
      .btn-social.btn-facebook i {
        display: none; }
    .btn-social.btn-google {
      color: var(--btn-social-google-color);
      border-color: var(--btn-social-google-border-color);
      box-shadow: none; }
      .btn-social.btn-google.g_id_signin {
        border: none;
        padding: 0;
        cursor: auto; }
        .btn-social.btn-google.g_id_signin > .S9gUrf-YoZ4jf {
          width: 100%;
          height: calc(var(--btn-social-height) + 4px); }
          .btn-social.btn-google.g_id_signin > .S9gUrf-YoZ4jf > div {
            height: calc(var(--btn-social-height) + 4px); }
            .btn-social.btn-google.g_id_signin > .S9gUrf-YoZ4jf > div > .nsm7Bb-HzV7m-LgbsSe {
              height: calc(var(--btn-social-height));
              border-radius: var(--btn-social-border-radius);
              margin-top: 2px;
              margin-right: 1px; }
              .btn-social.btn-google.g_id_signin > .S9gUrf-YoZ4jf > div > .nsm7Bb-HzV7m-LgbsSe .nsm7Bb-HzV7m-LgbsSe-BPrWId {
                font-size: var(--btn-social-font-size);
                font-weight: var(--btn-base-font-weight);
                font-family: var(--btn-font-family); }
            .btn-social.btn-google.g_id_signin > .S9gUrf-YoZ4jf > div:empty {
              height: 0; }
              .btn-social.btn-google.g_id_signin > .S9gUrf-YoZ4jf > div:empty + div > iframe,
              .btn-social.btn-google.g_id_signin > .S9gUrf-YoZ4jf > div:empty + iframe {
                margin: auto !important; }
      .btn-social.btn-google:not(.g_id_signin):before {
        content: '';
        width: 18px;
        height: 18px;
        min-width: 18px;
        margin-right: 24px;
        background: url(../img/auth/logo-google.svg);
        background-position: center;
        background-repeat: no-repeat; }
      .btn-social.btn-google:hover, .btn-social.btn-google:focus, .btn-social.btn-google:focus-visible, .btn-social.btn-google:active, .btn-social.btn-google.active {
        border-color: var(--btn-social-google-border-hover-color); }
      .btn-social.btn-google img {
        display: none; }
    .btn-social.btn-twitter {
      color: var(--btn-social-twitter-color);
      border-color: var(--btn-social-twitter-bg);
      background-color: var(--btn-social-twitter-bg); }
      .btn-social.btn-twitter:before {
        content: '';
        width: 18px;
        height: 18px;
        min-width: 18px;
        margin-right: 24px;
        background: url(../img/auth/logo-twitter.svg);
        background-position: center;
        background-repeat: no-repeat; }
      .btn-social.btn-twitter:hover, .btn-social.btn-twitter:focus, .btn-social.btn-twitter:focus-visible, .btn-social.btn-twitter:active, .btn-social.btn-twitter.active {
        color: var(--btn-social-twitter-hover-color);
        background-color: var(--btn-social-twitter-hover-bg);
        border-color: var(--btn-social-twitter-border-hover-color); }
      .btn-social.btn-twitter[disabled]:hover, .btn-social.btn-twitter[disabled]:focus, .btn-social.btn-twitter[disabled]:focus-visible, .btn-social.btn-twitter[disabled]:active, .btn-social.btn-twitter[disabled].active, .btn-social.btn-twitter.disabled:hover, .btn-social.btn-twitter.disabled:focus, .btn-social.btn-twitter.disabled:focus-visible, .btn-social.btn-twitter.disabled:active, .btn-social.btn-twitter.disabled.active {
        background-color: var(--btn-social-twitter-bg);
        border-color: var(--btn-social-twitter-color-bg); }

/*
*******************************************
Buttons - Provider Linking
*******************************************
*/
.providerLinkingFeedback {
  display: none; }

.buttons-group {
  margin-left: -4px;
  margin-right: -4px;
  display: flex;
  margin-bottom: var(--ui-block-spacing-xs); }
  .buttons-group .btn {
    margin: 0 4px; }
  .buttons-group.buttons-5 .btn {
    flex-basis: 20%; }

@media (max-width: 479.98px) {
  .buttons-group.buttons-5 .btn {
    padding-left: 0;
    padding-right: 0; } }

/*
*******************************************
Buttons - Clear Filters
*******************************************
*/
.table-top #clearFilters {
  color: var(--btn-default-color);
  font-weight: var(--font-weight-medium);
  padding-inline: 12px;
  transition: var(--transition-base); }
  .table-top #clearFilters:hover, .table-top #clearFilters:focus-visible {
    color: var(--link-hover-color); }
  .table-top #clearFilters i {
    margin-left: 6px;
    margin-right: 0; }

/*
*******************************************
Captcha - General
*******************************************
*/
.captcha {
  width: 256px;
  margin-bottom: var(--form-group-margin-bottom); }
  .captcha-centered {
    width: auto; }
    .captcha-centered .input-group {
      justify-content: center; }
  .captchatext {
    padding: 8px 0;
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs); }
  .captchaimage {
    display: block;
    width: 50%;
    margin: 24px auto 0px auto; }
    .captchaimage > * {
      width: 128px; }
    .captchaimage .input-group-addon {
      float: left;
      width: 60%; }
    .captchaimage #inputCaptcha {
      margin-left: -4px;
      float: left;
      width: 40%; }
    @media (max-width: 479.98px) {
      .captchaimage {
        width: 100%; } }

#inputCaptcha {
  width: 128px;
  display: inline-block; }

#default-captcha-domainchecker.section {
  margin-top: 18px; }

.grecaptcha-badge {
  z-index: 99; }

.captcha-overlay-badge {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
  cursor: pointer; }

.captcha-overlay-badge-hidden {
  display: none; }

.captcha-overlay-badge img {
  width: 60px;
  height: auto; }

.captcha-overlay-popup {
  display: none;
  position: fixed;
  bottom: 88px;
  right: 20px;
  border: var(--ui-block-border);
  background: var(--ui-block-bg);
  box-shadow: var(--ui-block-shadow);
  border-radius: var(--ui-block-border-radius);
  padding: var(--spacing-2x);
  width: 302px;
  z-index: 9998; }

/*
*******************************************
Form - General
*******************************************
*/
.select-inline {
  display: inline-block;
  width: auto; }
  .select-inline-inline-container {
    display: flex; }
    .select-inline-inline-container select:not(:last-of-type) {
      margin-right: 4px; }
  .select-inline#stateselect {
    width: 100%; }

.form-actions {
  margin-top: var(--ui-block-spacing-xlg);
  align-items: center;
  display: flex; }
  .form-actions.flex-center {
    justify-content: center; }
  .form-actions.flex-end {
    justify-content: flex-end; }
  .form-actions .btn + .btn {
    margin-left: var(--spacing-2x); }
  .form-actions .m-r-a {
    margin-right: auto; }

.section + .form-actions {
  margin-top: var(--ui-block-spacing-xlg); }

.form-tooltip {
  position: relative; }
  .form-tooltip .tooltip-icon {
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--ui-icon-color);
    cursor: pointer; }
    .form-tooltip .tooltip-icon:hover {
      color: var(--text-primary-color); }
  .form-tooltip .form-control {
    padding-right: 40px; }

#inputNewPassword2 {
  padding-right: 16px; }

.input-password-strenght {
  position: relative; }
  .input-password-strenght .form-control {
    padding-right: 16px; }
  .input-password-strenght > span {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    justify-content: center; }
    .input-password-strenght > span > * {
      display: flex;
      align-items: center; }
    .input-password-strenght > span i {
      padding: var(--spacing-1x);
      margin-right: var(--spacing-1x);
      position: relative;
      z-index: 2;
      cursor: pointer; }
      .input-password-strenght > span i:hover {
        color: var(--link-color); }
    .input-password-strenght > span #passwordStrengthTextLabel {
      padding-left: var(--spacing-1x); }

input[type='file'].form-control {
  height: inherit;
  margin-bottom: 5px; }

.has-feedback label ~ .form-control-feedback {
  top: 27px !important; }

.input-inline {
  display: inline-block; }
  .input-inline-100 {
    width: 100px; }

/*
*******************************************
Form - Multiselect
*******************************************
*/
.multiselect-container {
  position: absolute;
  list-style-type: none;
  margin: 0;
  padding: 0; }
  .multiselect-container .input-group {
    margin: 5px; }
  .multiselect-container > li {
    padding: 0; }
    .multiselect-container > li > a {
      padding: 0; }
      .multiselect-container > li > a > label {
        margin: 0;
        height: 100%;
        cursor: pointer;
        font-weight: 400;
        padding: 3px 20px 3px 40px; }
        .multiselect-container > li > a > label.checkbox, .multiselect-container > li > a > label.radio {
          margin: 0; }
        .multiselect-container > li > a > label > input[type=checkbox] {
          margin-bottom: 5px; }
    .multiselect-container > li > a.multiselect-all label {
      font-weight: 700; }
    .multiselect-container > li.multiselect-group label {
      margin: 0;
      padding: 3px 20px 3px 20px;
      height: 100%;
      font-weight: 700; }
    .multiselect-container > li.multiselect-group-clickable label {
      cursor: pointer; }

.btn-group > .btn-group:nth-child(2) > .multiselect.btn {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px; }

.form-inline .multiselect-container label.radio, .form-inline .multiselect-container label.checkbox {
  padding: 3px 20px 3px 40px; }

.form-inline .multiselect-container li a label.checkbox input[type=checkbox],
.form-inline .multiselect-container li a label.radio input[type=radio] {
  margin-left: -20px;
  margin-right: 0; }

/*
*******************************************
Form - File input
*******************************************
*/
.file-input {
  position: relative;
  display: flex;
  padding: 0;
  background: var(--input-bg); }
  .file-input-button {
    margin: -1px;
    transition: var(--transition-base); }
  .file-input-text {
    display: flex;
    align-items: center;
    padding: 12px; }
  .file-input-remove {
    margin-left: auto;
    z-index: 2; }
  .file-input input[type=file] {
    opacity: 0;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%; }
  .file-input:has(input:focus-visible) {
    background: var(--input-bg);
    border: var(--input-border); }
    .file-input:has(input:focus-visible) .file-input-button {
      color: var(--btn-default-hover-color);
      background: var(--gray-faded);
      border-color: var(--gray-lighter-3); }
  .file-input:hover {
    background: var(--input-bg);
    border: var(--input-border); }
    .file-input:hover .file-input-button {
      color: var(--btn-default-hover-color);
      background: var(--gray-faded);
      border-color: var(--gray-lighter-3); }

#fileUploadsContainer .file-input {
  margin-top: 12px; }

.billing-details-form {
  margin-top: var(--ca-section-spacing); }

.inline-form {
  display: flex; }
  .inline-form .inline-form-element {
    margin-right: var(--spacing-2x); }
    .inline-form .inline-form-element:nth-child(3), .inline-form .inline-form-element:nth-child(2) {
      min-width: 120px; }

textarea.form-control {
  resize: vertical;
  min-height: 50px; }

.password-content {
  display: flex;
  margin-top: var(--ui-block-spacing-xs);
  align-items: center; }
  .password-content .progress {
    flex: 1;
    margin-left: 12px; }
  .password-content .btn-default .ls {
    color: var(--ui-icon-color); }
  .password-content-group .progress {
    height: 6px;
    max-width: var(--progress-width);
    width: var(--progress-width);
    margin-top: 0; }
    .password-content-group .progress + .password-content-text {
      margin-left: var(--spacing-2x); }
  .password-content-group > label {
    margin-right: auto; }
  .password-content-top {
    margin-top: 0 !important;
    margin-bottom: var(--spacing-1x); }
    .password-content-top label {
      margin-bottom: 0; }

/*
*******************************************
Form - Selectize
*******************************************
*/
.selectize-control.form-control {
  position: relative;
  padding: 0;
  border: 0;
  background: transparent; }
  .selectize-control.form-control .selectize-input {
    display: flex;
    align-items: center;
    width: 100%;
    height: var(--ui-height-base);
    padding: var(--ui-padding-base-v) var(--ui-padding-base-h);
    font-size: var(--input-font-size);
    font-weight: var(--input-font-weight);
    line-height: var(--input-line-height);
    color: var(--input-color);
    background: var(--input-bg);
    background-clip: padding-box;
    border: var(--input-border);
    border-radius: var(--input-border-radius);
    transition: border-color var(--transition-base), box-shadow var(--transition-base), background var(--transition-base); }
    @media (prefers-reduced-motion: reduce) {
      .selectize-control.form-control .selectize-input {
        transition: none; } }
    .selectize-control.form-control .selectize-input:focus {
      color: var(--input-focus-color);
      background-color: var(--input-focus-bg);
      border-color: var(--input-focus-border-color);
      outline: 0;
      box-shadow: var(--input-box-shadow), var(--input-focus-box-shadow); }
    .selectize-control.form-control .selectize-input:before {
      font-family: var(--font-family-icons-small);
      color: var(--ui-icon-color);
      position: absolute;
      top: 50%;
      right: 7px;
      margin-top: -12px;
      z-index: 2;
      width: 24px;
      height: 24px;
      display: flex;
      justify-content: center;
      align-items: center;
      content: "\e902"; }
    .selectize-control.form-control .selectize-input:hover {
      background: var(--input-hover-bg);
      border-color: var(--input-hover-border-color); }
    .selectize-control.form-control .selectize-input.dropdown-active {
      background: var(--input-focus-bg);
      border-color: var(--input-focus-border-color); }
      .selectize-control.form-control .selectize-input.dropdown-active:before {
        transform: rotate(180deg); }
      .selectize-control.form-control .selectize-input.dropdown-active input {
        z-index: 0;
        border-color: var(--brand-primary); }
    .selectize-control.form-control .selectize-input.items input {
      display: inline-block;
      background: transparent;
      border: none; }
    .selectize-control.form-control .selectize-input.items > div {
      position: relative;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      height: 24px;
      padding: 4px 6px;
      margin: 0 4px 4px 0;
      border: 1px solid var(--gray-lighter-3);
      border-radius: var(--input-border-radius);
      font-size: var(--font-size-sm);
      line-height: var(--line-height-sm); }
      .selectize-control.form-control .selectize-input.items > div .remove {
        position: relative;
        width: 18px;
        height: 16px;
        display: flex;
        justify-content: center;
        align-items: center;
        color: transparent; }
        .selectize-control.form-control .selectize-input.items > div .remove:before {
          position: absolute;
          top: 3px;
          left: 5px;
          content: "\e912";
          display: flex;
          justify-content: center;
          align-items: center;
          width: 13px;
          height: 10px;
          color: var(--ui-icon-color);
          font-family: var(--font-family-icons-small);
          font-size: var(--ui-icon-size-small);
          text-indent: 0; }
    .selectize-control.form-control .selectize-input input {
      color: var(--text-primary-color);
      height: calc(var(--ui-height-base) - 4px);
      border: 0; }
      .selectize-control.form-control .selectize-input input:active, .selectize-control.form-control .selectize-input input:focus {
        outline: 0; }
  .selectize-control.form-control .selectize-dropdown {
    position: absolute;
    z-index: var(--zindex-dropdown);
    padding-top: var(--spacing-1x); }
    .selectize-control.form-control .selectize-dropdown-content {
      max-height: 194px;
      overflow-y: auto;
      padding: 5px 0;
      background: var(--dropdown-bg);
      width: 100% !important;
      border: var(--dropdown-border);
      border-radius: var(--dropdown-border-radius);
      box-shadow: var(--dropdown-box-shadow); }
    .selectize-control.form-control .selectize-dropdown .option {
      color: var(--dropdown-link-color);
      line-height: var(--line-height-base);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      padding: 8px 16px;
      cursor: pointer;
      display: flex;
      align-items: center; }
      .selectize-control.form-control .selectize-dropdown .option .badge {
        margin-left: auto; }
      .selectize-control.form-control .selectize-dropdown .option:hover {
        color: var(--dropdown-link-hover-color);
        background-color: var(--dropdown-link-hover-bg); }
      .selectize-control.form-control .selectize-dropdown .option.selected {
        color: var(--dropdown-link-active-color);
        text-decoration: none;
        outline: 0;
        background-color: var(--dropdown-link-active-bg); }
  .selectize-control.form-control.form-control--xs .selectize-dropdown .option, .selectize-control.form-control.form-control--sm .selectize-dropdown .option {
    min-height: 24px;
    padding: 4px 16px; }
  .selectize-control.form-control.form-control--xlg .selectize-dropdown .option, .selectize-control.form-control.form-control--lg .selectize-dropdown .option {
    min-height: 40px;
    padding: 8px 16px; }
  .selectize-control.form-control.custom-multiselect {
    display: inline-flex;
    width: auto;
    min-width: 50%;
    height: auto;
    min-height: var(--ui-height-base); }
    .selectize-control.form-control.custom-multiselect .selectize-input {
      position: relative;
      overflow: hidden;
      padding: 4px 28px 0 var(--ui-padding-base-h);
      flex-wrap: wrap;
      width: 100%;
      height: auto;
      min-height: var(--ui-height-base); }

.has-dark-background .selectize-input {
  border-color: #fff; }

.required {
  color: var(--text-lighter-color);
  margin-left: 3px; }

.checkbox .required {
  margin-left: 6px; }

.checkbox,
.radio {
  position: relative; }
  .checkbox,
  .checkbox > label,
  .radio,
  .radio > label {
    display: flex;
    align-items: center;
    color: var(--input-color); }
    .checkbox > .checkbox-styled,
    .checkbox > .radio-styled,
    .checkbox > [type="checkbox"],
    .checkbox > [type="radio"],
    .checkbox > label > .checkbox-styled,
    .checkbox > label > .radio-styled,
    .checkbox > label > [type="checkbox"],
    .checkbox > label > [type="radio"],
    .radio > .checkbox-styled,
    .radio > .radio-styled,
    .radio > [type="checkbox"],
    .radio > [type="radio"],
    .radio > label > .checkbox-styled,
    .radio > label > .radio-styled,
    .radio > label > [type="checkbox"],
    .radio > label > [type="radio"] {
      margin-right: var(--checkbox-spacing); }
    .checkbox.label-custom-check,
    .checkbox > label.label-custom-check,
    .radio.label-custom-check,
    .radio > label.label-custom-check {
      align-items: flex-start; }
      .checkbox.label-custom-check .checkbox-styled,
      .checkbox > label.label-custom-check .checkbox-styled,
      .radio.label-custom-check .checkbox-styled,
      .radio > label.label-custom-check .checkbox-styled {
        margin-top: 4px; }
    .checkbox:hover > .checkbox-styled:not(.checked):not(.disabled),
    .checkbox:hover > .radio-styled:not(.checked):not(.disabled), .checkbox:focus-visible > .checkbox-styled:not(.checked):not(.disabled),
    .checkbox:focus-visible > .radio-styled:not(.checked):not(.disabled),
    .checkbox > label:hover > .checkbox-styled:not(.checked):not(.disabled),
    .checkbox > label:hover > .radio-styled:not(.checked):not(.disabled),
    .checkbox > label:focus-visible > .checkbox-styled:not(.checked):not(.disabled),
    .checkbox > label:focus-visible > .radio-styled:not(.checked):not(.disabled),
    .radio:hover > .checkbox-styled:not(.checked):not(.disabled),
    .radio:hover > .radio-styled:not(.checked):not(.disabled),
    .radio:focus-visible > .checkbox-styled:not(.checked):not(.disabled),
    .radio:focus-visible > .radio-styled:not(.checked):not(.disabled),
    .radio > label:hover > .checkbox-styled:not(.checked):not(.disabled),
    .radio > label:hover > .radio-styled:not(.checked):not(.disabled),
    .radio > label:focus-visible > .checkbox-styled:not(.checked):not(.disabled),
    .radio > label:focus-visible > .radio-styled:not(.checked):not(.disabled) {
      border-color: var(--input-hover-border-color); }
  .checkbox + .help-block,
  .radio + .help-block {
    margin-left: calc(var(--icheck-size) + var(--checkbox-spacing)); }

.radio > .icheck-control {
  width: unset !important; }

.icheck-label {
  cursor: pointer; }

.icheck-control {
  display: block;
  height: 180%;
  opacity: 0;
  visibility: hidden; }

.radio-styled,
.checkbox-styled,
.icheckbox_square-blue,
.iradio_square-blue {
  top: -1px;
  position: relative;
  display: flex;
  height: var(--icheck-size);
  width: var(--icheck-size);
  min-width: var(--icheck-size);
  min-height: var(--icheck-size);
  background: var(--icheck-bg);
  border: var(--icheck-border);
  border-radius: var(--icheck-border-radius);
  transition: var(--transition-base);
  cursor: pointer;
  margin-right: var(--spacing-1x); }
  .radio-styled:before,
  .checkbox-styled:before,
  .icheckbox_square-blue:before,
  .iradio_square-blue:before {
    opacity: 0;
    transition: var(--transition-base);
    transform: scale(0.7); }
  .radio-styled:hover, .radio-styled:focus-visible,
  .checkbox-styled:hover,
  .checkbox-styled:focus-visible,
  .icheckbox_square-blue:hover,
  .icheckbox_square-blue:focus-visible,
  .iradio_square-blue:hover,
  .iradio_square-blue:focus-visible {
    border-color: var(--icheck-hover-border-color); }
  .radio-styled.checked,
  .checkbox-styled.checked,
  .icheckbox_square-blue.checked,
  .iradio_square-blue.checked {
    border-color: var(--icheck-active-border-color);
    background: var(--icheck-active-bg); }
    .radio-styled.checked:before,
    .checkbox-styled.checked:before,
    .icheckbox_square-blue.checked:before,
    .iradio_square-blue.checked:before {
      opacity: 1;
      transform: scale(1); }
  .radio-styled.disabled,
  .checkbox-styled.disabled,
  .icheckbox_square-blue.disabled,
  .iradio_square-blue.disabled {
    cursor: not-allowed;
    background: var(--icheck-disabled-bg);
    border-color: var(--icheck-disabled-border-color); }
  .radio-styled > input,
  .checkbox-styled > input,
  .icheckbox_square-blue > input,
  .iradio_square-blue > input {
    opacity: 0;
    visibility: hidden; }

.icheckbox_square-blue:before,
.checkbox-styled:before {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  content: "\e911";
  height: calc(var(--icheck-size) - var(--icheck-border-width) * 2);
  width: calc(var(--icheck-size) - var(--icheck-border-width) * 2);
  color: var(--icheck-active-icon-color);
  font-size: var(--ui-icon-size-small);
  font-family: var(--font-family-icons-small);
  line-height: 1; }

.iradio_square-blue,
.radio-styled {
  border-radius: 100%; }
  .iradio_square-blue:before,
  .radio-styled:before {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: calc(-1* (var(--spacing-1x) / 2));
    margin-left: calc(-1* (var(--spacing-1x) / 2));
    display: flex;
    justify-content: center;
    align-items: center;
    content: '';
    height: var(--spacing-1x);
    width: var(--spacing-1x);
    background: #fff;
    border-radius: 100%; }

[data-radio-tab] .radio-styled {
  display: none; }

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-left: 30px; }

.radio-inline > .addon-selector {
  visibility: hidden;
  opacity: 0; }

.mg-rc-dropdowns .iradio_square-blue,
#containerNewUserSecurity .icheckbox_square-blue {
  display: inline-flex;
  top: 4px; }

.checkbox-style {
  width: var(--icheck-size);
  height: var(--icheck-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--border-radius-sm);
  border: 1px solid var(--gray-lighter-4);
  background: var(--gray-lighter-4); }
  .checkbox-style + * {
    margin-left: var(--ui-block-padding-base); }

.order-checkbox + .section {
  margin-top: var(--spacing-3x); }

/*
*******************************************
Invoice
*******************************************
*/
.invoice {
  background: var(--ui-block-bg);
  border: var(--ui-block-border);
  padding: var(--ui-block-padding-xlg) var(--ui-block-padding-lg);
  border-radius: var(--ui-block-border-radius);
  box-shadow: var(--ui-block-shadow); }
  .invoice-title {
    display: flex;
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-light);
    line-height: var(--line-height-h2);
    color: var(--text-heading-color); }
    .invoice-title-sm {
      font-size: var(--font-size-h3);
      line-height: var(--line-height-h3);
      font-weight: var(--font-weight-medium); }
    .invoice-title .label {
      align-self: center;
      margin-left: var(--ui-block-padding-base);
      margin-left: var(--ui-block-padding-base); }
  .invoice address {
    margin-bottom: 0; }
  .invoice .well {
    border-width: 1px 0;
    border-radius: 0; }
  .invoice .list-info li {
    margin-bottom: 0 !important; }
  .invoice .sub-total-row td {
    height: auto;
    padding-top: 5px;
    padding-bottom: 5px;
    border: 0;
    color: var(--text-lighter-color); }
  .invoice .sub-total-row.last td {
    padding-bottom: 16px; }
  .invoice .sub-total-row.first td {
    border-top: 1px solid var(--table-border-color);
    padding-top: 16px;
    color: var(--text-heading-color); }
  .invoice .table td {
    vertical-align: middle; }
  .invoice .total-row td {
    background: none;
    border-bottom: 1px solid var(--ui-block-divider-color);
    font-weight: var(--font-weight-medium);
    vertical-align: middle;
    font-weight: var(--font-weight-bold); }
    @media (min-width: 768px) {
      .invoice .total-row td {
        background: var(--gray-faded); } }
  .invoice .notes {
    margin-top: var(--ui-block-spacing-lg); }
    .invoice .notes .notes-body {
      border: 1px solid var(--well-border);
      background-color: var(--bg-color-transparent);
      box-shadow: none; }
  .invoice .section h3 {
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
    font-weight: var(--font-weight-medium);
    margin-bottom: var(--ui-block-spacing-xs); }
  .invoice-debit-note {
    max-width: 960px;
    margin-inline: auto; }

@media (max-width: 767.98px) {
  .invoice {
    padding: 26px 24px 32px; } }

/*
*******************************************
Invoice - Sidebar 
*******************************************
*/
.panel-payment .select-inline {
  width: 100%; }

.panel-payment form + .btn + form + .btn {
  margin-top: var(--ui-block-padding-base); }

.panel-payment .btn + .btn {
  margin-top: var(--ui-block-padding-base); }

.panel-summary.panel-view-invoice .payment-form > p br {
  display: block; }

.debit-note-action {
  display: flex;
  justify-content: flex-end; }

.payment-form p {
  color: rgba(255, 255, 255, 0.64);
  margin: 0; }

.payment-form table {
  margin: 0;
  background: none;
  display: block;
  border-spacing: 0;
  border-collapse: unset; }
  .payment-form table tbody, .payment-form table tr, .payment-form table td {
    border-spacing: 0;
    border-collapse: unset;
    display: block;
    height: auto;
    padding: 0 !important;
    border: 0; }
  .payment-form table tbody tr td + td {
    margin-top: var(--ui-block-spacing-sm); }

.payment-form input[type="submit"],
.payment-form .btn {
  margin: 0 !important; }
  .payment-form input[type="submit"] i:not(.fa-spinner),
  .payment-form .btn i:not(.fa-spinner) {
    display: none; }
  .payment-form input[type="submit"] .fa-spinner,
  .payment-form .btn .fa-spinner {
    margin-left: 16px;
    margin-right: -16px;
    margin-top: -2px; }

.payment-form input[type="password"],
.payment-form input[type="text"] {
  display: block;
  width: 100%;
  height: var(--ui-height-base-base);
  padding: var(--padding-base-vertical) var(--padding-base-horizontal);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--input-color);
  background-color: var(--input-bg);
  background-image: none;
  border: 1px solid var(--input-bg);
  border-radius: var(--input-border-radius);
  transition: border-color var(--transition-base), box-shadow var(--transition-base); }
  @media (prefers-reduced-motion: reduce) {
    .payment-form input[type="password"],
    .payment-form input[type="text"] {
      transition: none; } }
  .payment-form input[type="password"]:focus,
  .payment-form input[type="text"]:focus {
    outline: 0; }
  .payment-form input[type="password"]::-ms-expand,
  .payment-form input[type="text"]::-ms-expand {
    border: 0;
    background-color: transparent; }
  .payment-form input[type="password"][disabled], .payment-form input[type="password"][readonly],
  fieldset[disabled] .payment-form input[type="password"],
  .payment-form input[type="text"][disabled],
  .payment-form input[type="text"][readonly],
  fieldset[disabled]
  .payment-form input[type="text"] {
    background-color: var(--input-bg-disabled);
    opacity: 1; }
  .payment-form input[type="password"][disabled],
  fieldset[disabled] .payment-form input[type="password"],
  .payment-form input[type="text"][disabled],
  fieldset[disabled]
  .payment-form input[type="text"] {
    cursor: disabled; }

.payment-form .btn-sm, .payment-form .btn-group-sm > .btn {
  padding: var(--ui-padding-base-v) var(--ui-padding-base-h);
  font-size: var(--btn-base-font-size);
  line-height: var(--line-height-base);
  border-radius: var(--btn-base-border-radius);
  height: var(--ui-height-base);
  font-weight: var(--font-weight-medium); }

.payment-form input[type="button"],
.payment-form input[type="submit"],
.payment-form .btn {
  height: auto;
  min-height: var(--ui-height-base);
  white-space: unset; }

@media (max-width: 991.98px) {
  .page-viewinvoice .row-eq-height.row-eq-height {
    display: block; } }

.page-viewinvoice .section--bank-details .section-body > p {
  margin-bottom: 0; }

@media (max-width: 767.98px) {
  .page-viewinvoice .invoice .table-condensed tr td {
    white-space: normal !important; }
  .page-viewinvoice .invoice .table-condensed.m-b-0 thead > tr > th:nth-child(3) {
    display: none;
    /*&:after {
                                        content: "ID";
                                        display: flex;
                                        align-items: center;
                                        justify-content: center;
                                        font-weight: var(--font-weight-base);
                                    }*/ }
    .page-viewinvoice .invoice .table-condensed.m-b-0 thead > tr > th:nth-child(3) span {
      display: none; }
  .page-viewinvoice .invoice .table-condensed.m-b-0 tbody > tr:not(.total-row) > td:nth-child(3) {
    display: none; }
  .page-viewinvoice .invoice .table-condensed.m-b-0 tbody > tr.total-row > td:first-of-type {
    display: none; }
  .page-viewinvoice .invoice .sub-total-row.first td {
    white-space: nowrap !important; } }

@media (max-width: 380px) {
  .page-viewinvoice .invoice .table-condensed tr td {
    white-space: nowrap !important; } }

/*
*******************************************
list - List Info
*******************************************
*/
.list-info {
  padding: 0;
  margin: 0; }
  .list-info li {
    display: flex; }
  .list-info-text {
    color: var(--text-heading-color); }
  .list-info-title {
    color: var(--text-lighter-color);
    margin-bottom: 4px; }
  .list-info-v li {
    flex-direction: column; }
    .list-info-v li:not(:last-of-type) {
      margin-bottom: var(--ui-block-spacing-sm); }
  .list-info-v .list-info-text {
    font-size: var(--font-size-lg);
    line-height: var(--font-size-lg);
    color: var(--text-heading-color); }
  .list-info-50 li:not(:last-of-type) {
    margin-bottom: 10px; }
  .list-info-50 .list-info-title, .list-info-50 .list-info-text {
    flex-basis: 50%;
    word-break: break-word; }
  .list-info-sm {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm); }
  .list-info-bordered li {
    margin: 0 !important;
    padding: var(--ui-block-padding-sm) var(--ui-block-padding-base); }
    .list-info-bordered li:not(:last-of-type) {
      border-bottom: 1px solid var(--ui-block-divider-color); }

.list-features > li {
  padding: var(--spacing-1x) 0; }
  .list-features > li i {
    margin-right: var(--ui-block-spacing-sm);
    color: var(--text-primary-color); }

/*
*******************************************
List Group - General
*******************************************
*/
.list-group-v .list-group-item {
  padding-left: 0;
  padding-right: 0; }

.list-group-item .badge {
  background-color: transparent;
  color: var(--list-group-item-badge-color); }

/*
*******************************************
List Group - Sidebar
*******************************************
*/
.main-sidebar .list-group-item-selected,
.sidebar .list-group-item-selected {
  background: var(--list-group-item-selected-bg);
  color: var(--list-group-item-selected-badge-color); }
  .main-sidebar .list-group-item-selected .badge,
  .sidebar .list-group-item-selected .badge {
    background-color: var(--list-group-item-selected-badge-bg);
    color: var(--list-group-item-selected-badge-color); }

/*
*******************************************
 Message
*******************************************
*/
.message,
.message-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }

.message {
  background: var(--ui-block-bg);
  box-shadow: var(--ui-block-shadow);
  border: var(--ui-block-border);
  border-radius: var(--ui-block-border-radius);
  padding: var(--ui-block-padding-base); }
  .message > *:last-child {
    margin-bottom: 0; }
  .message-body {
    max-width: var(--max-width-sm); }
  .message-icon {
    width: 56px;
    height: 56px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid var(--ui-icon-color);
    border-radius: 100%;
    color: var(--ui-icon-color); }
    .message-icon img {
      max-width: 100%; }
  .message-image {
    width: 64px;
    height: 64px;
    display: flex;
    justify-content: center;
    align-items: center; }
    .message-image img {
      max-width: 100%; }
  .message-title {
    margin-top: var(--ui-block-padding-base);
    margin-bottom: var(--ui-block-spacing-lg);
    text-align: center;
    font-size: var(--font-size-h4);
    font-weight: var(--font-weight-h4);
    line-height: var(--line-height-h4); }
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .message-title {
        max-width: 100%; } }
    .message-title:last-child {
      margin-bottom: 0; }
    .message-title:first-child {
      margin-top: 0; }
  .message-desc {
    display: block;
    color: var(--text-lighter-color);
    text-align: center;
    margin-bottom: var(--ui-block-spacing-lg); }
  .message-actions {
    text-align: center; }
    .message-actions > .btn + .btn {
      margin-left: var(--ui-block-spacing-sm); }
  .message:not(.hidden) + .message {
    margin-top: var(--ui-block-spacing-lg); }
  .message-no-border {
    border: none; }

.message-no-data {
  min-height: 380px; }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .message-no-data {
      height: 320px; } }
  .message-no-data .message-image {
    width: 48px;
    height: 48px; }
    .message-no-data .message-image svg {
      width: 48px;
      height: 48px; }
  .message-no-data .message-title {
    font-size: var(--font-size-h6);
    font-weight: var(--font-weight-base);
    line-height: var(--line-height-h6);
    max-width: var(--max-width-sm); }
    .message-no-data .message-title:has(+ .message-desc) {
      margin-bottom: 4px; }
  .message-no-data .message-desc {
    color: var(--text-body-color); }

/*
*******************************************
Message - Horizontal
*******************************************
*/
@media (min-width: 992px) {
  .message-h,
  .message-h .message-content {
    flex-direction: row;
    justify-content: space-between;
    align-items: center; }
    .message-h .message-body,
    .message-h .message-content .message-body {
      flex: 1;
      max-width: unset;
      width: 100%;
      align-items: flex-start; }
    .message-h .message-title,
    .message-h .message-actions,
    .message-h .message-content .message-title,
    .message-h .message-content .message-actions {
      margin-top: 0;
      text-align: left; }
    .message-h > * + *,
    .message-h .message-content > * + * {
      margin-left: var(--ui-block-spacing-lg); }
    .message-h.message-lg > * + *,
    .message-h .message-content.message-lg > * + * {
      margin-left: var(--ui-block-spacing-xlg); }
  .message-h .message-content {
    display: flex;
    width: 100%;
    margin: 0 auto; } }

@media (max-width: 1319.98px) {
  .message-h .message-actions {
    margin-top: var(--spacing-2x); }
  .message-h .message-content .message-actions {
    margin-top: var(--spacing-2x); } }

/*
*******************************************
Message - Sizes
*******************************************
*/
.message-lg {
  padding: var(--ui-block-padding-xlg); }
  .message-lg.message-no-data {
    padding: var(--ui-block-padding-xlg);
    align-self: flex-start; }
  .message-lg .message-icon {
    width: 80px;
    height: 80px; }
    .message-lg .message-icon > i {
      font-size: var(--font-size-xxlg); }

/*
*******************************************
Message - States
*******************************************
*/
.message-success .message-icon {
  color: var(--state-success-text);
  border-color: var(--state-success-bg);
  background: var(--state-success-bg); }

.message-success .message-text,
.message-success .message-title {
  color: var(--text-success-color); }

.message-danger .message-icon {
  color: var(--state-danger-text);
  border-color: var(--state-danger-bg);
  background: var(--state-danger-bg); }

.message-danger .message-text,
.message-danger .message-title {
  color: var(--text-danger-color); }

.message-warning .message-icon {
  color: var(--state-warning-text);
  border-color: var(--state-warning-bg);
  background: var(--state-warning-bg); }

.message-warning .message-text,
.message-warning .message-title {
  color: var(--text-warning-color); }

.message-info .message-icon {
  color: var(--state-info-text);
  border-color: var(--state-info-bg);
  background: var(--state-info-bg); }

.message-info .message-text,
.message-info .message-title {
  color: var(--text-info-color); }

/*
*******************************************
Panel - General
*******************************************
*/
.panel {
  position: relative;
  display: block; }
  .panel-nav, .panel-tabs {
    padding: 0 var(--ui-block-padding-base);
    background: var(--ui-block-header-bg);
    border-bottom: 1px solid var(--panel-border-divider-color);
    padding: 0 calc(var(--panel-body-padding) - var(--nav-link-padding-h)); }
    .panel-nav > li, .panel-tabs > li {
      margin-right: 0 !important; }
  .panel-form {
    background: var(--ui-block-bg-form); }
  .panel-dropdown {
    z-index: auto; }
    .panel-dropdown .dropdown-menu {
      width: 100%; }
  .panel-footer-space-between {
    display: flex;
    justify-content: space-between; }
  .panel-footer img {
    max-width: 150px !important;
    margin: 5px 0 15px;
    display: block; }
  .panel-footer br {
    display: none; }
  .panel-footer-sm {
    padding: var(--spacing-1x) var(--spacing-3x); }
  .panel-footer .panel-footer-link {
    color: var(--text-lighter-color); }
    .panel-footer .panel-footer-link:hover {
      color: var(--text-primary-color); }
  .panel-footer:not(.summary-bottom) .btn + .btn {
    margin-left: var(--spacing-1x); }
  @media (max-width: 365px) {
    .panel-footer:not(.summary-bottom) .btn {
      width: 100%; }
      .panel-footer:not(.summary-bottom) .btn + .btn {
        margin: var(--spacing-1x) 0 0 0; } }
  .panel-lg .panel-heading {
    padding: var(--panel-lg-heading-padding); }
  .panel-lg .panel-body {
    padding: var(--panel-lg-body-padding); }
    .panel-lg .panel-body.panel-body-hosting {
      position: relative;
      padding: var(--panel-body-padding) var(--panel-lg-body-padding);
      overflow: hidden;
      padding-right: 270px; }
      @media (max-width: 767.98px) {
        .panel-lg .panel-body.panel-body-hosting {
          padding-right: 120px; } }
      .panel-lg .panel-body.panel-body-hosting > h5 {
        font-weight: var(--font-weight-bold); }
      .panel-lg .panel-body.panel-body-hosting > p {
        color: var(--text-body-color); }
      .panel-lg .panel-body.panel-body-hosting .panel-icon {
        position: absolute;
        top: -73px;
        right: -32px;
        height: 252px;
        width: 292px;
        background-repeat: no-repeat !important;
        background-size: cover !important; }
        .panel-lg .panel-body.panel-body-hosting .panel-icon > svg {
          position: absolute;
          width: 100%;
          height: 100%;
          right: 0;
          bottom: 0;
          opacity: 1; }
        @media (max-width: 767.98px) {
          .panel-lg .panel-body.panel-body-hosting .panel-icon {
            top: -20px;
            right: -16px;
            height: 100px;
            width: 142px; } }
  .panel-lg .panel-footer {
    padding: var(--panel-lg-footer-padding); }
  .panel.active {
    border-color: var(--panel-active-border-color);
    background: var(--panel-active-bg); }
  .panel .panel-body:not(.tab-pane) + .panel-body {
    border-top: 1px solid var(--ui-block-divider-color); }

a.panel {
  transition: all var(--transition-base); }
  a.panel:hover, a.panel:focus, a.panel:focus-visible, a.panel:active {
    transform: translate3d(0, -8px, 0);
    background: var(--panel-hover-bg);
    border-color: var(--panel-hover-border-color);
    box-shadow: var(--panel-hover-shadow); }

/*
*******************************************
Panel - List Group
*******************************************
*/
.panel .list-group {
  display: block !important;
  margin: 0;
  border: none;
  box-shadow: none;
  border-radius: 0;
  background: transparent; }
  .panel .list-group > .list-group-item:last-child, .panel .list-group > .list-group-item:last-of-type {
    border-bottom: 0; }
  .panel .list-group > .list-group-item i {
    display: inline-block;
    width: 12px;
    height: 12px;
    text-align: center; }
    .panel .list-group > .list-group-item i:first-child {
      margin-right: var(--spacing-1x); }
  .panel .list-group > .list-group-item.disabled, .panel .list-group > .list-group-item.disabled:focus, .panel .list-group > .list-group-item.disabled:focus-visible, .panel .list-group > .list-group-item.disabled:hover {
    background: var(--panel-sidebar-border-color);
    opacity: 0.5; }
  .panel .list-group > .list-group-item i:first-child {
    margin-right: var(--spacing-1x); }
  .panel .list-group > a.list-group-item.active, .panel .list-group > a.list-group-item.active:hover, .panel .list-group > a.list-group-item.active:focus {
    background: var(--list-group-item-link-active-bg); }

.panel .tweet {
  padding: var(--ui-block-padding-base);
  border-bottom: 1px solid var(--ui-block-divider-color); }
  .panel .tweet > i {
    font-size: 19px; }
  .panel .tweet > p {
    padding: 0;
    margin: 0; }
  .panel .tweet + p {
    padding: var(--ui-block-padding-sm);
    margin: 0; }

.panel#twitterFeedOutput .loader {
  padding: var(--ui-block-padding-base); }

/*
*******************************************
Panel - Collapsable (ticket reply)
*******************************************
*/
.panel-collapsable > .panel-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 0;
  cursor: pointer;
  border-color: var(--ui-block-border-color); }
  .panel-collapsable > .panel-heading .collapse-icon {
    order: 2; }
  .panel-collapsable > .panel-heading .panel-title,
  .panel-collapsable > .panel-heading .panel-title > i {
    color: var(--link-color); }

.panel-collapsable > .panel-body {
  padding: 18px 15px 24px; }

.panel-collapsable > .panel-body-collapsed {
  display: none; }

/*
*******************************************
Panel - Promocode
*******************************************
*/
.panel-promo-code .panel-heading {
  display: flex;
  gap: var(--spacing-2x); }
  @media (max-width: 991.98px) {
    .panel-promo-code .panel-heading {
      flex-direction: column;
      align-items: flex-start; } }
  .panel-promo-code .panel-heading label {
    display: flex;
    gap: var(--spacing-1x);
    margin-bottom: 0;
    padding: 6px 12px;
    font-weight: var(--font-weight-medium); }
  .panel-promo-code .panel-heading .promo-code-content {
    display: flex;
    gap: var(--spacing-2x);
    align-items: center;
    color: var(--label-savings-color);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-base); }
  .panel-promo-code .panel-heading .promo-code-action {
    margin-left: auto; }
    @media (max-width: 991.98px) {
      .panel-promo-code .panel-heading .promo-code-action {
        flex-direction: column;
        margin-left: unset; } }

/*
*******************************************
Panel - Check
*******************************************
*/
.panel-check {
  transition: border-color var(--transition-base); }
  .panel-check.checked {
    border-color: var(--panel-active-border-color) !important;
    background: var(--panel-active-bg);
    z-index: 9; }
    .panel-check.checked .check-sign {
      display: flex; }
  .panel-check.disabled {
    cursor: not-allowed !important;
    border-color: var(--gray-lighter-4); }
    .panel-check.disabled .check-content {
      opacity: 0.5; }
    .panel-check.disabled .check > label {
      cursor: not-allowed !important; }

.panel-check .panel-heading.check {
  padding: 0; }
  .panel-check .panel-heading.check .account-select-label {
    margin-left: auto; }

.panel-check .check {
  position: relative;
  margin: 0;
  align-items: center; }
  .panel-check .check > label {
    display: flex;
    width: 100%;
    padding: var(--panel-check-padding);
    cursor: pointer; }
    .panel-check .check > label > .checkbox-styled,
    .panel-check .check > label > .radio-styled,
    .panel-check .check > label > .icheck-control {
      position: absolute;
      top: calc(var(--panel-check-padding) + (var(--line-height-md) - var(--icheck-size)) / 2);
      left: var(--panel-check-padding); }
  .panel-check .check > :last-child {
    margin-bottom: 0; }

.panel-check .check-content {
  flex: 1;
  margin-left: calc(var(--icheck-size) + var(--ui-block-spacing-sm)); }
  .panel-check .check-content > span {
    color: var(--text-heading-color);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-md); }

.panel-check .check-title {
  margin-bottom: 0;
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-md);
  line-height: var(--line-height-base); }
  .panel-check .check-title [data-toggle='tooltip'] {
    margin-left: 8px;
    color: var(--ui-icon-color); }
    .panel-check .check-title [data-toggle='tooltip']:hover {
      color: var(--text-primary-color); }

.panel-check .check-subtitle {
  margin-top: 6px;
  margin-bottom: 0; }

.panel-check .check-desc {
  margin: 8px 0 0 0;
  color: var(--text-body-color);
  font-size: var(--font-size-xs); }

.panel-check .check-icon {
  display: flex;
  align-items: center; }

.check-cycle .check-subtitle {
  color: var(--text-lighter-color);
  font-size: var(--font-size-xs);
  line-height: var(--line-height-sm); }
  .check-cycle .check-subtitle .save,
  .check-cycle .check-subtitle .text-primary {
    margin-top: var(--ui-block-spacing-xs);
    text-transform: uppercase; }

.check-cycle.save-attached .check-subtitle {
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  font-weight: var(--font-weight-light); }

.check-cycle.save-attached .label-save {
  position: absolute;
  top: -12px;
  right: 16px;
  border-radius: 3px;
  margin: 0; }

/*
*******************************************
Panel - Switch
*******************************************
*/
.panel-switch {
  user-select: none;
  border: var(--input-border);
  transition: border-color var(--transition-base), box-shadow var(--transition-base); }
  @media (prefers-reduced-motion: reduce) {
    .panel-switch {
      transition: none; } }
  .panel-switch:hover, .panel-switch:focus-visible {
    border-color: var(--input-hover-border-color); }
  .panel-switch .panel-body {
    display: flex;
    align-items: center;
    padding: 24px 16px; }
    .panel-switch .panel-body .switch {
      margin: 0 0 0 auto; }
    .panel-switch .panel-body .switch-label {
      display: block;
      text-align: left;
      color: var(--text-heading-color);
      margin-bottom: 0;
      padding-right: var(--ui-block-padding-base); }

.panel-check,
.panel-switch {
  cursor: pointer; }
  .panel-check:hover, .panel-check:focus-visible,
  .panel-switch:hover,
  .panel-switch:focus-visible {
    border-color: var(--panel-hover-border-color); }
  .panel-check > .check,
  .panel-switch > .check {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    height: 100%; }
  .panel-check-group,
  .panel-switch-group {
    margin-bottom: -24px !important; }

/*
*******************************************
Panel - Group
*******************************************
*/
.panel-group .panel-heading {
  border-color: transparent;
  background: transparent; }

.panel-group-condensed {
  background: var(--ui-block-bg);
  box-shadow: var(--ui-block-shadow);
  border-radius: var(--panel-border-radius); }
  .panel-group-condensed > .panel {
    position: relative;
    box-shadow: none; }
    .panel-group-condensed > .panel + .panel {
      border-top-left-radius: 0;
      border-top-right-radius: 0;
      border-top: 1px solid var(--ui-block-divider-color); }
    .panel-group-condensed > .panel:not(:last-child) {
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0; }
    .panel-group-condensed > .panel .panel-heading + .panel-collapse > .panel-body,
    .panel-group-condensed > .panel .panel-heading + .panel-collapse > .list-group {
      border-top: 0; }
  .panel-group-condensed > .panel-check {
    cursor: auto; }

body.lagom-default .panel-group-condensed > .panel + .panel {
  margin-top: -1px; }

body:not(.lagom-default) .panel-group-condensed > .panel.checked {
  border-color: var(--ui-block-divider-color) !important; }

.panel-configure-option .form-group {
  display: flex;
  gap: var(--spacing-2x); }
  @media (max-width: 767.98px) {
    .panel-configure-option .form-group {
      flex-direction: column;
      gap: var(--spacing-1x); } }
  .panel-configure-option .form-group > div {
    background-color: var(--input-group-addon-bg);
    border-radius: var(--input-border-radius);
    padding: var(--spacing-1x) var(--spacing-2x); }

/*
*******************************************
Panel - Accordion
*******************************************
*/
.panel-accordion {
  overflow: hidden;
  transition: border-color var(--transition-base); }
  .panel-accordion .panel-heading {
    display: flex;
    border: none;
    cursor: pointer;
    background: var(--panel-accordion-heading-bg);
    outline: none !important; }
    .panel-accordion .panel-heading > .panel-title {
      display: flex;
      width: 100%;
      transition: color var(--transition-base);
      align-items: center; }
      .panel-accordion .panel-heading > .panel-title > i {
        transition: color var(--transition-base);
        order: 1;
        margin-left: auto;
        color: var(--ui-icon-color); }
    .panel-accordion .panel-heading:focus-visible > .panel-title, .panel-accordion .panel-heading:hover > .panel-title {
      color: var(--panel-accordion-active-heading-color); }
      .panel-accordion .panel-heading:focus-visible > .panel-title > i, .panel-accordion .panel-heading:hover > .panel-title > i {
        color: var(--panel-accordion-active-heading-color); }
  .panel-accordion .panel-body {
    border-top: 0px;
    padding-top: 0px; }
    .panel-accordion .panel-body > :last-child {
      margin-bottom: 0; }
  .panel-accordion.is-open {
    z-index: 2;
    border-color: var(--panel-accordion-active-border-color) !important; }
    .panel-accordion.is-open .panel-heading > .panel-title {
      color: var(--panel-accordion-active-heading-color); }
      .panel-accordion.is-open .panel-heading > .panel-title > i {
        color: var(--panel-accordion-active-heading-color); }
        .panel-accordion.is-open .panel-heading > .panel-title > i:before {
          content: "\e955"; }
  .panel-accordion:hover {
    z-index: 2;
    border-color: var(--panel-accordion-hover-border-color) !important; }

@media (max-width: 479.98px) {
  .panel-feedback .btn-group {
    width: 100%; }
    .panel-feedback .btn-group .btn {
      padding: var(--ui-padding-base-v);
      height: var(--ui-height-sm); } }

#paymentGatewaysContainer .check-icon {
  max-width: 70px;
  justify-content: center; }
  #paymentGatewaysContainer .check-icon img, #paymentGatewaysContainer .check-icon svg {
    height: auto;
    width: 100%; }

.panel-support-tickets span strong {
  word-break: break-word; }

.panel-sensitive-data {
  border-left: 3px solid var(--brand-success); }
  .panel-sensitive-data .panel-body svg {
    margin-right: var(--spacing-1x); }

.panel-cancelrequest .well {
  box-shadow: none; }

.panel-cancelrequest .alert {
  align-items: start; }
  .panel-cancelrequest .alert .alert-icon {
    align-self: start; }

.panel-cancelrequest .checkbox {
  font-size: var(--font-size-md);
  margin-bottom: var(--ui-block-spacing-xs); }
  .panel-cancelrequest .checkbox + p {
    padding-left: calc(var(--icheck-size) + var(--checkbox-spacing)); }

.panel-cancelrequest + .panel .btn + .btn {
  margin-left: var(--spacing-2x); }
  @media (max-width: 479.98px) {
    .panel-cancelrequest + .panel .btn + .btn {
      margin-top: var(--spacing-2x);
      margin-left: 0; } }

@media (max-width: 479.98px) {
  .panel-cancelrequest + .panel .btn {
    width: 100%; } }

.tab-pane#Addons .panel-title:has(.graphic-item) {
  display: flex;
  align-items: center;
  gap: var(--ui-block-spacing-base); }

/*
*******************************************
 Panel Sidebar
*******************************************
*/
.panel-sidebar:not(.panel-summary) {
  border-width: var(--panel-sidebar-border-width);
  border: var(--panel-sidebar-border);
  background: var(--panel-sidebar-bg);
  box-shadow: var(--panel-sidebar-box-shadow);
  /* Style the panel sidebar links */ }
  .panel-sidebar:not(.panel-summary) .panel-heading {
    min-height: var(--panel-sidebar-heading-height);
    padding: var(--panel-sidebar-heading-padding);
    background: var(--panel-sidebar-heading-bg);
    border-bottom: 0; }
    .panel-sidebar:not(.panel-summary) .panel-heading + .panel-footer {
      padding-top: 0; }
  .panel-sidebar:not(.panel-summary) .panel-body {
    display: block !important;
    padding: var(--panel-sidebar-body-padding); }
  .panel-sidebar:not(.panel-summary) .panel-footer {
    padding: var(--panel-sidebar-footer-padding);
    background: var(--panel-sidebar-footer-bg);
    border-top: 0; }
    .panel-sidebar:not(.panel-summary) .panel-footer .btn {
      display: inline-flex;
      width: auto; }
      .panel-sidebar:not(.panel-summary) .panel-footer .btn i {
        display: none; }
  .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group {
    margin: 0;
    padding: var(--panel-sidebar-body-padding); }
    .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > .list-group-item {
      padding: 5px 0;
      margin: 0;
      border: none; }
      .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > .list-group-item.disabled {
        pointer-events: none; }
    .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item {
      background: var(--panel-sidebar-link-bg);
      padding: var(--panel-sidebar-link-padding);
      margin: var(--panel-sidebar-link-margin);
      border-radius: var(--panel-sidebar-link-border-radius);
      color: var(--panel-sidebar-link-color); }
      .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item > i {
        color: var(--panel-sidebar-link-icon-color);
        transition: color var(--transition-base); }
      .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:hover, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:focus, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:focus-visible, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active {
        background: var(--panel-sidebar-link-hover-bg);
        padding-left: var(--panel-sidebar-link-hover-padding-h);
        padding-right: var(--panel-sidebar-link-hover-padding-h);
        color: var(--panel-sidebar-link-hover-color); }
        .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:hover > i, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:focus > i, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:focus-visible > i, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active > i {
          color: var(--panel-sidebar-link-hover-icon-color); }
        .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:hover::before, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:focus::before, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:focus-visible::before, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active::before {
          color: var(--panel-sidebar-link-hover-icon-color); }
      .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item:active {
        outline: none; }
      .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active:hover, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active:focus {
        background: var(--panel-sidebar-link-active-bg);
        padding-left: var(--panel-sidebar-link-active-padding-h);
        padding-right: var(--panel-sidebar-link-active-padding-h);
        color: var(--panel-sidebar-link-active-color); }
        .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active > i, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active:hover > i, .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item.active:focus > i {
          color: var(--panel-sidebar-link-active-icon-color); }
      .panel-sidebar:not(.panel-summary):not(.panel-styled-group) .list-group > a.list-group-item .loading {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%); }
  .panel-sidebar:not(.panel-summary) .panel-minimise {
    display: none; }
  .panel-sidebar:not(.panel-summary) .recent-ticket {
    line-height: 20px;
    max-width: 100%; }
  .panel-sidebar:not(.panel-summary).view-filter-btns .list-group-item.active, .panel-sidebar:not(.panel-summary).view-filter-btns .list-group-item.active:focus, .panel-sidebar:not(.panel-summary).view-filter-btns .list-group-item.active::focus-visible, .panel-sidebar:not(.panel-summary).view-filter-btns .list-group-item.active:hover {
    background-color: #eee;
    border-color: #eee;
    color: #555; }
  .panel-sidebar:not(.panel-summary) label {
    margin-bottom: 4px; }
  .panel-sidebar:not(.panel-summary).panel-add-funds .panel-body .form-group .input-group {
    flex-direction: column; }
    .panel-sidebar:not(.panel-summary).panel-add-funds .panel-body .form-group .input-group input[type="submit"] {
      width: 100%;
      margin: 12px 0px 0px 0px; }
  .panel-sidebar:not(.panel-summary)[menuitemname="Support PIN"] .input-group-btn #dpl_copyPin {
    color: var(--primary-block-btn-color);
    background: var(--primary-block-btn-bg);
    border-color: var(--primary-block-btn-border-color); }
    .panel-sidebar:not(.panel-summary)[menuitemname="Support PIN"] .input-group-btn #dpl_copyPin:hover {
      color: var(--primary-block-btn-hover-color);
      background-color: var(--primary-block-btn-hover-bg);
      border-color: var(--primary-block-btn-hover-border-color); }
  .panel-sidebar:not(.panel-summary)[menuitemname="Support PIN"] .input-group-btn i {
    display: block;
    margin-right: 0px; }
  .panel-sidebar:not(.panel-summary)[menuitemname="Support PIN"] .pincode-input-container {
    display: flex; }
    .panel-sidebar:not(.panel-summary)[menuitemname="Support PIN"] .pincode-input-container input {
      background: var(--ui-block-bg) !important;
      text-align: center;
      width: 100%; }
  .panel-sidebar:not(.panel-summary).panel-register {
    padding: var(--panel-body-padding); }
    .panel-sidebar:not(.panel-summary).panel-register.panel-sidebar-default {
      border: var(--ui-block-border);
      border-radius: var(--ui-block-border-radius);
      box-shadow: var(--ui-block-shadow);
      background: var(--ui-block-bg); }
    .panel-sidebar:not(.panel-summary).panel-register .input-group {
      background: var(--input-bg);
      border-radius: var(--border-radius-base);
      border: 1px solid var(--input-border-color); }
      .panel-sidebar:not(.panel-summary).panel-register .input-group-addon {
        border: 0;
        background-color: transparent;
        padding-right: 0; }
        .panel-sidebar:not(.panel-summary).panel-register .input-group-addon i {
          color: var(--search-field-icon-color); }
    .panel-sidebar:not(.panel-summary).panel-register .form-control {
      border: 0;
      background-color: transparent; }

.sidebar .panel-sidebar {
  margin-bottom: var(--panel-sidebar-margin-bottom); }
  .sidebar .panel-sidebar .panel-body {
    display: block !important; }

.panel-sidebar .panel-title {
  /* Hide panel icons generated by WHMCS */ }
  .panel-sidebar .panel-title > i {
    width: 0;
    overflow: hidden;
    margin-left: -8px;
    display: inline-block;
    line-height: 0; }

@media (max-width: 991.98px) {
  .panel-sidebar:not(.panel-ticket-information) > .list-group .list-group-item {
    margin-right: var(--spacing-1x) !important; }
  .panel-sidebar:not(.panel-ticket-information) > .list-group {
    display: flex !important;
    flex-wrap: wrap; }
    .panel-sidebar:not(.panel-ticket-information) > .list-group .list-group-item {
      width: 100%;
      margin-right: var(--ui-block-padding-base); }
  .panel-sidebar:not(.panel-recent-tickets) > .list-group {
    flex-direction: row; } }

@media (min-width: 768px) and (max-width: 991.98px) {
  .panel-sidebar > .list-group .list-group-item {
    flex-basis: calc(33% - 16px); }
    .panel-sidebar > .list-group .list-group-item:nth-child(3n+3) {
      margin-right: 0;
      flex-basis: 34%; } }

@media (min-width: 480px) and (max-width: 767.98px) {
  .panel-sidebar > .list-group .list-group-item {
    flex-basis: calc(50% - 16px); }
    .panel-sidebar > .list-group .list-group-item:nth-child(2n+2) {
      margin-right: 0;
      flex-basis: 50%; } }

@media (max-width: 479.98px) {
  .panel-sidebar > .list-group .list-group-item {
    margin-right: 0;
    flex-basis: 100%; } }

/*
*******************************************
 Panel Sidebar - Client Details
*******************************************
*/
.panel-sidebar.panel-client-details {
  padding: var(--ui-block-padding-base);
  background: var(--ui-block-bg);
  border: var(--ui-block-border);
  border-radius: var(--ui-block-border-radius);
  box-shadow: var(--ui-block-shadow); }
  .panel-sidebar.panel-client-details .panel-heading {
    display: none;
    height: 0;
    margin: 0;
    padding: 0; }
  .panel-sidebar.panel-client-details strong {
    display: block;
    color: var(--text-heading-color);
    font-size: var(--font-size-h4);
    font-weight: var(--font-weight-h4);
    line-height: var(--line-height-h4);
    margin-bottom: var(--ui-block-padding-base);
    word-wrap: break-word; }
    .panel-sidebar.panel-client-details strong + br {
      display: none; }
  .panel-sidebar.panel-client-details em {
    font-style: normal; }

.panel-sidebar.panel-client-details .panel-footer .btn, .panel-sidebar.panel-client-contacts .panel-footer .btn, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn {
  display: inline-flex;
  width: auto;
  margin-top: 0; }

.panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline), .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline), .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline) {
  height: var(--ui-height-sm);
  padding: var(--ui-padding-sm-v) var(--ui-padding-sm-h);
  font-size: var(--btn-sm-font-size);
  line-height: var(--line-height-sm);
  border-radius: var(--btn-sm-border-radius);
  font-weight: var(--btn-sm-font-weight);
  color: var(--btn-primary-faded-color);
  background: var(--btn-primary-faded-bg);
  border-color: var(--btn-primary-faded-border); }
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):focus, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):focus-visible, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):focus-visible, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):focus-visible, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).focus {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-hover-bg);
    border-color: var(--btn-primary-faded-hover-border); }
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):hover, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):hover, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):hover {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-hover-bg);
    border-color: var(--btn-primary-faded-hover-border); }
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active,
  .open > .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active,
  .open > .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active,
  .open > .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle {
    color: var(--btn-primary-faded-hover-color);
    background-color: var(--btn-primary-faded-active-bg);
    border-color: var(--btn-primary-faded-active-border); }
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
    .open > .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle.focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
    .open > .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle.focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).active.focus,
    .open > .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:hover,
    .open > .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:focus,
    .open > .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
    .open > .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):not(:disabled):not(.disabled).dropdown-toggle.focus {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline), .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline), .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline) {
    color: var(--btn-primary-faded-color);
    background-color: transparent;
    border-color: transparent; }
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):focus, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):focus-visible, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline).focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):focus-visible, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline).focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):focus-visible, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline).focus {
      color: var(--btn-primary-faded-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):hover, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):hover, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):hover {
      color: var(--btn-primary-faded-hover-color);
      background-color: transparent;
      border-color: transparent; }
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
      color: var(--btn-primary-faded-hover-color);
      background-color: transparent;
      border-color: transparent; }
      .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline):active, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).active,
  .open > .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).dropdown-toggle, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline):active, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).active,
  .open > .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).dropdown-toggle, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline):active, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).active,
  .open > .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).dropdown-toggle {
    background-image: none; }
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline), .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline), .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
  fieldset[disabled] .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline) {
    opacity: var(--btn-disabled-opacity);
    color: var(--btn-disabled-color);
    background-color: var(--btn-disabled-bg);
    border-color: var(--btn-disabled-border);
    cursor: not-allowed; }
    .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline) .loader .spinner > div, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline) .loader .spinner > div, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
    fieldset[disabled] .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline) .loader .spinner > div {
      background: var(--btn-disabled-color); }
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline).disabled:not(.btn-primary):not(.btn-default), .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-primary):not(.btn-default), .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline).disabled:not(.btn-primary):not(.btn-default), .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-primary):not(.btn-default), .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline).disabled:not(.btn-primary):not(.btn-default), .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline)[disabled]:not(.btn-primary):not(.btn-default) {
    cursor: not-allowed;
    opacity: 0.6; }
  .panel-sidebar.panel-client-details .panel-footer .btn:not(.btn-outline) .badge, .panel-sidebar.panel-client-contacts .panel-footer .btn:not(.btn-outline) .badge, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn:not(.btn-outline) .badge {
    color: var(--btn-primary-faded-bg);
    background-color: var(--btn-primary-faded-color); }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .panel-sidebar.panel-client-details .panel-footer .btn,
  .panel-sidebar.panel-client-details .panel-footer .btn.btn-outline, .panel-sidebar.panel-client-contacts .panel-footer .btn,
  .panel-sidebar.panel-client-contacts .panel-footer .btn.btn-outline, .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn,
  .panel-sidebar[menuitemname*=Support-Pin] .panel-footer .btn.btn-outline {
    width: 100%;
    margin: 4px 0; } }

.panel-sidebar.panel-client-details .panel-footer {
  margin-left: calc(-1 * var(--spacing-1x));
  margin-top: calc(-1 * var(--spacing-1x)); }
  .panel-sidebar.panel-client-details .panel-footer .btn {
    margin-left: var(--spacing-1x);
    margin-top: var(--spacing-1x) !important; }
  @media (min-width: 992px) and (max-width: 1319.98px) {
    .panel-sidebar.panel-client-details .panel-footer {
      margin-right: var(--spacing-1x); }
      .panel-sidebar.panel-client-details .panel-footer .btn,
      .panel-sidebar.panel-client-details .panel-footer .btn.btn-outline {
        margin: var(--spacing-1x) var(--spacing-1x) 0 var(--spacing-1x); } }

/*
*******************************************
 Panel Sidebar - Client Contacts
*******************************************
*/
.panel-sidebar.panel-client-contacts .list-group {
  margin-bottom: -8px !important; }
  .panel-sidebar.panel-client-contacts .list-group-item {
    display: none;
    /* Set contact icon */
    /* Display only 3 first contacts */ }
    .panel-sidebar.panel-client-contacts .list-group-item:before {
      display: inline-block;
      content: "\e942";
      width: 12px;
      height: 12px;
      margin-right: var(--spacing-1x);
      speak: none;
      font-style: normal;
      font-weight: normal;
      text-transform: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      color: var(--panel-sidebar-link-icon-color);
      font-size: var(--ui-icon-size-small);
      font-family: lagom-small-icons !important;
      font-variant: normal; }
    .panel-sidebar.panel-client-contacts .list-group-item:nth-child(1), .panel-sidebar.panel-client-contacts .list-group-item:nth-child(2), .panel-sidebar.panel-client-contacts .list-group-item:nth-child(3), .panel-sidebar.panel-client-contacts .list-group-item:last-child {
      display: block; }
    .panel-sidebar.panel-client-contacts .list-group-item:last-child:before {
      display: none; }
  .panel-sidebar.panel-client-contacts .list-group > div + .contact-more {
    display: none; }

/*
*******************************************
 Panel Sidebar - Styled List Group
*******************************************
*/
.panel-sidebar.panel-styled-group .list-group {
  background: var(--panel-sidebar-list-group-bg);
  border: var(--panel-sidebar-list-group-border);
  box-shadow: var(--panel-sidebar-list-group-box-shadow);
  border-radius: var(--panel-sidebar-list-group-border-radius); }

.panel-sidebar .list-group .list-group-item[menuitemname="Manage"] form {
  display: inline-block; }

/*
*******************************************
 Panel Sidebar - Tickets
*******************************************
*/
.panel-sidebar.panel-ticket-information .col-button-right {
  padding-left: 7px; }

.panel-sidebar.panel-ticket-information .col-button-left {
  padding-right: 7px; }

.panel-sidebar.panel-ticket-information .btn {
  width: 100% !important; }

.panel-sidebar.panel-ticket-information > .list-group-item {
  overflow: hidden;
  color: var(--text-heading-color); }
  .panel-sidebar.panel-ticket-information > .list-group-item .pull-right {
    float: none !important; }
  .panel-sidebar.panel-ticket-information > .list-group-item .title {
    display: block;
    margin: 0 2px 0;
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs);
    color: var(--text-lighter-color); }

.panel-sidebar.panel-support-hours .panel-body .list-group-item .operating-hour-title,
.panel-sidebar.panel-support-hours .panel-body .list-group-item .operating-hour-zone {
  display: block;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  color: var(--text-body-color); }

.panel-sidebar.panel-support-hours .panel-body .list-group-item .operating-hour-val {
  font-size: var(--font-size-xlg);
  font-weight: var(--font-weight-base);
  line-height: var(--line-height-lg);
  color: var(--text-heading-color); }

.panel-sidebar.panel-support-hours .panel-body > .list-group-item {
  padding: var(--spacing-3x) var(--spacing-3x); }

.panel-sidebar.panel-support-hours .panel-footer {
  padding-top: 0 !important; }

.panel-sidebar.panel-support-hours .support-status {
  position: relative;
  padding-right: 68px;
  font-size: var(--font-size-sm); }
  .panel-sidebar.panel-support-hours .support-status .label {
    position: absolute;
    top: 0;
    right: 0; }

.panel-sidebar.panel-support-tags .panel-body {
  margin-bottom: -4px; }

.panel-sidebar.panel-support-tags a {
  height: 24px;
  line-height: 1;
  align-items: center;
  padding: 1px var(--spacing-1x);
  display: inline-flex;
  border-radius: var(--border-radius-base);
  border: 1px solid var(--gray-lighter-4);
  font-size: 11px !important;
  white-space: nowrap;
  margin-bottom: 4px; }
  .panel-sidebar.panel-support-tags a:not(:hover) {
    color: var(--text-heading-color); }

.panel-sidebar.panel-ticket-cc .w-hidden {
  display: none; }

.panel-sidebar.panel-ticket-cc .ticket-cc-email {
  display: flex;
  align-items: center; }
  .panel-sidebar.panel-ticket-cc .ticket-cc-email .email {
    flex: 1; }

.panel-sidebar.panel-ticket-attachements .list-group .list-group-item {
  word-break: break-all; }

/*
*******************************************
 Panel Sidebar - Add Funds
*******************************************
*/
.panel-sidebar.panel-add-funds:not(.panel-summary) .panel-body {
  padding: var(--panel-body-padding);
  border-radius: var(--ui-block-border-radius);
  border: 1px solid var(--ui-block-divider-color); }

.panel-sidebar.panel-add-funds:not(.panel-summary) .alert {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 0;
  margin-bottom: var(--ui-block-padding-base);
  font-size: var(--price-sm-font-size);
  font-weight: var(--price-sm-font-weight);
  line-height: var(--price-sm-line-height); }

/*
*******************************************
 Panel Sidebar - Box Style
*******************************************
*/
.panel-sidebar.panel-sidebar-primary {
  background: var(--primary-block-bg);
  border: var(--primary-block-border);
  color: var(--primary-block-total-font-color); }
  .panel-sidebar.panel-sidebar-primary .panel-heading .panel-title {
    color: var(--primary-block-title-color); }
  .panel-sidebar.panel-sidebar-primary .panel-footer:after {
    background-color: var(--primary-block-divider-color); }
  .panel-sidebar.panel-sidebar-primary.panel-client-details strong {
    color: var(--primary-block-title-color); }

.panel-sidebar.panel-sidebar-secondary {
  background: var(--secondary-block-bg);
  border: var(--secondary-block-border);
  color: var(--secondary-block-text-faded-color); }
  .panel-sidebar.panel-sidebar-secondary .panel-heading .panel-title {
    color: var(--secondary-block-title-color); }
  .panel-sidebar.panel-sidebar-secondary .panel-footer:after {
    background-color: var(--secondary-block-divider-color); }
  .panel-sidebar.panel-sidebar-secondary.panel-client-details strong {
    color: var(--secondary-block-title-color); }

.panel-ticket-attachements a {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap; }

/*
*******************************************
 Panel Summary
*******************************************
*/
.panel-summary {
  position: relative;
  z-index: 2;
  margin-bottom: var(--ui-block-spacing-lg);
  background: var(--ui-block-bg);
  border: none;
  font-size: var(--panel-summary-text-font-size);
  line-height: var(--panel-summary-text-line-height);
  box-shadow: var(--panel-summary-shadow);
  border-radius: var(--panel-summary-border-radius); }
  .panel-summary .panel-heading {
    padding-top: var(--panel-body-padding);
    padding-bottom: var(--panel-body-padding); }
    .panel-summary .panel-heading .panel-title {
      font-size: var(--panel-summary-title-font-size);
      font-weight: var(--panel-summary-title-font-weight);
      line-height: var(--panel-summary-title-line-height); }
    .panel-summary .panel-heading + #producttotal .panel-body,
    .panel-summary .panel-heading + .panel-body {
      padding-top: 0; }
      .panel-summary .panel-heading + #producttotal .panel-body .order-summary-list:first-child,
      .panel-summary .panel-heading + .panel-body .order-summary-list:first-child {
        padding-top: 0; }
  .panel-summary .panel-body {
    display: block !important; }
    .panel-summary .panel-body > *:last-child {
      margin-bottom: 0 !important; }
  .panel-summary .panel-footer {
    position: relative;
    padding: var(--panel-body-padding);
    background: transparent;
    border: none; }
    .panel-summary .panel-footer .btn-checkout {
      width: 100%; }
      .panel-summary .panel-footer .btn-checkout span {
        display: flex;
        align-items: center;
        gap: 10px; }
    .panel-summary .panel-footer:after {
      position: absolute;
      display: block;
      content: "";
      top: 0;
      left: var(--panel-body-padding);
      right: var(--panel-body-padding);
      height: 1px;
      background-color: var(--ui-block-divider-color); }
    .panel-summary .panel-footer .summary-actions .btn + .btn {
      margin: 0; }
  .panel-summary .list-group {
    margin: 0 var(--ui-block-padding-base); }
    .panel-summary .list-group-item {
      padding: var(--panel-summary-list-item-padding-v) 0 !important; }
      .panel-summary .list-group-item:not(:last-child) {
        border-bottom: 1px solid var(--ui-block-divider-color); }
  .panel-summary > .loader {
    position: absolute;
    top: 20px;
    right: 29px; }
  .panel-summary + .alert-panel {
    z-index: 1;
    margin-top: calc(-1 * var(--ui-block-spacing-xlg));
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding-top: 18px; }
    .panel-summary + .alert-panel i {
      margin-left: 10px;
      margin-right: var(--spacing-2x); }
    .panel-summary + .alert-panel .alert-icon:before {
      top: 37px; }
  .panel-summary.panel-sidebar + .alert-panel {
    margin-top: calc(-1 * var(--ui-block-spacing-xxlg)); }
  .panel-summary .summary-container {
    padding: 0 var(--ui-block-padding-base) var(--ui-block-padding-base) var(--ui-block-padding-base); }
  .panel-summary .price + .btn {
    padding-top: var(--panel-summary-list-item-padding-v); }
  .panel-summary .summary-actions {
    padding-top: var(--panel-summary-list-item-padding-v); }
  .panel-summary .price-amount-total {
    font-size: var(--font-size-h2);
    line-height: var(--line-height-h2); }
  .panel-summary .price-amount-promo {
    font-weight: var(--font-weight-base);
    font-size: var(--font-size-base);
    line-height: var(--line-height-base);
    text-decoration: line-through; }
  .panel-summary:not(.panel-summary-primary):not(.panel-summary-secondary) .list-item-promo .item-name, .panel-summary:not(.panel-summary-primary):not(.panel-summary-secondary) .list-item-promo .item-value {
    font-weight: var(--font-weight-medium);
    color: var(--label-savings-color); }
  .panel-summary:not(.panel-summary-primary):not(.panel-summary-secondary) .list-item-promo svg path {
    fill: var(--label-savings-color); }
  .panel-summary:not(.panel-summary-primary):not(.panel-summary-secondary) .price-amount-promo {
    color: var(--label-savings-color); }

/*
*******************************************
Summary List
*******************************************
*/
.summary-total + .summary-content {
  padding-top: var(--panel-summary-list-item-padding-v);
  margin-top: var(--panel-summary-list-item-padding-v);
  border-top: 1px solid var(--ui-block-divider-color); }

.summary-content {
  position: relative;
  overflow: auto;
  max-height: var(--panel-summary-content-max-height);
  margin-right: calc(-1 * var(--panel-body-padding) + 1px);
  padding-right: var(--panel-body-padding); }
  .summary-content::-webkit-scrollbar {
    width: var(--scrollbar-width); }
  .summary-content::-webkit-scrollbar-track {
    background: var(--scrollbar-track-bg);
    border-radius: calc(var(--scrollbar-width) /2); }
  .summary-content::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb-bg);
    border-radius: calc(var(--scrollbar-width) /2); }
  .summary-content::-webkit-scrollbar-thumb:hover {
    background: var(--scrollbar-thumb-hover-bg); }

.summary-list {
  display: flex;
  flex-direction: column;
  row-gap: var(--panel-summary-list-gap-v);
  margin: 0;
  padding: var(--panel-summary-list-item-padding-v) 0;
  border-bottom: 1px solid var(--ui-block-divider-color);
  list-style: none; }
  .summary-list:first-child:not(.summary-list-configoptions) {
    padding-top: 0; }
  .summary-list:last-child:not(.summary-list-configoptions) {
    border-bottom: none;
    padding-bottom: 0; }
  .summary-list:has(+ .summary-list.hidden) {
    border-bottom: none;
    padding-bottom: 0; }
  .summary-list-recurring .list-item:not(.list-item-title) {
    color: var(--text-heading-color); }
  .summary-list-subtotal {
    row-gap: var(--ui-block-spacing-base); }
  .summary-list .list-item {
    display: flex;
    justify-content: space-between;
    color: var(--text-heading-color); }
    .summary-list .list-item-promo .item-name {
      display: flex;
      gap: var(--spacing-1x);
      font-weight: var(--font-weight-medium); }
    .summary-list .list-item-title {
      font-size: var(--font-size-xs); }
    .summary-list .list-item-main {
      color: var(--text-heading-color);
      font-size: var(--panel-summary-main-item-font-size);
      font-weight: var(--panel-summary-main-item-font-weight);
      line-height: var(--panel-summary-main-item-line-height); }
      .summary-list .list-item-main .item-value {
        font-size: var(--font-size-sm);
        font-weight: var(--font-weight-base); }
      .summary-list .list-item-main.list-item-services {
        padding-bottom: 0; }
        .summary-list .list-item-main.list-item-services a {
          cursor: pointer; }
      .summary-list .list-item-main + .list-item-domain {
        padding-top: 0;
        padding-bottom: 5px; }
    .summary-list .list-item-promo {
      display: flex;
      gap: var(--spacing-1x); }
      .summary-list .list-item-promo svg {
        margin-top: 2px;
        height: 14px;
        min-width: 14px; }
        .summary-list .list-item-promo svg path {
          fill: #fff; }
      .summary-list .list-item-promo .item-name, .summary-list .list-item-promo .item-value {
        font-weight: var(--font-weight-medium);
        color: var(--text-secondary-heading-color); }
    .summary-list .list-item.faded {
      color: var(--text-faded-color); }
    .summary-list .list-item .item-value {
      text-align: right;
      padding-left: var(--spacing-1x); }
      .summary-list .list-item .item-value .line-through,
      .summary-list .list-item .item-value [style*="font-size: 1.2em; text-decoration: line-through;"] {
        color: var(--text-lighter-color);
        font-size: inherit !important; }
      .summary-list .list-item .item-value .item-value-free {
        display: none; }
    .summary-list .list-item .item-name {
      overflow: hidden;
      text-overflow: ellipsis; }
      .summary-list .list-item .item-name span {
        color: var(--text-lighter-color); }
      .summary-list .list-item .item-name > * {
        margin-bottom: 0; }
      .summary-list .list-item .item-name .domain {
        color: var(--text-lighter-color);
        font-size: var(--font-size-sm);
        font-weight: var(--font-weight-base);
        line-height: var(--line-height-sm); }
    .summary-list .list-item .item-actions {
      padding-left: var(--spacing-1x); }
      .summary-list .list-item .item-actions a {
        color: var(--text-lighter-color); }
  .summary-list .discount_center-base_cart_order_total {
    font-size: var(--panel-summary-text-font-size) !important;
    line-height: var(--panel-summary-text-line-height);
    color: var(--price-savings-color); }

/*
*******************************************
 Config Options Summary List
*******************************************
*/
.panel-summary-configuration:not(.show-confoption-price) .summary-list-configoptions.hoverable {
  overflow: hidden; }
  .panel-summary-configuration:not(.show-confoption-price) .summary-list-configoptions.hoverable .item-value {
    transform: translateX(100%);
    transition: opacity 0.3s ease;
    opacity: 0;
    width: 0;
    white-space: nowrap; }
    .panel-summary-configuration:not(.show-confoption-price) .summary-list-configoptions.hoverable .item-value *:not(.item-value-free) {
      width: 0;
      display: inline-block;
      transition: color 0.3s ease; }
  .panel-summary-configuration:not(.show-confoption-price) .summary-list-configoptions.hoverable .item-name {
    transition: color 0.3s ease; }
  .panel-summary-configuration:not(.show-confoption-price) .summary-list-configoptions.hoverable .list-item:hover .item-value {
    transform: translateX(0);
    opacity: 1;
    width: min-content; }
    .panel-summary-configuration:not(.show-confoption-price) .summary-list-configoptions.hoverable .list-item:hover .item-value * {
      color: var(--text-primary-color);
      width: min-content; }
  .panel-summary-configuration:not(.show-confoption-price) .summary-list-configoptions.hoverable .list-item:hover .item-name {
    color: var(--text-primary-color); }
    .panel-summary-configuration:not(.show-confoption-price) .summary-list-configoptions.hoverable .list-item:hover .item-name .item-optionname {
      color: var(--text-primary-color); }

.summary-list-configoptions {
  display: flex;
  padding: var(--ui-block-padding-sm-v) var(--ui-block-padding-sm);
  background: var(--dropdown-collapse-bg);
  gap: 0;
  margin-top: -4px;
  border-radius: var(--border-radius-sm);
  border-bottom: none; }
  .summary-list-configoptions .list-item {
    padding: 2px 0;
    font-size: var(--font-size-xxs);
    line-height: var(--line-height-xxs); }
    .summary-list-configoptions .list-item .item-name {
      display: -webkit-box;
      -webkit-line-clamp: 1;
      -webkit-box-orient: vertical;
      overflow: hidden;
      text-overflow: ellipsis;
      min-width: 50px;
      white-space: nowrap;
      color: var(--text-faded-color); }
      .summary-list-configoptions .list-item .item-name .item-optionname {
        color: var(--text-body-color);
        transition: color 0.3s ease; }
    .summary-list-configoptions .list-item .item-value {
      color: var(--text-body-color);
      flex-grow: 1; }

.show-free-lang .summary-list .list-item .item-value .item-value-free {
  display: inline; }
  .show-free-lang .summary-list .list-item .item-value .item-value-free + span {
    display: none !important; }

/*
*******************************************
Panel Summary Configuration
*******************************************
*/
.panel-summary-configuration .summary-content {
  display: flex;
  flex-direction: column;
  gap: var(--ui-block-spacing-sm); }

.panel-summary-configuration .summary-list {
  border-bottom: none; }

.panel-summary-configuration .summary-item {
  display: flex;
  align-items: center;
  gap: var(--ui-block-spacing-sm); }
  .panel-summary-configuration .summary-item .item-name {
    font-size: var(--font-size-h8);
    line-height: var(--line-height-h8);
    font-weight: var(--font-weight-medium);
    color: var(--text-heading-color);
    display: flex;
    flex-direction: column;
    white-space: nowrap;
    min-width: 50px;
    webkit-line-clamp: 1;
    webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis; }
    .panel-summary-configuration .summary-item .item-name .name,
    .panel-summary-configuration .summary-item .item-name .subname {
      white-space: nowrap;
      width: 100%;
      webkit-line-clamp: 1;
      webkit-box-orient: vertical;
      overflow: hidden;
      text-overflow: ellipsis; }
    .panel-summary-configuration .summary-item .item-name .subname {
      font-size: var(--font-size-xxs);
      line-height: var(--line-height-xxs);
      font-weight: var(--font-weight-base);
      color: var(--text-lighter-color); }
    .panel-summary-configuration .summary-item .item-name .name:has(.qty-number-container) {
      display: flex;
      align-items: center;
      gap: 6px; }
      .panel-summary-configuration .summary-item .item-name .name:has(.qty-number-container) span {
        width: calc(100% - (20px + 6px));
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
        display: block; }
    .panel-summary-configuration .summary-item .item-name .name > span {
      cursor: default; }
  .panel-summary-configuration .summary-item .item-value {
    color: var(--text-heading-color);
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    font-weight: var(--font-weight-base);
    flex-grow: 1; }
    .panel-summary-configuration .summary-item .item-value-price {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      white-space: nowrap; }
    .panel-summary-configuration .summary-item .item-value .setup-fee {
      font-size: var(--font-size-xxs);
      line-height: var(--line-height-xxs);
      color: var(--text-faded-color); }
  .panel-summary-configuration .summary-item-addon .item-name {
    white-space: nowrap;
    min-width: 30px;
    webkit-line-clamp: 1;
    webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis; }
  .panel-summary-configuration .summary-item .item-value-free {
    display: none; }
  .panel-summary-configuration .summary-item-promocode {
    padding-bottom: var(--ui-block-padding-sm);
    margin-bottom: var(--ui-block-spacing-base);
    border-bottom: 1px solid var(--ui-block-divider-color); }
    .panel-summary-configuration .summary-item-promocode .item-name {
      flex-direction: row;
      align-items: center;
      gap: var(--spacing-1x);
      color: var(--label-savings-color);
      font-size: var(--font-size-sm);
      line-height: var(--line-height-sm);
      font-weight: var(--font-weight-medium); }
    .panel-summary-configuration .summary-item-promocode .item-value {
      text-align: right;
      color: var(--label-savings-color);
      font-weight: var(--font-weight-medium); }

.panel-summary-configuration .qty-number-container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 20px;
  min-width: min-content;
  width: auto;
  padding: 0 2px;
  background-color: transparent;
  border: 1px solid var(--input-border-color);
  border-radius: var(--border-radius-xs); }
  .panel-summary-configuration .qty-number-container .qty-number {
    font-size: var(--font-size-xxs);
    line-height: var(--line-height-xxs);
    color: var(--text-heading-color); }

.panel-summary-configuration .panel-footer {
  padding-top: var(--ui-block-padding-sm); }
  .panel-summary-configuration .panel-footer .summary-item {
    border-bottom: 1px solid var(--ui-block-divider-color);
    padding-bottom: var(--ui-block-padding-sm);
    margin-bottom: var(--ui-block-spacing-base); }
    .panel-summary-configuration .panel-footer .summary-item:has(+ .summary-item-tax2) {
      margin-bottom: 0;
      border: none;
      padding-bottom: var(--spacing-1x); }
    .panel-summary-configuration .panel-footer .summary-item-tax .item-name .name {
      font-size: var(--font-size-sm);
      line-height: var(--line-height-sm);
      font-weight: var(--font-weight-base);
      color: var(--text-body-color); }

.panel-summary-configuration .graphic-item:has(.svg-icon) {
  padding: 3px; }

.panel-summary-configuration.hide-hostname .subname {
  display: none; }

/*
*******************************************
Panel Summary Configuration Primary/Secondary Style
*******************************************
*/
.panel-summary-secondary.panel-summary-configuration .summary-list-configoptions,
.panel-summary-primary.panel-summary-configuration .summary-list-configoptions {
  background: #00000014; }
  .panel-summary-secondary.panel-summary-configuration .summary-list-configoptions .item-name,
  .panel-summary-primary.panel-summary-configuration .summary-list-configoptions .item-name {
    color: var(--text-secondary-faded-color); }
    .panel-summary-secondary.panel-summary-configuration .summary-list-configoptions .item-name .item-optionname,
    .panel-summary-primary.panel-summary-configuration .summary-list-configoptions .item-name .item-optionname {
      color: var(--text-secondary-heading-color); }
  .panel-summary-secondary.panel-summary-configuration .summary-list-configoptions.hoverable .list-item:hover .item-value *,
  .panel-summary-primary.panel-summary-configuration .summary-list-configoptions.hoverable .list-item:hover .item-value * {
    color: var(--brand-primary-lighter); }
  .panel-summary-secondary.panel-summary-configuration .summary-list-configoptions.hoverable .list-item:hover .item-name,
  .panel-summary-primary.panel-summary-configuration .summary-list-configoptions.hoverable .list-item:hover .item-name {
    color: var(--brand-primary-lighter); }
    .panel-summary-secondary.panel-summary-configuration .summary-list-configoptions.hoverable .list-item:hover .item-name .item-optionname,
    .panel-summary-primary.panel-summary-configuration .summary-list-configoptions.hoverable .list-item:hover .item-name .item-optionname {
      color: var(--brand-primary-lighter); }

.panel-summary-secondary.panel-summary-configuration .summary-item .item-name .name,
.panel-summary-primary.panel-summary-configuration .summary-item .item-name .name {
  color: var(--text-secondary-heading-color); }

.panel-summary-secondary.panel-summary-configuration .summary-item .item-name .subname,
.panel-summary-primary.panel-summary-configuration .summary-item .item-name .subname {
  color: var(--primary-block-text-color); }

.panel-summary-secondary.panel-summary-configuration .summary-item .item-value,
.panel-summary-primary.panel-summary-configuration .summary-item .item-value {
  color: var(--text-secondary-heading-color); }
  .panel-summary-secondary.panel-summary-configuration .summary-item .item-value .setup-fee,
  .panel-summary-primary.panel-summary-configuration .summary-item .item-value .setup-fee {
    color: var(--text-secondary-faded-color); }

.panel-summary-secondary.panel-summary-configuration .panel-footer .summary-item,
.panel-summary-primary.panel-summary-configuration .panel-footer .summary-item {
  border-color: var(--primary-block-divider-color); }

.panel-summary-secondary.panel-summary-configuration .qty-number-container,
.panel-summary-primary.panel-summary-configuration .qty-number-container {
  border: 1px solid #FFFFFF3D; }
  .panel-summary-secondary.panel-summary-configuration .qty-number-container .qty-number,
  .panel-summary-primary.panel-summary-configuration .qty-number-container .qty-number {
    color: var(--text-secondary-heading-color); }

.panel-summary-secondary.panel-summary-configuration .graphic-item .graphic-item-bg,
.panel-summary-primary.panel-summary-configuration .graphic-item .graphic-item-bg {
  background-color: #FFFFFF29; }
  .panel-summary-secondary.panel-summary-configuration .graphic-item .graphic-item-bg i,
  .panel-summary-primary.panel-summary-configuration .graphic-item .graphic-item-bg i {
    color: #fff; }

/*
*******************************************
 Panel Summary - Max Height
*******************************************
*/
@media (min-width: 992px) {
  .main-sidebar .sidebar-sticky-summary {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 2 * var(--main-sidebar-sticky-top));
    transition: top var(--transition-base); }
    .main-sidebar .sidebar-sticky-summary .panel-summary,
    .main-sidebar .sidebar-sticky-summary .panel-summary #producttotal,
    .main-sidebar .sidebar-sticky-summary .panel-summary .panel-body {
      display: flex !important;
      flex-direction: column;
      max-height: 100%;
      overflow: hidden; }
    .main-sidebar .sidebar-sticky-summary .panel-summary .panel-heading {
      flex-shrink: 0; }
    .main-sidebar .sidebar-sticky-summary .panel-summary .panel-body {
      flex-grow: 0; }
      .main-sidebar .sidebar-sticky-summary .panel-summary .panel-body .summary-content {
        max-height: 100%; }
    .main-sidebar .sidebar-sticky-summary .panel-summary + .alert-panel {
      flex-shrink: 0;
      margin-bottom: 0; }
  .scroll-up .main-sidebar .sidebar-sticky-summary {
    max-height: calc(100vh - 2 * var(--main-sidebar-sticky-top) - var(--app-nav-header-height)); } }

/*
*******************************************
 Panel Summary - Other
*******************************************
*/
.panel-summary.payment-form p {
  color: var(--text-lighter-color);
  margin: 0; }

.panel-summary.payment-form table {
  margin: 0;
  background: none;
  display: block;
  border-spacing: 0;
  border-collapse: unset; }
  .panel-summary.payment-form table tbody, .panel-summary.payment-form table tr, .panel-summary.payment-form table td {
    border-spacing: 0;
    border-collapse: unset;
    display: block;
    height: auto;
    padding: 0 !important;
    border: 0; }
  .panel-summary.payment-form table tbody tr td + td {
    margin-top: var(--ui-block-padding-base); }

.panel-summary.payment-form input[type="submit"],
.panel-summary.payment-form .btn {
  margin: 0 !important; }
  .panel-summary.payment-form input[type="submit"] i:not(.fa-spinner),
  .panel-summary.payment-form .btn i:not(.fa-spinner) {
    display: none; }
  .panel-summary.payment-form input[type="submit"] .fa-spinner,
  .panel-summary.payment-form .btn .fa-spinner {
    margin-left: var(--ui-block-padding-base);
    margin-right: -16px;
    margin-top: -2px; }

.panel-summary.payment-form .btn-sm, .panel-summary.payment-form .btn-group-sm > .btn {
  padding: var(--ui-padding-base-v) var(--ui-block-padding-base);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  border-radius: var(--btn-base-border-radius);
  height: var(--ui-height-base);
  font-weight: var(--font-weight-medium); }

.panel-summary.payment-form a {
  color: var(--link-color); }
  .panel-summary.payment-form a:hover {
    color: var(--link-hover-color); }

.panel-summary.view-invoice .form-group {
  margin-bottom: var(--ui-block-spacing-sm); }
  .panel-summary.view-invoice .form-group > select {
    width: 100%; }

.panel-summary.view-invoice label {
  color: var(--text-faded-color); }

.panel-summary.panel-summary-default.view-invoice label {
  color: var(--input-label-color); }

.panel-summary.panel-summary-default .payment-form p {
  color: var(--text-body-color); }

.panel-summary.panel-summary-default .item-domain {
  color: var(--link-color);
  font-weight: var(--font-weight-light); }

.panel-summary.panel-summary-primary.view-invoice label {
  color: var(--primary-block-text-color); }

.panel-summary.panel-summary-secondary.view-invoice label {
  color: var(--secondary-block-text-color); }

.panel-summary.panel-add-funds .panel-body .list-info .list-info-title,
.panel-summary.panel-add-funds .panel-body .list-info .list-info-text {
  color: var(--secondary-block-list-color-faded); }

.panel-sidebar.panel-ticket-information .panel-footer .btn {
  height: var(--ui-height-base);
  width: 100% !important;
  padding: var(--ui-padding-base-v) var(--ui-padding-base-h);
  font-size: var(--btn-base-font-size);
  line-height: var(--line-height-base);
  border-radius: var(--btn-base-border-radius); }

/*
*******************************************
Style Primary
*******************************************
*/
.panel-summary-primary {
  background: var(--primary-block-bg);
  color: var(--primary-block-text-faded-color); }
  .panel-summary-primary .panel-heading .panel-title {
    color: var(--primary-block-title-color); }
  .panel-summary-primary .panel-footer:after {
    background-color: var(--primary-block-divider-color); }
  .panel-summary-primary .price {
    color: var(--primary-block-total-font-color); }
    .panel-summary-primary .price .price-total,
    .panel-summary-primary .price .price-title {
      color: var(--text-secondary-faded-color); }
  .panel-summary-primary .list-group-item {
    color: var(--primary-block-text-faded-color); }
    .panel-summary-primary .list-group-item:not(:last-child) {
      border-color: var(--primary-block-divider-color); }
    .panel-summary-primary .list-group-item strong {
      color: var(--primary-block-total-font-color); }
  .panel-summary-primary .summary-list {
    border-bottom-color: var(--primary-block-divider-color);
    color: var(--primary-block-text-color); }
    .panel-summary-primary .summary-list-recurring .list-item:not(.list-item-title) {
      color: var(--primary-block-title-color); }
    .panel-summary-primary .summary-list .list-item {
      color: var(--text-secondary-heading-color); }
      .panel-summary-primary .summary-list .list-item-title {
        color: var(--primary-block-total-text-font-color); }
      .panel-summary-primary .summary-list .list-item-main {
        color: var(--primary-block-title-color); }
      .panel-summary-primary .summary-list .list-item.faded {
        color: var(--primary-block-text-faded-color); }
      .panel-summary-primary .summary-list .list-item .item-value .line-through,
      .panel-summary-primary .summary-list .list-item .item-value [style*="font-size: 1.2em; text-decoration: line-through;"] {
        color: var(--primary-block-text-faded-color); }
      .panel-summary-primary .summary-list .list-item .item-name span {
        color: var(--primary-block-text-faded-color); }
      .panel-summary-primary .summary-list .list-item .item-actions a {
        color: var(--primary-block-text-faded-color); }
    .panel-summary-primary .summary-list .discount_center-base_cart_order_total {
      color: var(--primary-block-text-faded-color); }
  .panel-summary-primary .summary-total + .summary-content {
    border-top-color: var(--primary-block-divider-color); }
  .panel-summary-primary .payment-form p {
    color: var(--primary-block-text-faded-color); }
  .panel-summary-primary .payment-form a {
    color: var(--primary-block-link-color); }
    .panel-summary-primary .payment-form a:hover {
      color: var(--primary-block-link-hover-color); }
  .panel-summary-primary .form-group .control-label {
    color: var(--primary-block-text-faded-color); }
  .panel-summary-primary .form-group .form-control {
    border: none; }

/*
*******************************************
Style Secondary
*******************************************
*/
.panel-summary-secondary {
  background: var(--secondary-block-bg);
  color: var(--secondary-block-text-color-faded); }
  .panel-summary-secondary .panel-heading .panel-title {
    color: var(--secondary-block-title-color); }
  .panel-summary-secondary .panel-footer:after {
    background-color: var(--secondary-block-divider-color); }
  .panel-summary-secondary .price {
    color: var(--secondary-block-total-font-color); }
    .panel-summary-secondary .price .price-total,
    .panel-summary-secondary .price .price-title {
      color: var(--secondary-block-text-color); }
  .panel-summary-secondary .list-group-item {
    color: var(--secondary-block-text-color-faded); }
    .panel-summary-secondary .list-group-item:not(:last-child) {
      border-color: var(--secondary-block-divider-color); }
    .panel-summary-secondary .list-group-item strong {
      color: var(--secondary-block-total-font-color); }
  .panel-summary-secondary .summary-list {
    border-bottom-color: var(--secondary-block-divider-color);
    color: var(--secondary-block-text-color); }
    .panel-summary-secondary .summary-list-recurring .list-item:not(.list-item-title) {
      color: var(--secondary-block-title-color); }
    .panel-summary-secondary .summary-list .list-item {
      color: var(--text-secondary-heading-color); }
      .panel-summary-secondary .summary-list .list-item-title {
        color: var(--secondary-block-total-text-font-color); }
      .panel-summary-secondary .summary-list .list-item-main {
        color: var(--secondary-block-title-color); }
      .panel-summary-secondary .summary-list .list-item.faded {
        color: var(--secondary-block-text-color-faded); }
      .panel-summary-secondary .summary-list .list-item .item-value .line-through,
      .panel-summary-secondary .summary-list .list-item .item-value [style*="font-size: 1.2em; text-decoration: line-through;"] {
        color: var(--secondary-block-text-color-faded); }
      .panel-summary-secondary .summary-list .list-item .item-name span {
        color: var(--secondary-block-text-color-faded); }
      .panel-summary-secondary .summary-list .list-item .item-actions a {
        color: var(--secondary-block-text-color-faded); }
    .panel-summary-secondary .summary-list .discount_center-base_cart_order_total {
      color: var(--primary-block-text-faded-color); }
  .panel-summary-secondary .summary-total + .summary-content {
    border-top-color: var(--secondary-block-divider-color); }
  .panel-summary-secondary .payment-form p {
    color: var(--secondary-block-text-color); }
  .panel-summary-secondary .payment-form a {
    color: var(--secondary-block-link-color); }
    .panel-summary-secondary .payment-form a:hover {
      color: var(--secondary-block-link-hover-color); }
  .panel-summary-secondary .form-group .control-label {
    color: var(--secondary-block-text-color-faded); }
  .panel-summary-secondary .form-group .form-control {
    border: none; }

.panel-summary-secondary .summary-content::-webkit-scrollbar-track, .panel-summary-primary .summary-content::-webkit-scrollbar-track {
  background: var(--scrollbar-secondary-track-bg); }

.panel-summary-secondary .summary-content::-webkit-scrollbar-thumb, .panel-summary-primary .summary-content::-webkit-scrollbar-thumb {
  background: var(--scrollbar-secondary-thumb-bg); }

.panel-summary-secondary .summary-content::-webkit-scrollbar-thumb:hover, .panel-summary-primary .summary-content::-webkit-scrollbar-thumb:hover {
  background: var(--scrollbar-secondary-thumb-hover-bg); }

/*
*******************************************
Summary - Mobile 
*******************************************
*/
.order-summary-mob {
  display: none;
  border-radius: var(--border-radius-none);
  width: 100%;
  padding: 0;
  margin: 0;
  box-shadow: var(--box-shadow-base); }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .lagom-layout-left-wide .hide-mob {
    display: none; }
  .lagom-layout-left-wide .order-summary-mob .hide-mob {
    display: none; }
  .lagom-layout-left-wide .order-summary-mob .order-summary-mob .btn-checkout {
    border-radius: 0; }
  .lagom-layout-left-wide .order-summary-mob .order-summary-mob.is-fixed {
    display: block;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: var(--zindex-fixed); }
  .lagom-layout-left-wide .page-configureproductdomain .main-body {
    overflow: visible; } }

@media (max-width: 991.98px) {
  .hide-mob {
    display: none; }
  .order-summary-mob.is-fixed {
    display: block;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: var(--zindex-fixed); }
  .order-summary-mob .btn-checkout {
    border-radius: 0;
    width: 100%; }
    .order-summary-mob .btn-checkout.btn-primary-faded.disabled {
      color: var(--btn-primary-faded-color);
      background: var(--btn-primary-faded-bg);
      border-color: var(--btn-primary-faded-bg); }
      .order-summary-mob .btn-checkout.btn-primary-faded.disabled .spinner > div {
        background: var(--btn-primary-faded-color); }
    .order-summary-mob .btn-checkout.btn-primary.disabled {
      color: var(--btn-primary-color);
      background: var(--btn-primary-bg);
      border-color: var(--btn-primary-bg); }
  .page-configureproductdomain .main-body {
    overflow: visible; } }

/*
*******************************************
Popover - User
*******************************************
*/
.client-alerts {
  padding: 0;
  width: 320px;
  left: 50%;
  margin-left: -160px; }
  .client-alerts .client-alerts-header {
    padding: var(--spacing-2x) var(--spacing-3x);
    font-size: var(--font-size-xs);
    line-height: var(--line-height-sm);
    color: var(--text-lighter-color);
    display: block; }
  .client-alerts .arrow {
    display: none; }
  .client-alerts .dropdown-header {
    padding: 10px 15px;
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    color: var(--text-lighter-color);
    text-transform: uppercase;
    display: block; }
  .client-alerts li {
    position: relative; }
    .client-alerts li:last-child {
      border: 0; }
    .client-alerts li:not(:last-of-type):after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 1px;
      background: var(--ui-block-divider-color); }
    .client-alerts li a {
      color: var(--ui-nav-link-color);
      position: relative;
      display: block;
      padding: var(--spacing-2x) var(--spacing-3x);
      text-decoration: none;
      white-space: normal; }
      .client-alerts li a:hover {
        background-color: var(--gray-faded);
        color: var(--ui-nav-secondary-link-hover-color); }
      .client-alerts li a div {
        background: none;
        border: none;
        box-shadow: none;
        align-items: flex-start; }
    .client-alerts li i {
      float: left;
      padding-top: 2px;
      color: var(--ui-icon-color); }
    .client-alerts li .message {
      margin-left: 32px;
      background: none;
      border: none;
      box-shadow: none;
      align-items: flex-start; }
    .client-alerts li.none {
      display: flex;
      padding: 32px 32px 24px;
      min-height: auto;
      text-align: center;
      flex-direction: column;
      align-items: center; }
      .client-alerts li.none .none-icon {
        width: 64px;
        height: 64px;
        margin-bottom: var(--ui-block-spacing-sm); }
        .client-alerts li.none .none-icon .svg-icon-outline-s {
          stroke: var(--svg-icon-color-secondary); }
        .client-alerts li.none .none-icon .svg-icon-prime.svg-icon-stroke {
          stroke: var(--svg-icon-color-base); }
        .client-alerts li.none .none-icon img {
          width: 100%; }

@media (max-width: 991.98px) {
  .client-alerts {
    left: auto;
    right: 0; } }

@media (max-width: 767.98px) {
  .client-alerts {
    margin: 0;
    left: auto;
    right: -50px; }
    .client-alerts li.none span {
      white-space: break-spaces; } }

/*
*******************************************
Popover - Login
*******************************************
*/
.login-popover {
  font-size: var(--ui-icon-size-small); }
  .login-popover .form-group {
    margin-bottom: 5px; }
  .login-popover hr {
    margin: 5px 0; }

/*
*******************************************
Popover - Credit Card Cvv
*******************************************
*/
[data-cc-popover] {
  top: -166px;
  left: auto;
  right: -95px; }

.section .section-header {
  margin-bottom: var(--ca-section-header-margin-bottom); }
  .section .section-header > :last-child {
    margin-bottom: 0; }
  .section .section-header > p {
    margin-top: calc(-1 * var(--spacing-1x));
    margin-bottom: var(--spacing-4x) !important; }

.section-sm .section-header {
  margin-bottom: var(--ca-section-sm-header-margin-bottom); }

.section .section-desc {
  color: var(--ca-section-desc-color);
  font-size: var(--ca-section-desc-font-size);
  font-weight: var(--ca-section-desc-font-weight);
  line-height: var(--ca-section-desc-line-height); }

.section > :last-child {
  margin-bottom: 0; }

.section + .section {
  margin-top: var(--ca-section-spacing); }

.section.hidden:first-child + .section {
  margin-top: 0; }

.section .section-title,
.section > h3,
.section-hook-output .section-title,
.section-hook-output > h3 {
  color: var(--text-heading-color);
  font-size: var(--ca-section-title-font-size);
  font-weight: var(--ca-section-title-font-weight);
  line-height: var(--ca-section-title-line-height); }

.section-sm .section-title {
  font-size: var(--ca-section-sm-title-font-size);
  font-weight: var(--ca-section-sm-title-font-weight);
  line-height: var(--ca-section-sm-title-line-height); }

.section-sm + .section-sm {
  margin-top: var(--ca-section-sm-spacing); }

.main-content > .section > .table-responsive {
  border: var(--ui-block-border);
  box-shadow: var(--ui-block-shadow);
  background: var(--ui-block-bg);
  border-radius: var(--border-radius-base); }
  .main-content > .section > .table-responsive > .table {
    margin: 0; }

/* Module Output - used for eg. Product Cross-Selling For WHMCS by Modules Garden */
.section-module-output {
  width: 100%;
  padding: 0;
  max-width: unset;
  flex: unset; }
  .section-module-output:empty {
    margin-top: 0 !important; }

/*
*******************************************
 Status - General
*******************************************
*/
.status {
  display: flex;
  min-height: var(--line-height-base);
  align-items: center;
  line-height: var(--line-height-base);
  padding: 0;
  color: var(--status-color); }
  .status:before {
    position: relative;
    top: 0;
    display: inline-block;
    content: '';
    width: var(--spacing-1x);
    height: var(--spacing-1x);
    min-width: var(--spacing-1x);
    border-radius: 100%;
    background: var(--status-color);
    margin-right: var(--spacing-1x); }
  .status.dot-hidden:before {
    display: none; }
  .status.dot-hidden .status-icon {
    margin-right: var(--spacing-1x); }
    .status.dot-hidden .status-icon > svg {
      width: 16px;
      height: 16px; }
  .status-icon-ticket {
    margin-right: var(--spacing-1x); }
  .status-icon-ticket, .status.status-ticket {
    display: inline-block; }
  .status-col > div {
    display: flex;
    align-items: center; }

/*
*******************************************
Status - Colors
*******************************************
*/
.filter-name {
  color: var(--dropdown-link-color); }
  .filter-name > span[data-status="ticket"], .filter-name > span.status-ticket {
    color: var(--btn-default-color) !important; }

.view-filter-btns .dropdown-menu > li > a > span.status {
  color: var(--dropdown-link-color); }

.lagom:not(.ticket-table) .status-default {
  color: var(--status-default); }
  .lagom:not(.ticket-table) .status-default:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-default); }
  .lagom:not(.ticket-table) .status-default .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-default); }
  .lagom:not(.ticket-table) .status-default:before {
    background-color: var(--status-default); }

.lagom:not(.ticket-table) .status-pendingtransfer, .lagom:not(.ticket-table) .status-pending-transfer {
  color: var(--status-pending-transfer); }
  .lagom:not(.ticket-table) .status-pendingtransfer:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-pending-transfer:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-pending-transfer); }
  .lagom:not(.ticket-table) .status-pendingtransfer .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-pending-transfer .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-pending-transfer); }
  .lagom:not(.ticket-table) .status-pendingtransfer:before, .lagom:not(.ticket-table) .status-pending-transfer:before {
    background-color: var(--status-pending-transfer); }

.lagom:not(.ticket-table) .status-pending {
  color: var(--status-pending); }
  .lagom:not(.ticket-table) .status-pending:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-pending); }
  .lagom:not(.ticket-table) .status-pending .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-pending); }
  .lagom:not(.ticket-table) .status-pending:before {
    background-color: var(--status-pending); }

.lagom:not(.ticket-table) .status-active, .lagom:not(.ticket-table) .status-open, .lagom:not(.ticket-table) .status-completed {
  color: var(--status-active); }
  .lagom:not(.ticket-table) .status-active:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-open:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-completed:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-active); }
  .lagom:not(.ticket-table) .status-active .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-open .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-completed .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-active); }
  .lagom:not(.ticket-table) .status-active:before, .lagom:not(.ticket-table) .status-open:before, .lagom:not(.ticket-table) .status-completed:before {
    background-color: var(--status-active); }

.lagom:not(.ticket-table) .status-suspended {
  color: var(--status-suspended); }
  .lagom:not(.ticket-table) .status-suspended:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-suspended); }
  .lagom:not(.ticket-table) .status-suspended .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-suspended); }
  .lagom:not(.ticket-table) .status-suspended:before {
    background-color: var(--status-suspended); }

.lagom:not(.ticket-table) .status-customer-reply {
  color: var(--status-customer-reply); }
  .lagom:not(.ticket-table) .status-customer-reply:not(.status-ticket):not([data-status="ticket"]) > svg path {
    fill: var(--status-customer-reply); }
  .lagom:not(.ticket-table) .status-customer-reply .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-customer-reply); }
  .lagom:not(.ticket-table) .status-customer-reply:before {
    background-color: var(--status-customer-reply); }

.lagom:not(.ticket-table) .status-fraud {
  color: var(--status-fraud); }
  .lagom:not(.ticket-table) .status-fraud:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-fraud); }
  .lagom:not(.ticket-table) .status-fraud .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-fraud); }
  .lagom:not(.ticket-table) .status-fraud:before {
    background-color: var(--status-fraud); }

.lagom:not(.ticket-table) .status-answered {
  color: var(--status-fraud); }
  .lagom:not(.ticket-table) .status-answered:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-fraud); }
  .lagom:not(.ticket-table) .status-answered .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-fraud); }
  .lagom:not(.ticket-table) .status-answered:before {
    background-color: var(--status-fraud); }

.lagom:not(.ticket-table) .status-expired, .lagom:not(.ticket-table) .status-transferredaway, .lagom:not(.ticket-table) .status-transferred-away {
  color: var(--status-expired); }
  .lagom:not(.ticket-table) .status-expired:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-transferredaway:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-transferred-away:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-expired); }
  .lagom:not(.ticket-table) .status-expired .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-transferredaway .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-transferred-away .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-expired); }
  .lagom:not(.ticket-table) .status-expired:before, .lagom:not(.ticket-table) .status-transferredaway:before, .lagom:not(.ticket-table) .status-transferred-away:before {
    background-color: var(--status-expired); }

.lagom:not(.ticket-table) .status-pendingregistration, .lagom:not(.ticket-table) .status-pending-registration, .lagom:not(.ticket-table) .status-redemption, .lagom:not(.ticket-table) .status-grace {
  color: var(--status-grace); }
  .lagom:not(.ticket-table) .status-pendingregistration:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-pending-registration:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-redemption:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-grace:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-grace); }
  .lagom:not(.ticket-table) .status-pendingregistration .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-pending-registration .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-redemption .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-grace .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-grace); }
  .lagom:not(.ticket-table) .status-pendingregistration:before, .lagom:not(.ticket-table) .status-pending-registration:before, .lagom:not(.ticket-table) .status-redemption:before, .lagom:not(.ticket-table) .status-grace:before {
    background-color: var(--status-grace); }

.lagom:not(.ticket-table) .status-draft, .lagom:not(.ticket-table) .status-terminated {
  color: var(--status-terminated); }
  .lagom:not(.ticket-table) .status-draft:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-terminated:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-terminated); }
  .lagom:not(.ticket-table) .status-draft .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-terminated .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-terminated); }
  .lagom:not(.ticket-table) .status-draft:before, .lagom:not(.ticket-table) .status-terminated:before {
    background-color: var(--status-terminated); }

.lagom:not(.ticket-table) .status-onhold, .lagom:not(.ticket-table) .status-on-hold {
  color: var(--status-onhold); }
  .lagom:not(.ticket-table) .status-onhold:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-on-hold:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-onhold); }
  .lagom:not(.ticket-table) .status-onhold .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-on-hold .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-onhold); }
  .lagom:not(.ticket-table) .status-onhold:before, .lagom:not(.ticket-table) .status-on-hold:before {
    background-color: var(--status-onhold); }

.lagom:not(.ticket-table) .status-inprogress {
  color: var(--status-inprogress); }
  .lagom:not(.ticket-table) .status-inprogress:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-inprogress); }
  .lagom:not(.ticket-table) .status-inprogress .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-inprogress); }
  .lagom:not(.ticket-table) .status-inprogress:before {
    background-color: var(--status-inprogress); }

.lagom:not(.ticket-table) .status-closed {
  color: var(--status-closed); }
  .lagom:not(.ticket-table) .status-closed:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-closed); }
  .lagom:not(.ticket-table) .status-closed .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-closed); }
  .lagom:not(.ticket-table) .status-closed:before {
    background-color: var(--status-closed); }

.lagom:not(.ticket-table) .status-paid {
  color: var(--status-paid); }
  .lagom:not(.ticket-table) .status-paid:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-paid); }
  .lagom:not(.ticket-table) .status-paid .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-paid); }
  .lagom:not(.ticket-table) .status-paid:before {
    background-color: var(--status-paid); }

.lagom:not(.ticket-table) .status-unpaid {
  color: var(--status-unpaid); }
  .lagom:not(.ticket-table) .status-unpaid:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-unpaid); }
  .lagom:not(.ticket-table) .status-unpaid .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-unpaid); }
  .lagom:not(.ticket-table) .status-unpaid:before {
    background-color: var(--status-unpaid); }

.lagom:not(.ticket-table) .status-cancelled {
  color: var(--status-cancelled); }
  .lagom:not(.ticket-table) .status-cancelled:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-cancelled); }
  .lagom:not(.ticket-table) .status-cancelled .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-cancelled); }
  .lagom:not(.ticket-table) .status-cancelled:before {
    background-color: var(--status-cancelled); }

.lagom:not(.ticket-table) .status-collections {
  color: var(--status-collections); }
  .lagom:not(.ticket-table) .status-collections:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-collections); }
  .lagom:not(.ticket-table) .status-collections .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-collections); }
  .lagom:not(.ticket-table) .status-collections:before {
    background-color: var(--status-collections); }

.lagom:not(.ticket-table) .status-refunded {
  color: var(--status-refunded); }
  .lagom:not(.ticket-table) .status-refunded:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-refunded); }
  .lagom:not(.ticket-table) .status-refunded .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-refunded); }
  .lagom:not(.ticket-table) .status-refunded:before {
    background-color: var(--status-refunded); }

.lagom:not(.ticket-table) .status-payment-pending {
  color: var(--status-payment-pending); }
  .lagom:not(.ticket-table) .status-payment-pending:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-payment-pending); }
  .lagom:not(.ticket-table) .status-payment-pending .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-payment-pending); }
  .lagom:not(.ticket-table) .status-payment-pending:before {
    background-color: var(--status-payment-pending); }

.lagom:not(.ticket-table) .status-warning {
  color: var(--status-warning); }
  .lagom:not(.ticket-table) .status-warning:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-warning); }
  .lagom:not(.ticket-table) .status-warning .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-warning); }
  .lagom:not(.ticket-table) .status-warning:before {
    background-color: var(--status-warning); }

.lagom:not(.ticket-table) .status-delivered {
  color: var(--status-delivered); }
  .lagom:not(.ticket-table) .status-delivered:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-delivered); }
  .lagom:not(.ticket-table) .status-delivered .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-delivered); }
  .lagom:not(.ticket-table) .status-delivered:before {
    background-color: var(--status-delivered); }

.lagom:not(.ticket-table) .status-accepted {
  color: var(--status-accepted); }
  .lagom:not(.ticket-table) .status-accepted:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-accepted); }
  .lagom:not(.ticket-table) .status-accepted .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-accepted); }
  .lagom:not(.ticket-table) .status-accepted:before {
    background-color: var(--status-accepted); }

.lagom:not(.ticket-table) .status-lost, .lagom:not(.ticket-table) .status-dead {
  color: var(--status-lost); }
  .lagom:not(.ticket-table) .status-lost:not([data-status="ticket"]):not(.status-ticket) > svg path, .lagom:not(.ticket-table) .status-dead:not([data-status="ticket"]):not(.status-ticket) > svg path {
    fill: var(--status-lost); }
  .lagom:not(.ticket-table) .status-lost .status-icon:not([data-status="ticket"]) svg path, .lagom:not(.ticket-table) .status-dead .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-lost); }
  .lagom:not(.ticket-table) .status-lost:before, .lagom:not(.ticket-table) .status-dead:before {
    background-color: var(--status-lost); }

.lagom:not(.ticket-table) .status-default {
  color: var(--status-default); }
  .lagom:not(.ticket-table) .status-default > svg path {
    fill: var(--status-default); }
  .lagom:not(.ticket-table) .status-default .status-icon:not([data-status="ticket"]) svg path {
    fill: var(--status-default); }
  .lagom:not(.ticket-table) .status-default:before {
    background-color: var(--status-default); }

.requestor-type-operator {
  color: var(--status-type-operator-text-color); }
  .requestor-type-operator .status-icon svg path {
    fill: var(--status-type-operator-text-color); }
  .requestor-type-operator, .requestor-type-operator:before {
    background-color: var(--status-type-operator); }

.requestor-type-owner {
  color: var(--status-type-owner-text-color); }
  .requestor-type-owner .status-icon svg path {
    fill: var(--status-type-owner-text-color); }
  .requestor-type-owner, .requestor-type-owner:before {
    background-color: var(--status-type-owner); }

.requestor-type-authorizeduser {
  color: var(--status-type-authorizeduser-text-color); }
  .requestor-type-authorizeduser .status-icon svg path {
    fill: var(--status-type-authorizeduser-text-color); }
  .requestor-type-authorizeduser, .requestor-type-authorizeduser:before {
    background-color: var(--status-type-authorizeduser); }

.requestor-type-registereduser {
  color: var(--status-type-registereduser-text-color); }
  .requestor-type-registereduser .status-icon svg path {
    fill: var(--status-type-registereduser-text-color); }
  .requestor-type-registereduser, .requestor-type-registereduser:before {
    background-color: var(--status-type-registereduser); }

.requestor-type-subaccount {
  color: var(--status-type-subacc-text-color); }
  .requestor-type-subaccount .status-icon svg path {
    fill: var(--status-type-subacc-text-color); }
  .requestor-type-subaccount, .requestor-type-subaccount:before {
    background-color: ar(--status-type-subacc); }

.requestor-type-guest {
  color: var(--status-type-guest-text-color); }
  .requestor-type-guest .status-icon svg path {
    fill: var(--status-type-guest-text-color); }
  .requestor-type-guest, .requestor-type-guest:before {
    background-color: var(--status-type-guest); }

/*
*******************************************
 Table
*******************************************
*/
.table .cell-action {
  padding-top: 0;
  padding-bottom: 0;
  white-space: nowrap;
  vertical-align: middle;
  text-align: right; }
  .table .cell-action > *:not(.btn) {
    display: inline-block; }
  .table .cell-action .btn-icon {
    color: var(--ui-icon-color); }
  .table .cell-action .open .btn-icon:hover, .table .cell-action .open .btn-icon:focus-visible,
  .table .cell-action .btn-icon:hover,
  .table .cell-action .btn-icon:focus-visible {
    color: var(--text-primary-color); }
  .table .cell-action--last {
    padding-left: 0;
    text-align: start;
    width: 90px; }

.table .cell-checkbox {
  padding-right: 0;
  width: 0;
  position: relative; }
  .table .cell-checkbox .checkbox-styled {
    margin: 3px 0; }

/*
*******************************************
 Table - Top
*******************************************
*/
.table-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: var(--table-container-header-height);
  padding: var(--spacing-2x) var(--ui-block-padding-base);
  background: var(--table-container-header-bg);
  border-bottom: 1px solid var(--table-border-color);
  border-radius: var(--table-container-border-radius) var(--table-container-border-radius) 0 0; }
  .table-top label {
    display: inline-block;
    font-size: var(--table-font-size-small);
    color: var(--text-body-color);
    margin-right: var(--spacing-1x);
    margin-bottom: 0; }
  .table-top .form-control {
    display: inline;
    width: auto; }
  .table-top .btn {
    text-transform: none; }
  .table-top .d-flex {
    align-items: center; }
  .table-top [data-inactive-services] {
    margin: 0; }
    .table-top [data-inactive-services] b {
      color: var(--table-td-font-color); }
    .table-top [data-inactive-services] .switch {
      margin-left: var(--spacing-1x); }
  .table-top [data-inactive-services-text] {
    flex: 1; }

.page-clientareaproducts .table-top,
.page-clientareadomains .table-top {
  gap: 10px; }

/*
*******************************************
 Table - Container
*******************************************
*/
.table-container {
  position: relative;
  border: var(--table-container-border);
  background: var(--table-container-bg);
  box-shadow: var(--table-container-box-shadow);
  border-radius: var(--table-container-border-radius);
  min-height: 100px; }
  .table-container.loading {
    max-height: 335px;
    overflow: hidden; }
    .table-container.loading .table {
      opacity: 0;
      visibility: hidden; }
    .table-container.loading .loader-table {
      top: calc(var(--table-container-header-height) + var(--spacing-2x)); }
  .table-container-ajax.loading table {
    min-height: 226px; }
  .table-container-ajax .loader-table .spinner {
    display: flex;
    height: var(--loader-bars-height);
    text-align: center;
    position: relative;
    width: auto;
    background: none; }
  .table-container .listtable {
    padding: var(--table-container-table-padding); }
  .table-container .dataTables_wrapper .dataTable tbody tr td label {
    margin: 0; }
  .table-container .dataTables_length label,
  .table-container .dataTables_filter label {
    padding: var(--spacing-1x) var(--ui-block-padding-base);
    margin: 0;
    font-size: var(--table-font-size-small); }
    .table-container .dataTables_length label .form-control,
    .table-container .dataTables_filter label .form-control {
      display: inline-block;
      width: auto;
      margin-left: var(--spacing-1x);
      margin-right: var(--spacing-1x);
      border-radius: var(--border-radius-sm); }
  .table-container .dataTables_length {
    background: var(--table-container-pagination-bg);
    border-top: var(--ui-block-divider-border);
    font-size: var(--table-font-size-small);
    border-radius: 0 0 var(--table-container-border-radius) var(--table-container-border-radius); }
  .table-container .dataTables_info {
    padding: var(--spacing-1x) var(--ui-block-padding-base);
    background: var(--table-container-pagination-bg);
    border-bottom: var(--table-container-border);
    font-size: var(--table-font-size-small);
    color: var(--text-lighter-color); }
  .table-container .table-list {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    width: 100% !important; }
  .table-container .dataTables_paginate {
    float: right;
    padding: var(--spacing-1x) var(--ui-block-padding-base); }
    .table-container .dataTables_paginate .pagination {
      margin: 0;
      padding: 0;
      border: 0; }
  .table-container .dataTables_filter {
    display: none; }
  .table-container .dataTable .small,
  .table-container .dataTable .text-small {
    display: inline-block;
    font-size: var(--table-font-size-small);
    line-height: var(--line-height-sm); }
    .table-container .dataTable .small:not(a), .table-container .dataTable .small:not(a),
    .table-container .dataTable .text-small:not(a),
    .table-container .dataTable .text-small:not(a) {
      color: var(--text-body-color); }
  .table-container .dataTable.dtr-inline.collapsed tbody td:first-child:before,
  .table-container .dataTable.dtr-inline.collapsed tbody th:first-child:before {
    top: inherit !important;
    box-shadow: none !important;
    line-height: 16px !important; }
  .table-container .dtr-inline .dtr-title:empty {
    display: none !important; }
  .table-container .dtr-inline .responsive-edit-button {
    display: none; }

@media (max-width: 767.98px) {
  .dataTables_wrapper .dataTables_length label {
    display: none; } }

@media (max-width: 600px) {
  .dataTable tr td a {
    word-break: break-all; }
  .dataTables_wrapper .dataTables_info {
    padding: 9px 10px 40px; }
  .dataTables_wrapper .dataTables_filter {
    float: right;
    margin-top: 30px;
    width: 100%; }
  .dataTables_wrapper .dataTables_filter label {
    display: block;
    margin: 5px;
    padding: 0; }
  .dataTables_wrapper .dataTables_filter label .form-control {
    margin: 0;
    width: 100%; }
  .table-container .dataTables_wrapper {
    display: flex;
    flex-direction: column; }
    .table-container .dataTables_wrapper .listtable {
      order: 1; }
  .table-container .dataTables_paginate {
    float: none;
    justify-content: center;
    order: 3;
    padding-top: 2px; }
  .table-container .dataTables_length {
    display: flex;
    justify-content: center;
    order: 2;
    padding-top: 4px; } }

@media (min-width: 768px) {
  #tableServicesList tbody tr td:not(.dataTables_empty) {
    height: 80px; } }

#tableServicesList .ssl-info {
  display: inline-block;
  vertical-align: middle;
  line-height: 12px; }
  #tableServicesList .ssl-info:empty {
    display: none; }
  #tableServicesList .ssl-info > * {
    vertical-align: top;
    margin-right: 5px; }

#tableDomainsList .ssl-info {
  display: inline-block;
  margin-top: -4px;
  vertical-align: middle;
  line-height: 18px; }
  #tableDomainsList .ssl-info:empty {
    display: none; }
  #tableDomainsList .ssl-info > * {
    display: flex;
    margin-right: 5px; }

#tableTicketsList tbody .dtr-control > span {
  color: var(--text-body-color); }

#tableTicketsList tbody tr th:nth-of-type(1),
#tableTicketsList tbody tr td:nth-of-type(1),
#tableTicketsList thead tr th:nth-of-type(1),
#tableTicketsList thead tr td:nth-of-type(1) {
  max-width: 340px;
  width: 340px; }

#tableTicketsList tbody tr th:nth-of-type(3),
#tableTicketsList tbody tr td:nth-of-type(3),
#tableTicketsList thead tr th:nth-of-type(3),
#tableTicketsList thead tr td:nth-of-type(3) {
  min-width: 120px;
  width: 120px; }

#tableRenewalList .tooltip-icon {
  cursor: pointer;
  color: var(--ui-icon-color);
  padding: 4px 8px;
  transition: var(--transition-base); }
  #tableRenewalList .tooltip-icon:hover {
    color: var(--link-hover-color); }

#tableRenewalList .cell-action-container {
  display: flex;
  gap: 8px;
  justify-content: flex-end; }
  #tableRenewalList .cell-action-container .form-control {
    max-width: 200px;
    width: auto; }
  #tableRenewalList .cell-action-container .btn {
    min-width: 100px; }
    #tableRenewalList .cell-action-container .btn .spinner-sm {
      height: var(--loader-bars-sm-height);
      display: flex;
      align-items: center;
      justify-content: center; }

.ticket-table tbody > tr .status {
  text-wrap: nowrap; }

.ticket-table tbody > tr > td:last-child:has(a) {
  white-space: nowrap;
  width: 1%; }

.no-data-table {
  min-height: 266px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column; }
  .no-data-table svg {
    margin-bottom: 20px;
    width: 48px;
    height: 48px; }
  .no-data-table .no-data-table-title {
    margin-bottom: 4px; }
  .no-data-table .no-data-table-description {
    margin-bottom: 20px;
    color: var(--text-body-color); }
  .no-data-table-inactive {
    display: none; }
    .no-data-table-inactive .btn {
      display: flex;
      align-items: center;
      gap: 6px;
      font-weight: var(--font-weight-medium); }
      .no-data-table-inactive .btn i {
        margin: 0; }
  .no-data-table [data-clear-table-search] {
    gap: 6px; }
    .no-data-table [data-clear-table-search] i {
      margin: 0 !important; }

.hide-inactive-items .no-data-table-search {
  display: none; }

.hide-inactive-items .no-data-table-inactive {
  display: flex; }

/*
*******************************************
Tiles - General
*******************************************
*/
.tiles {
  margin-bottom: calc(-1 * var(--ui-block-spacing-lg)) !important; }
  .tiles .tile {
    margin-bottom: var(--ui-block-spacing-lg); }

.tile {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  position: relative;
  padding: var(--tile-padding);
  min-height: var(--tile-min-height);
  background: var(--tile-bg-color);
  border: var(--tile-border);
  border-radius: var(--tile-border-radius);
  box-shadow: var(--tile-box-shadow);
  transition: all var(--transition-base) !important;
  text-align: center; }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .tile {
      height: var(--tile-min-height); } }
  .tile-icon {
    margin-bottom: var(--ui-block-spacing-sm); }
  .tile:hover .tile-icon-absolute, .tile:focus-visible .tile-icon-absolute {
    transition: var(--transition-base);
    color: var(--tile-border-color-hover); }
  .tile-icon-absolute {
    position: absolute;
    top: 10px;
    right: 16px;
    color: var(--decoration-icons);
    transition: all var(--transition-base); }
  .tile-stat {
    padding-top: 4px;
    padding-bottom: var(--spacing-1x);
    color: var(--tile-stat-color);
    font-weight: var(--tile-stat-font-weight);
    font-size: var(--tile-stat-font-size);
    line-height: 1; }
    .tile-stat-sm {
      font-size: var(--tile-stat-sm-font-size); }
  .tile-title {
    color: var(--tile-title-color);
    font-size: var(--tile-title-font-size);
    font-weight: var(--tile-title-font-weight);
    line-height: var(--tile-title-line-height);
    text-align: center; }
  .tile-sm {
    flex-direction: row;
    justify-content: unset;
    min-height: 74px; }
    .tile-sm .tile-icon-absolute {
      position: static;
      margin-right: var(--ui-block-padding-base); }
    .tile-sm .tile-title {
      font-size: var(--tile-sm-title-font-size); }
    .tile-sm .tile-stat {
      order: 2;
      margin-left: auto;
      font-size: var(--tile-sm-stat-font-size); }

@media (min-width: 480px) {
  a.tile,
  .slider-navigation .tile {
    cursor: pointer; }
    a.tile:hover, a.tile:focus-visible,
    .slider-navigation .tile:hover,
    .slider-navigation .tile:focus-visible {
      background: var(--tile-hover-bg);
      border-color: var(--tile-border-color-hover);
      transform: translate3d(0, -8px, 0);
      box-shadow: var(--box-shadow-xlg); }
      a.tile:hover .icon, a.tile:focus-visible .icon,
      .slider-navigation .tile:hover .icon,
      .slider-navigation .tile:focus-visible .icon {
        color: var(--tile-border-color-hover); } }

/* Homepage tile RTL */
@media (min-width: 768px) {
  html[dir="rtl"] .homepage-tiles {
    display: flex; } }

/*
*******************************************
2. Tiles - Responsive
*******************************************
*/
@media (max-width: 767.98px) {
  .swiper-wrapper {
    display: flex;
    flex-wrap: unset; }
  .swiper-slide {
    flex-shrink: 0;
    width: 100%;
    padding: 0; }
  .swiper-pagination {
    z-index: 10;
    text-align: center; }
    .swiper-pagination-bullet:not(.swiper-pagination-bullet-promotion) {
      cursor: pointer;
      width: var(--spacing-1x);
      height: var(--spacing-1x);
      margin: 0 4px;
      display: inline-block;
      border-radius: 100%;
      background: var(--decoration-icons); }
      .swiper-pagination-bullet:not(.swiper-pagination-bullet-promotion)-active {
        opacity: 1;
        background: var(--brand-primary); }
  .tiles > .row {
    margin: 0; }
  .tiles .tile {
    flex-direction: row;
    justify-content: unset;
    min-height: 74px; }
    .tiles .tile-icon, .tiles .tile-icon-absolute {
      display: flex;
      position: static;
      margin-bottom: 0;
      margin-right: var(--ui-block-padding-base); }
      .tiles .tile-icon .svg-icon, .tiles .tile-icon-absolute .svg-icon {
        margin-top: 4px;
        margin-bottom: 4px; }
    .tiles .tile-title {
      font-size: var(--tile-mob-title-font-size); }
    .tiles .tile-stat {
      font-size: var(--tile-mob-stat-font-size);
      order: 2;
      margin-left: auto; }
    .tiles .tile-sm .tile-title {
      font-size: var(--tile-sm-mob-title-font-size); }
    .tiles .tile-sm .tile-stat {
      font-size: var(--tile-sm-mob-stat-font-size); } }

/*
*******************************************
 Spinner
*******************************************
*/
.spinner {
  display: flex;
  height: var(--loader-bars-height);
  text-align: center;
  font-size: 10px;
  border: none !important;
  animation: none !important; }
  .spinner > div {
    background: var(--loader-bg);
    height: 100%;
    width: var(--loader-bars-width);
    animation: sk-stretchdelay 1.2s infinite ease-in-out;
    border-radius: var(--border-radius-sm); }
  .spinner > * + * {
    margin-left: var(--loader-bars-width); }
  .spinner-light > div {
    background: var(--loader-light-bg); }
  .spinner .rect2 {
    animation-delay: -1.1s; }
  .spinner .rect3 {
    animation-delay: -1.0s; }
  .spinner .rect4 {
    animation-delay: -0.9s; }
  .spinner .rect5 {
    animation-delay: -0.8s; }

@-webkit-keyframes sk-stretchdelay {
  0%, 40%, 100% {
    -webkit-transform: scaleY(0.4); }
  20% {
    -webkit-transform: scaleY(1); } }

@keyframes sk-stretchdelay {
  0%, 40%, 100% {
    transform: scaleY(0.4); }
  20% {
    transform: scaleY(1); } }

/*
*******************************************
 Spinner - SIze
*******************************************
*/
.spinner-sm {
  height: var(--loader-bars-sm-height);
  display: flex;
  align-items: center;
  justify-content: center; }
  .spinner-sm > div {
    display: block;
    margin-left: var(--loader-bars-sm-width);
    width: var(--loader-bars-sm-width); }

/*
*******************************************
 Spinner - Colors
*******************************************
*/
.btn-primary .spinner > div {
  background: var(--btn-primary-color); }

.btn-primary-faded .spinner > div {
  background: var(--btn-primary-faded-color); }

/*
*******************************************
 Loader
*******************************************
*/
.loader-table {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--table-bg);
  z-index: 3; }

.loader-button {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  justify-content: center;
  align-items: center; }

.loader-panel {
  position: absolute;
  top: 0;
  bottom: 0;
  display: flex;
  right: 0;
  left: 0;
  justify-content: center;
  align-items: center;
  background: #fff;
  border-radius: var(--border-radius-base);
  opacity: 0;
  visibility: hidden;
  transition: var(--transition-base); }
  .loader-panel.loading {
    opacity: 1;
    visibility: visible; }

.invisible + .loader-button {
  display: flex !important;
  position: absolute !important; }

.loader-ring {
  display: inline-block;
  position: relative;
  width: 32px;
  height: 32px; }
  .loader-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 28px;
    height: 28px;
    margin: 2px;
    border: 2px solid var(--gray-lighter-2);
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: var(--gray-lighter-2) transparent transparent transparent; }
  .loader-ring-12 {
    width: 12px;
    height: 12px; }
    .loader-ring-12 div {
      width: 10px;
      height: 10px;
      margin: 1px; }
  .loader-ring-18 {
    width: 18px;
    height: 18px; }
    .loader-ring-18 div {
      width: 16px;
      height: 16px;
      margin: 1px; }
  .loader-ring div:nth-child(1) {
    animation-delay: -0.45s; }
  .loader-ring div:nth-child(2) {
    animation-delay: -0.3s; }
  .loader-ring div:nth-child(3) {
    animation-delay: -0.15s; }

@keyframes lds-ring {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/*
*******************************************
 World Loader
*******************************************
*/
.world-loader {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 170px;
  margin: 0; }
  .world-loader-content {
    width: var(--spacing-7x);
    height: var(--spacing-7x);
    border-radius: 100%;
    overflow: hidden;
    position: relative;
    border: 2px solid var(--loader-bg); }
    .world-loader-content svg {
      position: absolute;
      left: 100%;
      top: 0;
      -webkit-animation: linear infinite;
      -webkit-animation-name: world-loader;
      -webkit-animation-duration: 10s; }

@-webkit-keyframes world-loader {
  0% {
    left: 100%; }
  100% {
    left: -744px; } }

/*
*******************************************
Banner - General Elements
*******************************************
*/
.banner-caption {
  display: block;
  margin-bottom: var(--spacing-2x);
  color: var(--text-primary-color);
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  font-weight: var(--font-weight-h6); }
  @media (max-width: 767.98px) {
    .banner-caption {
      text-align: center; } }

.banner-title {
  font-weight: var(--site-banner-title-font-weight);
  font-size: var(--site-banner-title-font-size);
  line-height: var(--site-banner-title-line-height);
  margin-bottom: var(--site-banner-element-spacing); }

.banner-desc {
  width: 100%; }
  .banner-desc,
  .banner-desc p {
    font-size: var(--site-banner-desc-font-size);
    line-height: var(--site-banner-desc-line-height);
    font-weight: var(--site-banner-desc-font-weight); }

.banner-actions {
  padding-top: var(--site-banner-element-spacing);
  display: flex; }
  .banner-actions .btn {
    min-width: 164px; }
    .banner-actions .btn + .btn {
      margin-left: var(--spacing-2x); }

.banner-icons {
  margin-top: var(--spacing-4x);
  display: flex;
  gap: 40px; }
  @media (max-width: 767.98px) {
    .banner-icons {
      justify-content: center; } }

.banner-subtitle {
  margin-top: var(--spacing-4x);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg);
  font-weight: var(--font-weight-medium);
  color: var(--text-body-color); }
  @media (max-width: 767.98px) {
    .banner-subtitle {
      text-align: center; } }

.banner-graphic {
  position: relative;
  z-index: 2;
  width: var(--site-banner-graphic-width); }
  .banner-graphic .promo-slider-icon {
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0;
    bottom: unset;
    height: auto;
    width: var(--site-banner-graphic-width); }

.banner-shape {
  position: absolute;
  top: 0;
  display: block; }
  .banner-shape svg {
    height: 662px; }

.banner-content {
  z-index: 3;
  position: relative; }

.banner .container {
  position: relative; }

.banner--overflow {
  padding-top: 150px;
  z-index: -1; }
  .banner--overflow .banner-title {
    position: relative;
    bottom: 50px;
    margin-bottom: var(--spacing-5x);
    font-size: var(--font-size-h2);
    line-height: var(--line-height-h2);
    font-weight: var(--font-weight-bold); }

/*
*******************************************
Banner - domain registration modern page
*******************************************
*/
.lagom:not(.laogm-futuristic) .banner-default.banner-domain-register + .main-body {
  padding-top: 0; }

@media (min-width: 992px) {
  .banner-graphic .promo-slider-icon {
    top: var(--ui-gutter-base); } }

@media (min-width: 768px) {
  .banner-background {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0; }
  .banner-graphic {
    width: var(--site-banner-graphic-width);
    margin-left: auto; }
  .banner-shape.active {
    opacity: 1; } }

@media (max-width: 767.98px) {
  .banner > .container {
    flex-direction: column; }
  .banner-title, .banner-desc,
  .banner-desc p {
    text-align: center; }
  .banner-actions {
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -8px -16px;
    padding-top: var(--spacing-2x); }
    .banner-actions .btn {
      margin: 0 var(--spacing-1x) var(--spacing-2x); }
      .banner-actions .btn + .btn {
        margin: 0 var(--spacing-1x) var(--spacing-2x); }
  .banner-content {
    order: 2;
    flex-direction: column; }
  .banner-background {
    order: 1; }
    .banner-background .banner-graphics .banner-graphic {
      width: var(--site-banner-graphic-width); }
      .banner-background .banner-graphics .banner-graphic > .promo-slider-icon {
        width: var(--site-banner-graphic-width); }
      .banner-background .banner-graphics .banner-graphic.graphic-custom {
        width: var(--promo-slider-xs-illustration-width); }
        .banner-background .banner-graphics .banner-graphic.graphic-custom > img {
          margin-top: 0 !important; }
    .banner-background .banner-graphics.graphics-custom {
      position: static !important; }
  .banner-graphic {
    margin: -48px auto 0; }
  .banner-shape > svg {
    height: 300px; }
  .banner--overflow {
    padding-top: 110px; } }

/*
*******************************************
Banner - Sides
*******************************************
*/
:root {
  --banner-sides-min-height: 677px;
  --banner-sides-content-max-width: 544px;
  --banner-sides-content-spacing-right: 80px;
  --banner-sides-graphic-width: 596px;
  --banner-sides-graphic-height: 480px;
  --banner-sides-graphic-shape-width: 2542px;
  --banner-sides-graphic-shape-height: 808px;
  --banner-sides-graphic-shape-right: -1380px;
  --banner-content-padding-v: 100px;
  --banner-sides-background-margin-top: 100px;
  --banner-sides-promo-icon-margin-top: -36px;
  --banner-sides-graphic-shape-bottom: 0px; }
  @media (max-width: 1319.98px) {
    :root {
      --banner-sides-content-max-width: 506px;
      --banner-sides-content-spacing-right: 56px;
      --banner-sides-graphic-width: 482px;
      --banner-sides-graphic-height: 392px;
      --banner-sides-graphic-shape-width: 2172px;
      --banner-sides-graphic-shape-height: 690px;
      --banner-sides-graphic-shape-right: -1172px;
      --banner-sides-graphic-shape-bottom: 0px;
      --banner-sides-promo-icon-margin-top: -24px; } }
  @media (max-width: 991.98px) {
    :root {
      --banner-sides-content-max-width: 432px;
      --banner-sides-content-spacing-right: 40px;
      --banner-sides-graphic-shape-right: -1432px;
      --banner-sides-graphic-shape-bottom: 24px; } }
  @media (max-width: 767.98px) {
    :root {
      --banner-sides-graphic-width: 360px;
      --banner-sides-graphic-height: 260px;
      --banner-sides-content-spacing-right: 0;
      --banner-sides-graphic-shape-width: 1400px;
      --banner-sides-graphic-shape-height: 444px;
      --banner-sides-graphic-shape-right: -762px;
      --banner-sides-graphic-shape-bottom: 0px;
      --banner-content-padding-v: 72px;
      --banner-sides-background-margin-top: 72px;
      --banner-sides-promo-icon-margin-top: -50px; } }

.banner.banner-sides .banner-content {
  min-width: var(--banner-sides-content-max-width);
  padding-top: var(--banner-content-padding-v);
  padding-bottom: var(--banner-content-padding-v);
  margin-top: auto;
  margin-bottom: auto;
  margin-left: 0;
  margin-right: auto;
  padding-right: var(--banner-sides-content-spacing-right); }

.banner.banner-sides .banner-background {
  position: relative;
  left: unset;
  right: unset;
  width: var(--banner-sides-graphic-width);
  min-height: var(--banner-sides-graphic-height);
  margin-top: var(--banner-sides-background-margin-top); }
  .banner.banner-sides .banner-background .banner-graphics[data-promo-slider-homepage] {
    display: grid;
    grid-template-columns: 1fr; }
    .banner.banner-sides .banner-background .banner-graphics[data-promo-slider-homepage] > div {
      grid-row-start: 1;
      grid-column-start: 1; }
  .banner.banner-sides .banner-background .banner-graphic {
    display: flex;
    position: relative;
    width: var(--banner-sides-graphic-width);
    height: var(--banner-sides-graphic-height); }
    .banner.banner-sides .banner-background .banner-graphic .promo-slider-icon {
      right: unset;
      top: unset;
      width: var(--banner-sides-graphic-width);
      margin-top: var(--banner-sides-promo-icon-margin-top); }
  .banner.banner-sides .banner-background .banner-shape {
    width: var(--banner-sides-graphic-shape-width);
    height: var(--banner-sides-graphic-shape-height);
    top: unset;
    bottom: var(--banner-sides-graphic-shape-bottom);
    right: var(--banner-sides-graphic-shape-right);
    left: unset; }
    .banner.banner-sides .banner-background .banner-shape svg {
      height: auto;
      bottom: 0; }

@media (min-width: 1320px) {
  .banner.banner-sides > .container {
    min-height: var(--banner-sides-min-height); } }

@media (max-width: 767.98px) {
  .banner.banner-sides > .container {
    align-items: center; }
  .banner.banner-sides .banner-content {
    min-width: unset;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .banner.banner-sides .banner-background .banner-graphic {
    margin: 0; } }

/*
*******************************************
Banner - Centered
*******************************************
*/
.banner-center {
  text-align: center; }
  .banner-center .banner-actions {
    justify-content: center; }
  .banner-center .banner-content {
    max-width: var(--max-width-md);
    margin: 0 auto; }
  .banner-center.site-banner {
    flex-direction: column; }

/*
*******************************************
Site Banner
*******************************************
*/
.site-banner {
  display: flex;
  align-items: stretch;
  position: relative;
  z-index: 1; }
  .site-banner > .container {
    display: flex; }
  .site-banner .row:before, .site-banner .row:after {
    content: unset; }
  .site-banner .slider-wrapper,
  .site-banner .slider-slides,
  .site-banner .slider-slide {
    display: flex;
    align-items: stretch;
    width: 100%;
    min-height: 100%; }
  .site-banner .slider-wrapper {
    position: relative; }
  .site-banner .slider-slides {
    transition: height 0.45s, min-height 0.45s;
    transition-timing-function: cubic-bezier(1, 0, 1, 1); }
  .site-banner .slider-slide {
    top: 0;
    left: 0;
    right: 0;
    position: absolute; }
    .site-banner .slider-slide.active {
      z-index: 10; }
    .site-banner .slider-slide-custom-icon .banner-graphic {
      display: flex; }
  .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon {
    visibility: visible;
    animation-name: showSliderIcons;
    animation-duration: 1s;
    animation-timing-function: cubic-bezier(0, 0, 0, 1);
    animation-fill-mode: forwards;
    margin: 0; }
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon {
        min-height: 484px; } }
    .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon.promo-slider-icon-reverse {
      animation-name: showSliderIconsReverse; }
      .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon.promo-slider-icon-reverse:nth-child(3) {
        animation-delay: 0s; }
      .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon.promo-slider-icon-reverse:nth-child(2) {
        animation-delay: 0.12s; }
      .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon.promo-slider-icon-reverse:nth-child(1) {
        animation-delay: 0.24s; }
    .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon:nth-child(3) {
      animation-delay: 0.0s; }
    .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon:nth-child(2) {
      animation-delay: 0.12s; }
    .site-banner:not(.site-slider) .banner-graphic .promo-slider-icon:nth-child(1) {
      animation-delay: 0.24s; }
  @media (min-width: 768px) and (max-width: 991.98px) {
    .site-banner:not(.site-slider) .banner-shape {
      top: -25px; } }
  .site-banner.banner-primary {
    background: linear-gradient(0deg, var(--brand-primary-gradient-start) 0%, var(--brand-primary-gradient-end) 100%); }
  .site-banner.banner-secondary {
    background: linear-gradient(0deg, var(--brand-secondary-gradient-start) 0%, var(--brand-secondary-gradient-end) 100%); }

@media (min-width: 992px) {
  .site-banner,
  .site-banner > .container {
    min-height: var(--site-banner-height); } }

@media (max-width: 767.98px) {
  .site-banner {
    overflow: hidden; } }
  @media screen and (max-width: 767.98px) and (-ms-high-contrast: active), (max-width: 767.98px) and (-ms-high-contrast: none) {
    .site-banner {
      display: block; } }

@media (max-width: 767.98px) {
    .site-banner .slider-slide {
      min-height: unset;
      justify-content: center; } }

/*
*******************************************
Homepage Slider
*******************************************
*/
.site-section.section-slider-btn {
  padding-top: var(--spacing-4x); }
  @media (max-width: 767.98px) {
    .site-section.section-slider-btn {
      margin-top: calc(var(--site-banner-home-tile-height) / -3) !important; } }
  .site-section.section-slider-btn.section-slider-btn-extension {
    padding-bottom: var(--banner-content-padding-v) !important; }
  .site-section.section-slider-btn .slider-navigation-promotion {
    flex-direction: column;
    overflow: hidden;
    padding-top: var(--spacing-3x);
    margin-top: calc(-1*var(--spacing-3x)); }
    .site-section.section-slider-btn .slider-navigation-promotion .swiper-wrapper {
      width: 100%;
      padding-bottom: var(--spacing-3x);
      margin-left: 1px; }
    .site-section.section-slider-btn .slider-navigation-promotion .swiper-slide {
      padding-right: 12px;
      padding-left: 12px; }
    .site-section.section-slider-btn .slider-navigation-promotion .swiper-pagination-promotion {
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center; }
      .site-section.section-slider-btn .slider-navigation-promotion .swiper-pagination-promotion.swiper-pagination-bullets .swiper-pagination-bullet {
        margin-top: var(--spacing-2x);
        padding: 6px; }
        .site-section.section-slider-btn .slider-navigation-promotion .swiper-pagination-promotion.swiper-pagination-bullets .swiper-pagination-bullet:only-child {
          display: none; }
        .site-section.section-slider-btn .slider-navigation-promotion .swiper-pagination-promotion.swiper-pagination-bullets .swiper-pagination-bullet:before {
          content: '';
          display: block;
          width: 6px;
          height: 6px;
          background: var(--ui-icon-color);
          border-radius: 100%;
          transition: var(--transition-base); }
        .site-section.section-slider-btn .slider-navigation-promotion .swiper-pagination-promotion.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active + .swiper-pagination-bullet:before, .site-section.section-slider-btn .slider-navigation-promotion .swiper-pagination-promotion.swiper-pagination-bullets .swiper-pagination-bullet:has(+ .swiper-pagination-bullet-active):before {
          transform: scale(1.35); }
        .site-section.section-slider-btn .slider-navigation-promotion .swiper-pagination-promotion.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
          transform: scale(1.65);
          background: var(--brand-primary); }

.page-lagom-cms .site [data-promo-slider],
.site.site-index {
  overflow: hidden; }
  @media (min-width: 992px) {
    .page-lagom-cms .site [data-promo-slider] .site-banner:not(.slider-single),
    .site.site-index .site-banner:not(.slider-single) {
      padding-bottom: calc(var(--site-banner-home-tile-height) / 2); } }
  .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider:not(.site-slider-custom) .slider-background > *,
  .site.site-index .site-banner.site-slider:not(.site-slider-custom) .slider-background > * {
    opacity: 1;
    visibility: visible; }
  .page-lagom-cms .site [data-promo-slider] .site-banner .slide.active .promo-slider-icon,
  .site.site-index .site-banner .slide.active .promo-slider-icon {
    opacity: 1; }
  .page-lagom-cms .site [data-promo-slider] .site-banner .banner-content,
  .site.site-index .site-banner .banner-content {
    opacity: 0; }
  .page-lagom-cms .site [data-promo-slider] .section-slider-btn,
  .site.site-index .section-slider-btn {
    padding: 0;
    position: relative;
    z-index: 2;
    margin-top: calc(var(--site-banner-home-tile-height) / -2); }
    .page-lagom-cms .site [data-promo-slider] .section-slider-btn .col-lg,
    .site.site-index .section-slider-btn .col-lg {
      padding: 0px 8px; }
    .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile,
    .site.site-index .section-slider-btn .tile {
      min-height: var(--site-banner-home-tile-height);
      cursor: pointer; }
      .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile .svg-icon,
      .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile > svg,
      .site.site-index .section-slider-btn .tile .svg-icon,
      .site.site-index .section-slider-btn .tile > svg {
        margin-bottom: var(--ui-block-spacing-sm);
        max-height: 64px;
        max-width: 100%; }
      .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile-container > img,
      .site.site-index .section-slider-btn .tile-container > img {
        max-height: 64px;
        max-width: 100%;
        margin-bottom: var(--ui-block-spacing-sm); }
      .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile.active,
      .site.site-index .section-slider-btn .tile.active {
        overflow: hidden; }
        .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile.active:before,
        .site.site-index .section-slider-btn .tile.active:before {
          content: "";
          position: absolute;
          display: block;
          width: 45px;
          height: 45px;
          top: -22px;
          right: -22px;
          transform: rotate(45deg);
          background-color: var(--brand-primary); }
        .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile.active:after,
        .site.site-index .section-slider-btn .tile.active:after {
          content: "\e903";
          font-family: var(--font-family-icons-medium);
          color: #fff;
          position: absolute;
          top: -5px;
          right: 4px;
          font-size: var(--font-size-xs);
          font-weight: 600; }
        .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile.active .tile-loader,
        .site.site-index .section-slider-btn .tile.active .tile-loader {
          display: flex; }
      .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile .tile-loader,
      .site.site-index .section-slider-btn .tile .tile-loader {
        display: none;
        position: absolute;
        width: 52px;
        height: 6px;
        left: var(--spacing-2x);
        top: var(--spacing-2x);
        background: var(--tile-loader-bg);
        border-radius: var(--border-radius-base);
        transition: opacity 0.2s; }
        .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile .tile-loader .tile-loader-progress,
        .site.site-index .section-slider-btn .tile .tile-loader .tile-loader-progress {
          transition: all 0.2s;
          position: absolute;
          height: 100%;
          top: 0;
          left: 0;
          bottom: 0;
          background: var(--tile-loader-progress-bg);
          border-radius: var(--border-radius-base); }

@keyframes fillProgressBar {
  from {
    width: 0%; }
  to {
    width: 100%; } }
      .page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile .title,
      .site.site-index .section-slider-btn .tile .title {
        font-weight: var(--font-weight-base);
        color: var(--text-heading-color); }
    .page-lagom-cms .site [data-promo-slider] .section-slider-btn .slider-navigation.animation-paused .tile-loader,
    .site.site-index .section-slider-btn .slider-navigation.animation-paused .tile-loader {
      opacity: 0; }
      .page-lagom-cms .site [data-promo-slider] .section-slider-btn .slider-navigation.animation-paused .tile-loader .tile-loader-progress,
      .site.site-index .section-slider-btn .slider-navigation.animation-paused .tile-loader .tile-loader-progress {
        animation-play-state: paused; }
    .page-lagom-cms .site [data-promo-slider] .section-slider-btn .slider-navigation.animation-running .tile-loader .tile-loader-progress,
    .site.site-index .section-slider-btn .slider-navigation.animation-running .tile-loader .tile-loader-progress {
      animation: fillProgressBar 5s linear forwards; }

.page-lagom-cms .site [data-promo-slider] .section-slider-btn .tile.active:after {
  top: -3px; }

@media (max-width: 767.98px) {
  .page-lagom-cms .site [data-promo-slider] .site-banner .slider-wrapper,
  .site.site-index .site-banner .slider-wrapper {
    order: 2; }
  .page-lagom-cms .site [data-promo-slider] .site-banner .banner-graphics,
  .site.site-index .site-banner .banner-graphics {
    position: relative;
    height: 0; }
    .page-lagom-cms .site [data-promo-slider] .site-banner .banner-graphics > div,
    .site.site-index .site-banner .banner-graphics > div {
      position: absolute;
      top: 0;
      left: 0;
      right: 0; }
    .page-lagom-cms .site [data-promo-slider] .site-banner .banner-graphics.graphics-custom > div,
    .site.site-index .site-banner .banner-graphics.graphics-custom > div {
      top: 80px; }
  .page-lagom-cms .site [data-promo-slider] .site-banner .banner-graphic,
  .site.site-index .site-banner .banner-graphic {
    margin-bottom: 0; }
  .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon {
    min-height: calc(var(--site-banner-height) + var(--spacing-3x)) !important;
    height: unset !important; }
    .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon .slider-slide.slider-slide-custom-icon:not(.graphic-custom-empty) {
      position: static; }
    .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon .slider-slide.slider-slide-custom-icon.slider-slide-custom-icon {
      flex-direction: column;
      padding-top: var(--spacing-12x); }
      .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon .slider-slide.slider-slide-custom-icon.slider-slide-custom-icon .banner-content {
        padding-top: var(--site-banner-padding-v); }
      .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon .slider-slide.slider-slide-custom-icon.slider-slide-custom-icon .banner-background {
        position: static !important;
        margin-top: 0; }
        .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon .slider-slide.slider-slide-custom-icon.slider-slide-custom-icon .banner-background .banner-graphics {
          height: unset; }
          .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon .slider-slide.slider-slide-custom-icon.slider-slide-custom-icon .banner-background .banner-graphics > div {
            position: static; } }
    @media (max-width: 767.98px) and (max-width: 767.98px) {
      .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon .slider-slide.slider-slide-custom-icon.slider-slide-custom-icon:not(.active) {
        display: none; } }

@media (max-width: 767.98px) {
      .site-slider-custom .slider-wrapper .slider-slides.slider-custom-icon .slider-slide.slider-slide-custom-icon.slider-slide-custom-icon:not(.active) .banner-content {
        display: none; } }

/*
*******************************************
MarketConnect Sliders
*******************************************
*/
.site.site-wp-toolkit, .site.site-codeguard, .site.site-marketgoo, .site.site-sitebuilder, .site.site-sitelock, .site.site-sitelockvpn, .site.site-spamexperts, .site.site-xovinow, .site.site-threesixtymonitoring, .site.site-ssl-certificates, .site.site-webbly, .site.site-ox, .site.site-socialbee {
  overflow: hidden; }

.site.site-wp-toolkit .banner-background .banner-graphic .svg-weebly .logo-weebly {
  display: none; }

.site.site-wp-toolkit .banner-background .banner-graphic .svg-weebly .logo-wordpress {
  display: block !important; }

/*
*******************************************
Promotion Manager Slider
*******************************************
*/
.page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom .banner-graphic,
.site.site-index .site-banner.site-slider-custom .banner-graphic {
  position: relative;
  height: 100%;
  top: unset;
  right: unset;
  justify-content: flex-start !important; }

.page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom .slider-background .banner-background,
.site.site-index .site-banner.site-slider-custom .slider-background .banner-background {
  z-index: unset; }

.page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom.banner.banner-sides .banner-content,
.site.site-index .site-banner.site-slider-custom.banner.banner-sides .banner-content {
  max-width: var(--banner-sides-content-max-width); }

.page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom.banner.banner-sides .banner-background,
.site.site-index .site-banner.site-slider-custom.banner.banner-sides .banner-background {
  position: absolute;
  right: 0; }
  .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom.banner.banner-sides .banner-background .banner-shape,
  .site.site-index .site-banner.site-slider-custom.banner.banner-sides .banner-background .banner-shape {
    top: -230px; }
    @media (max-width: 1319.98px) {
      .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom.banner.banner-sides .banner-background .banner-shape,
      .site.site-index .site-banner.site-slider-custom.banner.banner-sides .banner-background .banner-shape {
        top: -112px; } }
    @media (max-width: 767.98px) {
      .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom.banner.banner-sides .banner-background .banner-shape,
      .site.site-index .site-banner.site-slider-custom.banner.banner-sides .banner-background .banner-shape {
        top: -184px;
        right: calc(var(--banner-sides-graphic-shape-right) + 86px); } }

@media (max-width: 767.98px) {
  .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom.banner.banner-sides .slider-slide.slide-default,
  .site.site-index .site-banner.site-slider-custom.banner.banner-sides .slider-slide.slide-default {
    flex-direction: column;
    align-items: center; }
    .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider-custom.banner.banner-sides .slider-slide.slide-default .banner-background,
    .site.site-index .site-banner.site-slider-custom.banner.banner-sides .slider-slide.slide-default .banner-background {
      position: relative; } }

.page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .banner-content,
.site.site-index .site-banner.site-slider .banner-content {
  opacity: 0; }

.page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .slider-background,
.site.site-index .site-banner.site-slider .slider-background {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }
  .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .slider-background > *,
  .site.site-index .site-banner.site-slider .slider-background > * {
    opacity: 0;
    visibility: hidden;
    transition: visibility 0.45s, opacity 0.45s;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }
    .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .slider-background > *.active,
    .site.site-index .site-banner.site-slider .slider-background > *.active {
      opacity: 1;
      visibility: visible;
      transition: unset; }
      .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .slider-background > *.active img,
      .site.site-index .site-banner.site-slider .slider-background > *.active img {
        opacity: 1;
        transition: visibility 1s, opacity 1s; }
    .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .slider-background > * img,
    .site.site-index .site-banner.site-slider .slider-background > * img {
      object-fit: cover;
      object-position: center; }
  .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .slider-background > .slide:not(.active) img,
  .site.site-index .site-banner.site-slider .slider-background > .slide:not(.active) img {
    opacity: 0 !important;
    visibility: hidden; }
  .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .slider-background > .slide.active img,
  .site.site-index .site-banner.site-slider .slider-background > .slide.active img {
    opacity: 1;
    visibility: visible;
    transition: visibility 1s, opacity 1s; }
  .page-lagom-cms .site [data-promo-slider] .site-banner.site-slider .slider-background > div,
  .site.site-index .site-banner.site-slider .slider-background > div {
    display: flex; }

[dir="rtl"] .site.site-index .site-banner.site-slider-custom.banner.banner-sides .banner-background {
  left: 0;
  right: unset; }

@media (max-width: 767.98px) {
  .site-slider .slider-slide-custom-icon {
    align-items: center; }
  [dir="rtl"] .site.site-index .site-banner.site-slider-custom.banner.banner-sides .banner-background .banner-shape {
    left: calc(var(--banner-sides-graphic-shape-right) + 86px);
    right: unset; } }

/*
*******************************************
Banner - "Default" Homepage Tempalte
*******************************************
*/
.banner-home .banner-title {
  text-align: center; }

.banner-home .banner-bg {
  overflow: hidden;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1; }
  .banner-home .banner-bg .banner-svg {
    position: absolute;
    top: 20%;
    left: 50%;
    min-width: 1918px;
    transform: translateX(-50%) translateY(-50%); }
  .banner-home .banner-bg .banner-browser,
  .banner-home .banner-bg .banner-laptop,
  .banner-home .banner-bg .banner-computer {
    visibility: hidden;
    opacity: 0;
    animation-name: bannerElementFadeInDown;
    animation-duration: 600ms;
    animation-delay: 1000ms;
    animation-fill-mode: forwards; }
  .banner-home .banner-bg .banner-browser {
    animation-delay: 0; }
  .banner-home .banner-bg .banner-laptop,
  .banner-home .banner-bg .banner-computer {
    animation-delay: 800ms; }
  .banner-home .banner-bg .banner-web-icon,
  .banner-home .banner-bg .banner-search-icon {
    visibility: hidden;
    opacity: 0;
    animation-name: bannerElementFadeIn;
    animation-duration: 1000ms;
    animation-delay: 1000ms;
    animation-fill-mode: forwards; }
  .banner-home .banner-bg .banner-lines path {
    transition: stroke-dashoffset 4000ms;
    transition-timing-function: cubic-bezier(0, 0, 0, 1); }

[data-animation-fade-bottom] {
  visibility: hidden;
  opacity: 0;
  animation-name: bannerElementFadeInDown;
  animation-duration: .6s;
  animation-fill-mode: forwards; }

[data-animation-delay-1] {
  animation-delay: 1s; }

[data-animation-delay-2] {
  animation-delay: 0.8s; }

@keyframes bannerElementFadeInDown {
  from {
    transform: translate3d(0px, -10px, 0px);
    opacity: 0;
    visibility: hidden; }
  to {
    transform: translate3d(0px, 0px, 0px);
    opacity: 1;
    visibility: visible; } }

@keyframes bannerElementFadeIn {
  from {
    opacity: 0;
    visibility: hidden; }
  to {
    opacity: 1;
    visibility: visible; } }

@media (max-width: 767.98px) {
  .homepage-tiles .tile {
    margin-bottom: var(--ui-block-spacing-sm); } }

/*
*******************************************
Banner - Styles
*******************************************
*/
.banner-primary {
  background: var(--primary-block-bg); }
  .banner-primary .banner-title {
    color: var(--primary-block-title-color); }
  .banner-primary .banner-desc,
  .banner-primary .banner-desc p {
    color: var(--primary-block-text-color); }
  .banner-primary + .section-slider-btn .tile.active:before {
    background: var(--brand-primary-lighter-3) !important; }
  .banner-primary + .section-slider-btn .tile.active:after {
    color: var(--text-primary-color) !important; }

.banner-secondary {
  background: var(--secondary-block-bg); }
  .banner-secondary .banner-title,
  .banner-secondary .banner-subtitle {
    color: var(--secondary-block-title-color); }
  .banner-secondary .banner-desc,
  .banner-secondary .banner-desc p {
    color: var(--secondary-block-text-color); }

.banner-primary,
.banner-secondary,
.promo-slider-primary,
.promo-slider-secondary {
  overflow: hidden; }
  .banner-primary .promo-shape-left,
  .banner-secondary .promo-shape-left,
  .promo-slider-primary .promo-shape-left,
  .promo-slider-secondary .promo-shape-left {
    fill: var(--svg-banner-primary-shape-left); }
  .banner-primary .promo-shape-right,
  .banner-secondary .promo-shape-right,
  .promo-slider-primary .promo-shape-right,
  .promo-slider-secondary .promo-shape-right {
    fill: var(--svg-banner-primary-shape-right); }
  .banner-primary .svg-banner-shape-left,
  .banner-secondary .svg-banner-shape-left,
  .promo-slider-primary .svg-banner-shape-left,
  .promo-slider-secondary .svg-banner-shape-left {
    fill: var(--svg-banner-primary-shape-left); }
  .banner-primary .svg-banner-shape-right,
  .banner-secondary .svg-banner-shape-right,
  .promo-slider-primary .svg-banner-shape-right,
  .promo-slider-secondary .svg-banner-shape-right {
    fill: var(--svg-banner-primary-shape-right); }

.lagom.lagom-futuristic .banner .banner-caption {
  color: var(--text-body-color); }

.addon-promo-container {
  position: relative;
  display: block;
  margin-bottom: var(--line-height-base);
  background: var(--panel-bg);
  border: var(--panel-border);
  border-radius: var(--panel-border-radius);
  box-shadow: var(--panel-box-shadow);
  padding: var(--panel-body-padding);
  overflow: hidden; }
  .addon-promo-container.is-selected {
    border-color: var(--panel-active-border-color) !important;
    background: var(--panel-active-bg); }
  .addon-promo-container .description {
    display: flex;
    flex-direction: column;
    position: relative;
    padding-right: 232px;
    margin-bottom: var(--ui-block-spacing-sm); }
    .addon-promo-container .description a {
      margin-left: 2px; }
    .addon-promo-container .description h3 {
      font-size: var(--font-size-lg);
      line-height: var(--line-height-lg); }
  .addon-promo-container div.pull-right {
    display: flex;
    justify-content: space-between;
    float: none !important;
    text-align: right;
    font-size: var(--font-size-sm);
    margin-bottom: 12px; }
    .addon-promo-container div.pull-right:before {
      content: 'Choose Package'; }
    .addon-promo-container div.pull-right strong {
      font-weight: var(--font-weight-base); }
  .addon-promo-container .logo {
    position: absolute;
    top: -90px;
    right: -30px;
    width: 232px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden; }
    .addon-promo-container .logo img {
      width: 100%; }
    .addon-promo-container .logo svg {
      position: absolute;
      top: 0;
      left: 0;
      width: 232px;
      height: 200px; }
  .addon-promo-container .radio-inline {
    display: flex;
    margin-bottom: var(--ui-block-spacing-sm);
    color: var(--text-heading-color); }
    .addon-promo-container .radio-inline .pull-right {
      margin-left: auto; }
    .addon-promo-container .radio-inline:last-child {
      margin-bottom: 0; }
    .addon-promo-container .radio-inline .radio-styled {
      top: 1px; }
      @supports (-moz-appearance: none) {
        .addon-promo-container .radio-inline .radio-styled {
          top: 2px; } }
      @supports (-webkit-hyphens: none) {
        .addon-promo-container .radio-inline .radio-styled {
          top: 2px; } }
  .addon-promo-container br {
    display: none; }

@media (max-width: 767.98px) {
  .addon-promo-container .logo {
    top: -40px;
    width: 142px;
    height: 100px; }
    .addon-promo-container .logo svg {
      width: 142px;
      height: 100px; }
  .addon-promo-container .description {
    padding-right: 96px; } }

/*
*******************************************
Promo Slider
*******************************************
*/
.promo-container {
  display: none; }

.promo-slider {
  position: relative;
  overflow: hidden;
  display: flex;
  min-height: var(--promo-slider-min-height);
  margin-bottom: var(--ui-block-spacing-xlg);
  border: var(--ui-block-border);
  border-radius: var(--ui-block-border-radius-lg);
  box-shadow: var(--ui-block-shadow-lg);
  z-index: 1; }
  .promo-slider:last-child {
    margin: 0; }
  .promo-slider-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 30;
    display: flex;
    padding: var(--promo-slider-header-padding); }
  .promo-slider-close {
    display: flex;
    align-items: center;
    justify-content: center;
    height: var(--ui-height-base);
    width: var(--ui-height-base);
    margin-left: auto;
    color: var(--text-secondary-body-color);
    transition: color var(--transition-base);
    cursor: pointer;
    outline: none; }
  .promo-slider-wrapper {
    display: flex;
    position: relative;
    width: 100%;
    background: var(--ui-block-bg); }
  .promo-slider-background {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }
    .promo-slider-background > * {
      top: 0;
      left: 0;
      position: absolute;
      width: 100%;
      height: 100%; }
      .promo-slider-background > *.active {
        opacity: 1 !important;
        visibility: visible !important; }
      .promo-slider-background > * img {
        object-fit: cover;
        object-position: center;
        height: 100%; }
    .promo-slider-background > div {
      display: flex; }
  .promo-slider-shape {
    display: block !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible;
    width: 50%;
    right: 0;
    left: unset; }
    .promo-slider-shape > svg {
      position: absolute;
      top: -16px;
      bottom: 0;
      height: 271px; }
    .promo-slider-shape > svg {
      right: unset; }
  .promo-slider-slides {
    width: 100%;
    transition: height 0.45s, min-height 0.45s;
    transition-timing-function: cubic-bezier(1, 0, 1, 1); }
  .promo-slider-slide {
    display: flex;
    width: 100%;
    margin-right: 0 !important; }
    .promo-slider-slide.active {
      z-index: 29; }
      .promo-slider-slide.active .promo-slider-more {
        visibility: visible;
        opacity: 1; }
    .promo-slider-slide:hover .promo-slider-more,
    .promo-slider-slide:hover .promo-slider-more > i, .promo-slider-slide:focus-visible .promo-slider-more,
    .promo-slider-slide:focus-visible .promo-slider-more > i {
      color: var(--ui-nav-secondary-link-hover-color); }
    .promo-slider-slide-custom-icon .promo-slider-icons {
      display: flex; }
  .promo-slider-body {
    position: relative;
    z-index: 22;
    display: flex;
    flex-direction: column;
    width: 50%;
    padding: var(--promo-slider-body-padding); }
  .promo-slider-content {
    position: relative;
    z-index: 50;
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: 100%;
    padding: var(--promo-slider-content-padding); }
    @media (max-width: 1319.98px) {
      .promo-slider-content {
        padding-left: 0; } }
  .promo-slider-icons {
    position: relative;
    width: 50%;
    z-index: 20; }
    .promo-slider-icons.promo-slider-icons--image {
      position: static; }
      .promo-slider-icons.promo-slider-icons--image .promo-slider-icon {
        width: 100%;
        height: 100%;
        top: 0;
        left: 0; }
        .promo-slider-icons.promo-slider-icons--image .promo-slider-icon img {
          position: absolute;
          object-fit: cover;
          bottom: 0;
          right: 0;
          height: 100%;
          width: 100%; }
  .promo-slider-caption {
    max-width: 100%;
    margin: 0;
    font-size: var(--promo-slider-caption-font-size);
    font-weight: var(--promo-slider-caption-font-weight);
    line-height: var(--promo-slider-caption-line-height); }
    .promo-slider-caption + .promo-slider-title {
      margin-top: calc(var(--spacing-2x) - 4px); }
  .promo-slider-title {
    max-width: 100%;
    margin: 0;
    font-size: var(--promo-slider-title-font-size);
    font-weight: var(--promo-slider-title-font-weight);
    line-height: var(--promo-slider-title-line-height); }
  .promo-slider-desc {
    margin: 0; }
    .promo-slider-desc + .promo-slider-desc {
      margin-top: var(--ui-block-spacing-sm); }
  .promo-slider-more {
    position: absolute;
    left: var(--spacing-3x);
    bottom: var(--spacing-2x);
    opacity: 0;
    padding: 0;
    transition: color var(--transition-base);
    color: var(--ui-nav-secondary-link-color);
    cursor: pointer; }
    .promo-slider-more > i {
      transition: color var(--transition-base);
      color: var(--ui-nav-secondary-link-icon-color);
      margin-right: var(--spacing-1x); }
  .promo-slider-actions {
    margin-top: var(--ui-block-spacing-lg); }
    .promo-slider-actions .btn + .btn {
      margin-left: var(--spacing-1x); }
    @media (max-width: 767.98px) {
      .promo-slider-actions-upsell {
        width: 100%; } }
    .promo-slider-actions-upsell form {
      display: flex;
      flex-wrap: wrap;
      gap: var(--spacing-2x); }
      .promo-slider-actions-upsell form .btn + .btn {
        margin-left: 0; }
      @media (max-width: 767.98px) {
        .promo-slider-actions-upsell form {
          flex-direction: column;
          width: 100%; } }
  .promo-slider ul.promo-sluder-desc {
    padding-left: var(--spacing-1x); }
  .promo-slider .promo-slider-icon {
    position: absolute;
    left: 42px;
    top: -54px;
    width: var(--promo-slider-illustration-width);
    height: auto; }
  @media (min-width: 768px) {
    .promo-slider#Promotion.promo-slider:not(.promo-slider-xs) .promo-slider-shape > svg {
      left: 50%; } }
  @media (min-width: 768px) and (max-width: 991.98px) {
    .promo-slider#Promotion.promo-slider.promo-slider-xs .promo-slider-shape > svg {
      left: 50%; } }

.promo-shape-left {
  fill: var(--svg-banner-shape-left);
  fill-rule: evenodd;
  clip-rule: evenodd; }

.promo-shape-right {
  fill: var(--svg-banner-shape-right);
  fill-rule: evenodd;
  clip-rule: evenodd; }

@media (min-width: 768px) {
  .promo-slider:not(.promo-slider-xs) .promo-slider-icon[width="596"] {
    bottom: -48px; } }

/*
*******************************************
Promo Slider - With Slides
*******************************************
*/
.promo-slider[data-promo-slider] .promo-slider-background > *:not(.promo-slider-shape) {
  opacity: 0;
  visibility: hidden;
  transition: visibility 0.45s, opacity 0.45s; }

.promo-slider[data-promo-slider] .promo-slider-wrapper,
.promo-slider[data-promo-slider] .promo-slider-slide {
  min-height: var(--promo-slider-min-height); }

.promo-slider[data-promo-slider] .promo-slider-slide {
  position: absolute; }

.promo-slider[data-promo-slider] .promo-slider-body {
  padding: var(--promo-slider-body-padding); }

.promo-slider[data-promo-slider] .promo-slider-content {
  opacity: 0; }

.promo-slider[data-promo-slider] .promo-slider-icon {
  opacity: 0; }

.promo-slider:not([data-promo-slider]) .promo-slider-body {
  padding: 0; }

.promo-slider:not([data-promo-slider]) .promo-slider-content {
  padding: var(--ui-block-padding-lg);
  padding-right: 0; }

/*
*******************************************
Promo Slider - Small
*******************************************
*/
.promo-slider-md {
  max-width: 718px; }

.promo-slider-sm .promo-slider-content {
  padding-left: 0; }

.promo-slider-sm .promo-slider-icon {
  right: auto;
  left: 0;
  bottom: 0; }

.promo-slider-sm .promo-slider-title {
  font-size: var(--promo-slider-sm-title-font-size);
  line-height: var(--promo-slider-sm-title-line-height); }

@media (min-width: 992px) {
  .promo-slider-xs .promo-slider-slide {
    min-height: auto !important;
    flex-direction: column; }
    .promo-slider-xs .promo-slider-slide.no-icons .promo-slider-icons {
      height: 50px; }
  .promo-slider-xs .promo-slider-body {
    order: 2;
    width: 100%; }
  .promo-slider-xs .promo-slider-content {
    align-items: center;
    width: 100%; }
  .promo-slider-xs .promo-slider-icons {
    order: 1;
    height: var(--promo-slider-xs-illustration-height);
    margin-top: var(--ui-block-spacing-xlg);
    width: 100%; }
    .promo-slider-xs .promo-slider-icons.promo-slider-icons--image {
      height: 160px; }
  .promo-slider-xs .promo-slider-icon {
    left: auto;
    right: 50%;
    bottom: 0;
    height: var(--promo-slider-xs-illustration-height);
    width: var(--promo-slider-xs-illustration-width);
    margin-right: calc(var(--promo-slider-xs-illustration-width) / -2); }
  .promo-slider-xs .promo-slider-more {
    right: 24px;
    text-align: center; }
  .promo-slider-xs .promo-slider-title {
    text-align: center; }
  .promo-slider-xs .promo-slider-nav > li {
    margin-right: 0; }
    .promo-slider-xs .promo-slider-nav > li .full-name {
      display: none; }
    .promo-slider-xs .promo-slider-nav > li .short-name {
      display: block; }
  .promo-slider-xs .promo-slider-close {
    color: var(--text-secondary-body-color);
    margin-right: -8px; }
  .promo-slider-xs .promo-slider-title {
    font-size: var(--promo-slider-xs-title-font-size);
    line-height: var(--promo-slider-xs-title-line-height); }
  .promo-slider-xs .promo-slider-background {
    min-width: 516px;
    left: 50%;
    transform: translateX(-50%); }
  .promo-slider-xs .promo-slider-shape {
    width: 100%; }
    .promo-slider-xs .promo-slider-shape > svg {
      top: -58px;
      left: -81px;
      height: 350px; } }
  @media (min-width: 992px) and (min-width: 768px) {
    .promo-slider-xs .promo-slider-shape.promo-slider-shape-xs > svg {
      top: -50px; } }

@media (min-width: 992px) {
  .promo-slider-xs:not([data-promo-slider]) .promo-slider-body {
    padding: 0; }
  .promo-slider-xs:not([data-promo-slider]) .promo-slider-content {
    padding: 24px; }
  .promo-slider-xs[data-promo-slider] .promo-slider-body {
    padding: 0 0 40px 0; }
  .promo-slider-xs[data-promo-slider] .promo-slider-content {
    padding: 24px 24px 32px 24px; } }

@media (max-width: 767.98px) {
  .promo-slider .promo-slider-slide {
    min-height: auto !important;
    flex-direction: column; }
    .promo-slider .promo-slider-slide.no-icons .promo-slider-icons {
      height: 50px; }
  .promo-slider .promo-slider-body {
    order: 2;
    width: 100%; }
  .promo-slider .promo-slider-content {
    align-items: center;
    width: 100%; }
  .promo-slider .promo-slider-icons {
    order: 1;
    height: var(--promo-slider-xs-illustration-height);
    margin-top: var(--ui-block-spacing-xlg);
    width: 100%; }
    .promo-slider .promo-slider-icons.promo-slider-icons--image {
      height: 160px; }
  .promo-slider .promo-slider-icon {
    left: auto;
    right: 50%;
    bottom: 0;
    height: var(--promo-slider-xs-illustration-height);
    width: var(--promo-slider-xs-illustration-width);
    margin-right: calc(var(--promo-slider-xs-illustration-width) / -2); }
  .promo-slider .promo-slider-more {
    right: 24px;
    text-align: center; }
  .promo-slider .promo-slider-title {
    text-align: center; }
  .promo-slider .promo-slider-nav > li {
    margin-right: 0; }
    .promo-slider .promo-slider-nav > li .full-name {
      display: none; }
    .promo-slider .promo-slider-nav > li .short-name {
      display: block; }
  .promo-slider .promo-slider-close {
    color: var(--text-secondary-body-color);
    margin-right: -8px; }
  .promo-slider .promo-slider-title {
    font-size: var(--promo-slider-xs-title-font-size);
    line-height: var(--promo-slider-xs-title-line-height); }
  .promo-slider .promo-slider-background {
    min-width: 516px;
    left: 50%;
    transform: translateX(-50%); }
  .promo-slider .promo-slider-shape {
    width: 100%; }
    .promo-slider .promo-slider-shape > svg {
      top: -58px;
      left: -81px;
      height: 350px; } }
  @media (max-width: 767.98px) and (min-width: 768px) {
    .promo-slider .promo-slider-shape.promo-slider-shape-xs > svg {
      top: -50px; } }

@media (max-width: 767.98px) {
  .promo-slider:not([data-promo-slider]) .promo-slider-body {
    padding: 0; }
  .promo-slider:not([data-promo-slider]) .promo-slider-content {
    padding: 24px; }
  .promo-slider[data-promo-slider] .promo-slider-body {
    padding: 0 0 40px 0; }
  .promo-slider[data-promo-slider] .promo-slider-content {
    padding: 24px 24px 32px 24px; } }

@keyframes showSliderIcons {
  from {
    transform: translate(-52px, -30px);
    opacity: 0; }
  to {
    transform: translate(0, 0);
    opacity: 1; } }

@keyframes showSliderIconsReverse {
  from {
    transform: translate(-52px, 30px);
    opacity: 0; }
  to {
    transform: translate(0, 0);
    opacity: 1; } }

@keyframes showSliderIns {
  from {
    transform: translateX(-56px);
    opacity: 0; }
  to {
    transform: translateX(0);
    opacity: 1; } }

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

@media (max-width: 991px) and (min-width: 768px) {
  .promo-slider-xs .promo-slider-icon[width="596"] {
    bottom: -48px; } }

/*
*******************************************
Promo Slider - Nav
*******************************************
*/
.promo-slider-nav {
  display: flex;
  list-style: none;
  margin: 0 -5px;
  padding: 0; }
  .promo-slider-nav > li {
    display: flex;
    align-items: center;
    padding: var(--spacing-1x);
    color: var(--text-lighter-color);
    transition: color var(--transition-base);
    cursor: pointer; }
    .promo-slider-nav > li:hover, .promo-slider-nav > li.active {
      color: var(--ui-nav-secondary-link-hover-color); }
    .promo-slider-nav > li .short-name {
      display: none; }

.promo-slider-nav-dots > li {
  padding: 5px;
  outline: none; }
  .promo-slider-nav-dots > li span {
    display: none !important; }
  .promo-slider-nav-dots > li:after {
    display: block;
    content: "";
    height: 8px;
    width: 8px;
    padding: 0;
    background: var(--btn-primary-faded-bg);
    border-radius: 100%;
    transition: all var(--transition-base); }
  .promo-slider-nav-dots > li:hover:after, .promo-slider-nav-dots > li:focus:after, .promo-slider-nav-dots > li:active:after {
    background: var(--btn-primary-faded-hover-bg); }
  .promo-slider-nav-dots > li.active:after {
    background: var(--btn-primary-bg); }

.promo-slider-xs .promo-slider-nav > li {
  color: var(--primary-block-link-color); }
  .promo-slider-xs .promo-slider-nav > li:hover, .promo-slider-xs .promo-slider-nav > li.active {
    color: var(--primary-block-link-active-color); }

@media (max-width: 1319.98px) {
  .promo-slider-nav > li {
    padding: 5px;
    outline: none; }
    .promo-slider-nav > li span {
      display: none !important; }
    .promo-slider-nav > li:after {
      display: block;
      content: "";
      height: 8px;
      width: 8px;
      padding: 0;
      background: var(--btn-primary-faded-bg);
      border-radius: 100%;
      transition: all var(--transition-base); }
    .promo-slider-nav > li:hover:after, .promo-slider-nav > li:focus:after, .promo-slider-nav > li:active:after {
      background: var(--btn-primary-faded-hover-bg); }
    .promo-slider-nav > li.active:after {
      background: var(--btn-primary-bg); } }

/*
*******************************************
Promo Slider - Styles
*******************************************
*/
.promo-slider-primary .promo-slider-wrapper {
  background: var(--primary-block-bg); }

.promo-slider-primary .promo-slider-nav > li {
  outline: none;
  color: var(--primary-block-link-color); }
  .promo-slider-primary .promo-slider-nav > li:hover, .promo-slider-primary .promo-slider-nav > li:focus, .promo-slider-primary .promo-slider-nav > li:active, .promo-slider-primary .promo-slider-nav > li.active, .promo-slider-primary .promo-slider-nav > li:focus-visible {
    color: var(--primary-block-link-hover-color); }

.promo-slider-primary .promo-slider-close {
  color: var(--primary-block-link-color);
  outline: none; }
  .promo-slider-primary .promo-slider-close:hover, .promo-slider-primary .promo-slider-close:focus, .promo-slider-primary .promo-slider-close:active, .promo-slider-primary .promo-slider-close:focus-visible {
    color: var(--primary-block-link-hover-color); }

.promo-slider-primary .promo-slider-slide:hover .promo-slider-more, .promo-slider-primary .promo-slider-slide:focus-visible .promo-slider-more, .promo-slider-primary .promo-slider-slide:focus .promo-slider-more {
  color: var(--primary-block-link-hover-color); }

.promo-slider-primary .promo-slider-title {
  color: var(--primary-block-title-color); }

.promo-slider-primary .promo-slider-desc {
  color: var(--primary-block-text-color); }

.promo-slider-secondary .promo-slider-wrapper {
  background: var(--secondary-block-bg); }

.promo-slider-secondary .promo-slider-nav > li {
  color: var(--secondary-block-link-color); }
  .promo-slider-secondary .promo-slider-nav > li:hover, .promo-slider-secondary .promo-slider-nav > li:focus, .promo-slider-secondary .promo-slider-nav > li:active {
    color: var(--secondary-block-link-hover-color); }

.promo-slider-secondary .promo-slider-close {
  color: var(--secondary-block-link-color); }
  .promo-slider-secondary .promo-slider-close:hover, .promo-slider-secondary .promo-slider-close:focus, .promo-slider-secondary .promo-slider-close:active {
    color: var(--secondary-block-link-hover-color); }

.promo-slider-secondary .promo-slider-slide:hover .promo-slider-more {
  color: var(--secondary-block-link-hover-color); }

.promo-slider-secondary .promo-slider-title {
  color: var(--secondary-block-title-color); }

.promo-slider-secondary .promo-slider-desc {
  color: var(--secondary-block-text-color); }

.promo-slider-primary .promo-slider-more,
.promo-slider-primary .promo-slider-more > i,
.promo-slider-primary .promo-slider-nav > li,
.promo-slider-primary .promo-slider-nav > li > i,
.promo-slider-secondary .promo-slider-more,
.promo-slider-secondary .promo-slider-more > i,
.promo-slider-secondary .promo-slider-nav > li,
.promo-slider-secondary .promo-slider-nav > li > i {
  color: var(--primary-block-link-color); }

.promo-slider-primary .promo-slider-more:hover,
.promo-slider-primary .promo-slider-more:hover > i, .promo-slider-primary .promo-slider-more:focus,
.promo-slider-primary .promo-slider-more:focus > i, .promo-slider-primary .promo-slider-more:active,
.promo-slider-primary .promo-slider-more:active > i,
.promo-slider-primary .promo-slider-nav > li:hover,
.promo-slider-primary .promo-slider-nav > li:hover > i,
.promo-slider-primary .promo-slider-nav > li:focus,
.promo-slider-primary .promo-slider-nav > li:focus > i,
.promo-slider-primary .promo-slider-nav > li:active,
.promo-slider-primary .promo-slider-nav > li:active > i,
.promo-slider-secondary .promo-slider-more:hover,
.promo-slider-secondary .promo-slider-more:hover > i,
.promo-slider-secondary .promo-slider-more:focus,
.promo-slider-secondary .promo-slider-more:focus > i,
.promo-slider-secondary .promo-slider-more:active,
.promo-slider-secondary .promo-slider-more:active > i,
.promo-slider-secondary .promo-slider-nav > li:hover,
.promo-slider-secondary .promo-slider-nav > li:hover > i,
.promo-slider-secondary .promo-slider-nav > li:focus,
.promo-slider-secondary .promo-slider-nav > li:focus > i,
.promo-slider-secondary .promo-slider-nav > li:active,
.promo-slider-secondary .promo-slider-nav > li:active > i {
  color: var(--primary-block-link-hover-color); }

.promo-slider-primary:hover .promo-slider-more,
.promo-slider-primary:hover .promo-slider-more > i, .promo-slider-primary:focus .promo-slider-more,
.promo-slider-primary:focus .promo-slider-more > i, .promo-slider-primary:active .promo-slider-more,
.promo-slider-primary:active .promo-slider-more > i,
.promo-slider-secondary:hover .promo-slider-more,
.promo-slider-secondary:hover .promo-slider-more > i,
.promo-slider-secondary:focus .promo-slider-more,
.promo-slider-secondary:focus .promo-slider-more > i,
.promo-slider-secondary:active .promo-slider-more,
.promo-slider-secondary:active .promo-slider-more > i {
  color: var(--primary-block-link-hover-color); }

.promo-slider-icon:not(.promo-slider-icon-reverse)[class*="-left"] {
  z-index: 1; }

.promo-slider-icon:not(.promo-slider-icon-reverse)[class*="-center"] {
  z-index: 2; }

.promo-slider-icon:not(.promo-slider-icon-reverse)[class*="-right"] {
  z-index: 3; }

.promo-slider-icon-reverse[class*="-left"] {
  z-index: 3; }

.promo-slider-icon-reverse[class*="-center"] {
  z-index: 2; }

.promo-slider-icon-reverse[class*="-right"] {
  z-index: 1; }

.promo-slider-xs .promo-slider-nav > li {
  color: var(--primary-block-dot-nav-hover-bg); }
  .promo-slider-xs .promo-slider-nav > li:hover, .promo-slider-xs .promo-slider-nav > li.active {
    color: var(--primary-block-link-active-color); }

.promo-slider-primary .promo-slider-nav > li, .promo-slider-secondary .promo-slider-nav > li {
  color: var(--primary-block-dot-nav-hover-bg); }
  .promo-slider-primary .promo-slider-nav > li:hover, .promo-slider-primary .promo-slider-nav > li.active, .promo-slider-secondary .promo-slider-nav > li:hover, .promo-slider-secondary .promo-slider-nav > li.active {
    color: var(--primary-block-link-active-color); }

.promo-slider-primary-xs .promo-slider-nav > li, .promo-slider-secondary-xs .promo-slider-nav > li {
  color: var(--primary-block-dot-nav-hover-bg); }
  .promo-slider-primary-xs .promo-slider-nav > li:hover, .promo-slider-primary-xs .promo-slider-nav > li.active, .promo-slider-secondary-xs .promo-slider-nav > li:hover, .promo-slider-secondary-xs .promo-slider-nav > li.active {
    color: var(--primary-block-link-active-color); }

.promo-slider-primary .promo-slider-nav-dots > li::after, .promo-slider-secondary .promo-slider-nav-dots > li::after {
  background: var(--primary-block-dot-nav-hover-bg); }

.promo-slider-primary .promo-slider-nav-dots > li:hover::after, .promo-slider-primary .promo-slider-nav-dots > li.active::after, .promo-slider-secondary .promo-slider-nav-dots > li:hover::after, .promo-slider-secondary .promo-slider-nav-dots > li.active::after {
  background: var(--primary-block-link-active-color); }

.promo-slider-primary-xs .promo-slider-nav-dots > li::after, .promo-slider-secondary-xs .promo-slider-nav-dots > li::after {
  background: var(--primary-block-dot-nav-hover-bg); }

.promo-slider-primary-xs .promo-slider-nav-dots > li:hover::after, .promo-slider-primary-xs .promo-slider-nav-dots > li.active::after, .promo-slider-secondary-xs .promo-slider-nav-dots > li:hover::after, .promo-slider-secondary-xs .promo-slider-nav-dots > li.active::after {
  background: var(--primary-block-link-active-color); }

.price {
  display: block;
  color: var(--price-color);
  font-size: var(--price-font-size);
  font-weight: var(--price-font-weight);
  line-height: var(--price-line-height);
  word-break: break-word;
  text-align: center; }
  .price-inline {
    display: flex;
    align-items: baseline; }
  .price-cycle {
    display: block;
    text-align: center; }
  .price-amount {
    display: flex;
    justify-content: center; }
    .price-amount.price-inline-amount {
      display: inline-flex; }
      .price-amount.price-inline-amount + .price-cycle-inline {
        display: inline-block; }
  .price-cycle, .price-setup-fee,
  .price-setup-fee [style="color: red; text-decoration: line-through;"], .price-starting-from {
    color: var(--price-cycle-color);
    font-size: var(--price-cycle-font-size);
    font-weight: var(--price-cycle-font-weight);
    line-height: var(--price-cycle-line-height); }
  .price-currency,
  .price sub {
    font-size: var(--price-currency-font-size);
    font-weight: var(--price-currency-font-weight);
    line-height: var(--price-currency-line-height); }
  .price-savings {
    color: var(--price-savings-color);
    font-size: var(--price-savings-font-size);
    line-height: var(--price-savings-line-height);
    font-weight: var(--price-savings-font-weight);
    display: flex;
    align-items: center;
    justify-content: center; }
    .price-savings span {
      text-decoration: line-through; }
    .price-savings i {
      font-style: normal;
      cursor: pointer;
      display: flex;
      align-items: center; }
  .price-discount {
    background-color: var(--price-savings-background);
    padding: 2px 6px;
    border-radius: var(--border-radius-xs);
    margin-left: 4px;
    font-weight: var(--font-weight-medium); }
  .price-total, .price-title {
    color: var(--price-title-color);
    font-size: var(--price-title-font-size);
    line-height: var(--price-title-line-height);
    font-weight: var(--font-weight-base); }
  .price-addon {
    font-size: var(--font-size-base);
    line-height: var(--line-height-base); }
  .price-discountCenter .price-amount {
    display: flex;
    flex-direction: column; }
  .price-discountCenter span {
    color: var(--price-savings-color);
    font-size: var(--price-savings-font-size);
    line-height: var(--price-savings-line-height);
    font-weight: var(--price-savings-font-weight); }
  .price-discountCenter.domain-price .price span {
    margin-bottom: var(--spacing-1x);
    font-size: var(--font-size-h5); }
  .price-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start; }
    .price-left .package-cycle,
    .price-left .price-title,
    .price-left .price-amount,
    .price-left .price-total {
      text-align: left; }
    .price-left .price-savings {
      justify-content: flex-start; }
    .price-left-h {
      display: flex;
      flex-direction: column;
      align-items: flex-start !important; }
      .price-left-h .price-amount {
        display: flex;
        align-items: center; }
      .price-left-h .price-savings {
        margin-left: 8px; }
  .price-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end; }
    .price-right .package-cycle {
      text-align: right; }
    .price-right .price-savings {
      justify-content: flex-end; }
      .price-right .price-savings span {
        margin-right: 0; }
    .price-right-h {
      display: flex;
      flex-direction: column;
      align-items: flex-end !important; }
      .price-right-h .price-amount {
        display: flex;
        align-items: center; }
      .price-right-h .price-savings {
        margin-right: 8px; }
  .price-lg {
    font-size: var(--price-lg-font-size);
    line-height: var(--price-lg-line-height);
    font-weight: var(--price-lg-font-weight); }
    .price-lg .price-currency,
    .price-lg sub {
      font-size: var(--price-lg-currency-font-size);
      line-height: var(--price-lg-currency-line-height);
      font-weight: var(--price-lg-currency-font-weight); }
  .price-sm {
    font-size: var(--price-sm-font-size);
    line-height: var(--price-sm-line-height);
    font-weight: var(--price-sm-font-weight); }
    .price-sm .price-currency,
    .price-sm sub {
      font-size: var(--price-sm-currency-font-size);
      line-height: var(--price-sm-currency-line-height);
      font-weight: var(--price-sm-currency-font-weight); }
  .price-xs {
    font-size: var(--price-xs-font-size);
    font-weight: var(--price-xs-font-weight);
    line-height: var(--price-xs-line-height); }
    .price-xs .price-currency,
    .price-xs sub {
      font-size: var(--price-xs-currency-font-size);
      line-height: var(--price-xs-currency-line-height);
      font-weight: var(--price-xs-currency-font-weight); }

.discount_center-base_cart_domain_list_register,
.discount_center-standard_cart_addon_price,
.discount_center-standard_cart_domain_register,
.discount_center-standard_cart_domain_transfer {
  color: var(--price-savings-color) !important;
  font-size: var(--price-savings-font-size);
  line-height: var(--price-savings-line-height);
  font-weight: var(--price-savings-font-weight); }

/*
*******************************************
Package  
*******************************************
*/
.packages {
  justify-content: center; }

.package {
  display: flex;
  flex-direction: column;
  background: var(--package-bg);
  border: var(--package-border);
  border-radius: var(--package-border-radius);
  box-shadow: var(--package-block-shadow);
  padding: var(--package-padding);
  text-align: center;
  margin-bottom: var(--ui-block-spacing-lg); }
  .package.has-shadow {
    border-color: transparent; }
  .package .package-side-left > *,
  .package > * {
    margin-bottom: 0 !important; }
  .package .package-side-left > *:not(.label-corner) + *,
  .package > *:not(.label-corner) + * {
    margin-top: var(--package-element-spacing); }
  .package .package-side > *:empty,
  .package > *:empty {
    display: none; }
  .package .package-side-left > * + *,
  .package > * + * {
    margin-top: var(--package-element-spacing); }
  .package .premium-divider {
    margin: 0 auto; }
  .package-body {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 1; }
  .package-title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: var(--package-title-font-size);
    font-weight: var(--package-title-font-weight);
    line-height: var(--package-title-line-height);
    word-break: break-word; }
    .package-title + .package-price {
      margin-top: var(--package-title-spacing-bottom); }
  .package-subtitle {
    color: var(--text-lighter-color) !important; }
  .package-setup-fee, .package-starting-from, .package-qty, .package-billing-cycle {
    color: var(--text-lighter-color);
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm); }
    .package-setup-fee [style="color: red; text-decoration: line-through;"], .package-starting-from [style="color: red; text-decoration: line-through;"], .package-qty [style="color: red; text-decoration: line-through;"], .package-billing-cycle [style="color: red; text-decoration: line-through;"] {
      color: var(--text-lighter-color) !important;
      font-size: var(--font-size-sm);
      line-height: var(--line-height-sm); }
      .package-setup-fee [style="color: red; text-decoration: line-through;"] .price-prefix, .package-starting-from [style="color: red; text-decoration: line-through;"] .price-prefix, .package-qty [style="color: red; text-decoration: line-through;"] .price-prefix, .package-billing-cycle [style="color: red; text-decoration: line-through;"] .price-prefix {
        font-size: inherit !important;
        line-height: inherit !important; }
  .package-qty {
    padding-top: var(--spacing-1x);
    margin-bottom: -8px; }
  .package .package-features > li > b,
  .package .package-features > li > strong {
    color: var(--text-heading-color); }
  .package-features {
    position: relative;
    padding: 0;
    margin-bottom: 0 !important;
    list-style: none; }
    .package-features > li {
      padding: 4px 0;
      color: var(--text-body-color); }
      .package-features > li > b,
      .package-features > li > strong {
        color: var(--text-heading-color);
        font-weight: var(--font-weight-medium); }
        .package-features > li > b i,
        .package-features > li > strong i {
          margin-right: 12px;
          color: var(--text-primary-color); }
      .package-features > li > [data-toggle="tooltip"] {
        display: inline-flex;
        margin-left: 4px;
        cursor: pointer;
        color: var(--ui-icon-color); }
        .package-features > li > [data-toggle="tooltip"]:hover {
          color: var(--text-primary-color); }
      .package-features > li > i {
        color: var(--ui-icon-color);
        margin-right: 4px; }
      .package-features > li:first-child {
        padding-top: 0; }
      .package-features > li.features-heading {
        padding: 8px 0;
        color: var(--text-heading-color);
        font-weight: var(--font-weight-medium); }
        .package-features > li.features-heading:first-child {
          padding-top: 0; }
    .package-features-condensed > li {
      padding: 6px 0;
      color: var(--text-lighter-color); }
  .package-features, .package-content {
    flex: 1 0 auto; }
  .package-features, .package-desc,
  .package-content > p {
    font-size: var(--package-desc-font-size);
    line-height: var(--package-desc-line-height);
    font-weight: var(--package-desc-font-weight); }
    .package-features > :last-child, .package-desc > :last-child,
    .package-content > p > :last-child {
      margin-bottom: 0; }
    .package-features:first-child, .package-desc:first-child,
    .package-content > p:first-child {
      margin-bottom: var(--paragraph-margin-bottom); }
  .package-content > * + * {
    margin-top: var(--package-element-spacing); }
  .package-content .ls {
    margin-right: 12px; }
  .package-content {
    display: block;
    flex: 1; }
    .package-content > *:last-child {
      margin-bottom: 0 !important; }
    .package-content > p.package-desc {
      margin-top: calc(-1 * var(--package-element-spacing)); }
    .package-content > .package-features {
      order: 1;
      margin-top: 0; }
      .package-content > .package-features + p {
        order: 0;
        position: relative;
        margin-bottom: var(--paragraph-margin-bottom) !important;
        margin-top: 0 !important; }
        .package-content > .package-features + p:after {
          display: none !important; }
    .package-content > p:not(:empty):not(:first-child) {
      margin-top: var(--package-element-spacing); }
    .package-content > p:empty {
      margin-bottom: 0; }
  .package-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto; }
  .package-actions, .package-footer {
    margin-top: auto !important;
    padding-top: var(--package-element-spacing); }
    .package-actions.package-side .package-price, .package-footer.package-side .package-price {
      display: none; }
    .package-actions .package-actions, .package-footer .package-actions {
      padding: 0 !important; }
    .package-actions .btn, .package-footer .btn {
      min-width: var(--package-btn-min-width); }
  .package-actions > * + *:not(.package-learn-more) {
    margin-left: var(--ui-block-padding-sm); }
  .package-actions > form select + .btn {
    margin-top: var(--ui-block-padding-sm); }
  .package-actions > .btn + .package-learn-more {
    margin-top: var(--ui-block-padding-sm); }
  .package-actions-wp .btn.btn-add-to-cart.btn-info[disabled] {
    color: var(--btn-info-color);
    background-color: var(--btn-info-bg);
    border-color: var(--btn-info-border); }
  .package-learn-more {
    display: block;
    color: var(--text-lighter-color);
    font-size: var(--font-size-base); }
  .package-monitoring .package-body {
    display: flex;
    flex-direction: row;
    gap: 5px;
    justify-content: center; }
    .package-monitoring .package-body ul {
      list-style: none;
      padding: 0;
      text-align: center; }
      .package-monitoring .package-body ul li {
        margin-bottom: 12px; }
        .package-monitoring .package-body ul li:first-of-type {
          display: none; }
  .package-monitoring .package-subtitle {
    margin-top: var(--spacing-3x); }
  .package-monitoring .package-actions {
    padding-top: 0; }
  .package-monitoring .package-price {
    padding-bottom: var(--spacing-3x);
    position: relative; }
    .package-monitoring .package-price:before {
      content: '';
      position: absolute;
      left: 50%;
      bottom: 0;
      transform: translateX(-50%);
      width: 40px;
      height: 2px;
      background: var(--brand-primary); }
  .package-addons .package-title:has(.graphic-item) {
    display: flex;
    align-items: center;
    gap: var(--ui-block-spacing-base); }

/*
*******************************************
Package - Featured
*******************************************
*/
.package-featured {
  position: relative;
  overflow: hidden;
  border-color: var(--brand-primary); }
  .package-featured .label:not(.label-corner):not(.price-discount-save) {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    padding-left: var(--spacing-1x);
    padding-right: var(--spacing-1x);
    font-size: var(--font-size-xs);
    text-transform: none; }
  .package-featured .label-corner {
    top: -15px;
    right: 15px;
    left: auto;
    width: 100px;
    transform: rotate(45deg) translateX(50%); }
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .package-featured .label-corner {
        line-height: 1; } }

/*
*******************************************
Package - Separator line
*******************************************
*/
.package-title + .package-content,
.package-price + .package-content {
  position: relative; }

/*
*******************************************
Package - Size
*******************************************
*/
.package-sm {
  padding: var(--package-sm-padding); }
  .package-sm > * {
    margin-bottom: 0; }
  .package-sm .package-side-left > *:not(.label-corner) + *,
  .package-sm > *:not(.label-corner) + * {
    margin-top: var(--package-sm-element-spacing); }
  .package-sm .package-side-left > * + *,
  .package-sm .package-title,
  .package-sm .package-name {
    font-size: var(--package-sm-title-font-size);
    font-weight: var(--package-sm-title-font-weight);
    line-height: var(--package-sm-title-line-height); }
  .package-sm .package-starting-from {
    font-size: var(--font-size-xs); }
  .package-sm .package-setup-fee,
  .package-sm .package-qty,
  .package-sm .package-billing-cycle {
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs); }
  .package-sm .package-features,
  .package-sm .package-desc,
  .package-sm .package-content > p {
    font-size: var(--package-desc-sm-font-size);
    line-height: var(--package-desc-sm-line-height);
    font-weight: var(--package-desc-sm-font-weight); }
  .package-sm .package-title + .package-content,
  .package-sm .package-price + .package-content,
  .package-sm .package-price + .package-features {
    margin-top: var(--package-sm-element-spacing); }
  .package-sm .package-actions,
  .package-sm .package-footer {
    padding-top: var(--package-sm-element-spacing); }

/*
*******************************************
Package - Layout
*******************************************
*/
.package-left .package-content p:after, .package-addons .package-content p:after {
  display: none; }

.package-left .package-features:after, .package-addons .package-features:after {
  display: none; }

.package-addons-narrow .package-features > li {
  width: 100%; }

/*
*******************************************
Package - Left Align
*******************************************
*/
.package-left,
.package-left .package-content,
.package-left .package-features,
.package-left .package-actions {
  text-align: left; }

.package-left .package-price .price {
  text-align: left; }
  .package-left .package-price .price + .package-actions {
    margin-left: auto; }

.package-left .package-footer {
  display: flex;
  align-items: center; }
  @media (max-width: 767.98px) {
    .package-left .package-footer {
      flex-direction: column;
      align-items: flex-start; }
      .package-left .package-footer .package-actions {
        margin-top: var(--spacing-2x) !important; } }
  .package-left .package-footer .package-price {
    flex: 1; }

.package-left .package-actions {
  display: flex; }
  .package-left .package-actions .btn {
    min-width: 0; }

/*
*******************************************
Package - Horizontal
*******************************************
*/
.package-horizontal .package-divider {
  display: none; }

.package-horizontal .price-discountCenter .price-amount {
  align-items: flex-end; }

@media (min-width: 768px) {
  .package-horizontal {
    flex-direction: row; }
    .package-horizontal .package-header:has(.graphic-item) {
      display: flex;
      align-items: center;
      gap: var(--ui-block-spacing-base); }
      .package-horizontal .package-header:has(.graphic-item) .graphic-item {
        margin-bottom: 0 !important; }
    .package-horizontal .package-header .package-price {
      display: none; }
    .package-horizontal .package-header + .package-body {
      padding-top: var(--spacing-1x); }
    .package-horizontal .package-side-left {
      flex: 1;
      flex-grow: 1;
      flex-shrink: 1;
      padding-right: var(--spacing-2x);
      text-align: left; }
    .package-horizontal .package-body {
      display: flex;
      flex: 1;
      flex-direction: row;
      justify-content: space-between;
      margin: 0;
      padding: 0; }
      .package-horizontal .package-body:after {
        display: none; }
    .package-horizontal .package-content {
      flex-grow: 1;
      flex-shrink: 1;
      height: 100%;
      text-align: left; }
      .package-horizontal .package-content p:not(:empty):after {
        display: none; }
    .package-horizontal .package-actions,
    .package-horizontal .package-footer {
      padding-top: 0;
      margin: 0 !important;
      display: flex;
      flex-direction: column;
      align-items: flex-end; }
      .package-horizontal .package-actions .package-price,
      .package-horizontal .package-footer .package-price {
        display: flex;
        margin-bottom: var(--spacing-2x); }
      .package-horizontal .package-actions form,
      .package-horizontal .package-actions .btn,
      .package-horizontal .package-footer form,
      .package-horizontal .package-footer .btn {
        margin-top: auto; }
    .package-horizontal .package-features {
      display: flex;
      flex-wrap: wrap;
      text-align: left;
      padding-top: 0 !important; }
      .package-horizontal .package-features:after {
        display: none; }
      .package-horizontal .package-features > li {
        width: 50%;
        min-width: 50%;
        text-align: left;
        padding: 4px 0; }
        .package-horizontal .package-features > li + li {
          padding-right: var(--spacing-2x); }
    .package-horizontal .package-price {
      margin-top: 0 !important; }
      .package-horizontal .package-price .price {
        display: flex;
        flex-direction: column;
        align-items: flex-end; }
  .package-horizontal-inline .package-body {
    align-items: center; }
  .package-horizontal-inline .package-content,
  .package-horizontal-inline .package-footer {
    display: flex;
    flex-direction: row;
    align-items: center; }
  .package-horizontal-inline .package-content {
    display: flex;
    flex-direction: row;
    align-items: center; }
    .package-horizontal-inline .package-content > * {
      margin-top: 0;
      margin-bottom: 0; }
      .package-horizontal-inline .package-content > * + * {
        margin-left: var(--package-element-spacing); }
  .package-horizontal-inline .package-footer {
    margin-top: 0;
    padding-top: 0; }
    .package-horizontal-inline .package-footer .price {
      margin-right: var(--package-element-spacing); } }

@media (max-width: 767.98px) {
  .package-horizontal .package-price .price-right {
    align-items: center; }
  .package-horizontal .package-price .price-savings {
    justify-content: center; } }

.premium-divider {
  max-width: 210px;
  display: flex;
  align-items: center;
  position: relative;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  font-weight: var(--font-weight-light); }
  .premium-divider:before {
    content: '';
    display: flex;
    height: 1px;
    width: 100%;
    background: linear-gradient(270deg, rgba(16, 98, 254, 0) 0%, var(--text-primary-color) 20.31%, var(--text-primary-color) 80.73%, rgba(16, 98, 254, 0) 100%); }
  .premium-divider:after {
    content: '';
    display: flex;
    height: 1px;
    width: 100%;
    background: linear-gradient(270deg, rgba(16, 98, 254, 0) 0%, var(--text-primary-color) 20.31%, var(--text-primary-color) 80.73%, rgba(16, 98, 254, 0) 100%); }
  .premium-divider > span {
    white-space: nowrap;
    padding: 4px var(--spacing-2x);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    color: var(--text-primary-color); }

.page-addons .package-price .price-inline {
  flex-direction: column; }

@media (max-width: 1240px) and (min-width: 992px) {
  .page-addons .package-footer {
    flex-direction: column;
    align-items: flex-start; }
    .page-addons .package-footer .price {
      margin-bottom: var(--spacing-2x); } }

.page-homepage .package-icon > svg, .page-homepage .package-icon > img {
  width: 48px;
  height: 48px; }
  @media (max-width: 767.98px) {
    .page-homepage .package-icon > svg, .page-homepage .package-icon > img {
      width: 40px;
      height: 40px; } }

/*
*******************************************
Form - Switch
*******************************************
*/
.switch {
  position: relative;
  height: 24px;
  width: 40px;
  cursor: pointer;
  /* Switch: Checkbox */
  /* Switch: Handle */
  /* Switch: Container */ }
  .switch + .form-text {
    margin-left: spacing(2x); }
  .switch__checkbox {
    position: absolute;
    opacity: 0; }
    .switch__checkbox + .switch__container .switch__handle {
      right: 18px; }
    .switch__checkbox:checked + .switch__container {
      background: var(--brand-primary); }
      .switch__checkbox:checked + .switch__container .switch__handle {
        right: 2px; }
    .switch__checkbox--domain .loader {
      transition: 2s; }
    .switch__checkbox--domain.is-loading + .switch__container {
      cursor: not-allowed; }
      .switch__checkbox--domain.is-loading + .switch__container .loader {
        display: block;
        right: 8px;
        left: unset;
        cursor: not-allowed; }
      .switch__checkbox--domain.is-loading + .switch__container:after {
        opacity: 0;
        transition: var(--transition-base); }
    .switch__checkbox--domain:checked.is-loading + .switch__container .loader {
      left: 7px;
      right: unset; }
      .switch__checkbox--domain:checked.is-loading + .switch__container .loader .spinner > div {
        background: #fff; }
  .switch__handle {
    position: absolute;
    top: 2px;
    right: 2px;
    z-index: 2;
    display: block;
    height: 20px;
    width: 20px;
    background-color: #fff;
    border-radius: 12px;
    transition: var(--transition-base); }
  .switch__container {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: var(--gray-lighter-3);
    border-radius: 12px;
    transition: var(--transition-base);
    /*Switch loader*/ }
    .switch__container .loader {
      display: none;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      pointer-events: none;
      transition: var(--transition-base);
      z-index: 2; }
      .switch__container .loader .spinner-sm {
        height: 16px; }

tr.prevent-click > td {
  cursor: not-allowed; }

.switch[data-auto-renew-switch].is-loading {
  pointer-events: none; }
  .switch[data-auto-renew-switch].is-loading:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    cursor: not-allowed;
    z-index: 10; }

.switch--text {
  width: 50px; }
  .switch--text .switch__checkbox + .switch__container .switch__handle {
    right: 28px; }
  .switch--text .switch__checkbox + .switch__container:after {
    position: absolute;
    top: 2px;
    bottom: 0;
    display: flex;
    right: 6px;
    z-index: 1;
    align-items: center;
    content: "off";
    color: var(--gray-lighter-2);
    font-size: 11px;
    font-weight: var(--font-weight-base);
    text-transform: uppercase; }
  .switch--text .switch__checkbox:checked + .switch__container {
    background: var(--brand-primary); }
    .switch--text .switch__checkbox:checked + .switch__container:after {
      position: absolute;
      top: 2px;
      bottom: 0;
      display: flex;
      z-index: 1;
      align-items: center;
      content: "on";
      color: #fff;
      font-size: 11px;
      font-weight: var(--font-weight-base);
      text-transform: uppercase;
      left: 8px; }
    .switch--text .switch__checkbox:checked + .switch__container .switch__handle {
      right: 2px; }

.switch--dark-mode {
  margin-bottom: 0; }
  .switch--dark-mode .switch__checkbox + .switch__container .switch__handle:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    width: 14px;
    height: 14px;
    background-image: url(../img/light-mode-icon.svg);
    background-repeat: no-repeat;
    content: ""; }
  .switch--dark-mode .switch__checkbox + .switch__container .switch__handle svg {
    display: none; }
  .switch--dark-mode .switch__checkbox:checked + .switch__container .switch__handle::before {
    display: none; }
  .switch--dark-mode .switch__checkbox:checked + .switch__container .switch__handle svg {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }

.switch--sm {
  height: 18px;
  width: 32px; }
  .switch--sm .switch__handle {
    width: 14px;
    height: 14px; }
  .switch--sm .switch__checkbox + .switch__container .switch__handle {
    right: 16px; }
  .switch--sm .switch__checkbox:checked + .switch__container .switch__handle {
    right: 2px; }

.switch--lg {
  height: 28px;
  width: 60px;
  border-radius: 100%; }
  .switch--lg .switch__handle {
    width: 24px;
    height: 24px; }
  .switch--lg .switch__container {
    border-radius: 50px; }
  .switch--lg.switch--text .switch__checkbox + .switch__container .switch__handle {
    right: 34px; }
  .switch--lg.switch--text .switch__checkbox:checked + .switch__container:after {
    right: 36px !important; }
  .switch--lg.switch--text .switch__checkbox:checked + .switch__container .switch__handle {
    right: 2px; }
  .switch--lg.switch--text .switch__checkbox + .switch__container:after {
    right: var(--spacing-1x); }

.switch--primary .switch__handle {
  background: var(--brand-primary); }

.switch--primary .switch__checkbox:checked + .switch__container .switch__handle {
  background: #fff; }

.switch--primary .switch__container {
  background: var(--gray-lighter-4); }

html.lagom-dark-mode .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container {
  background: var(--brand-primary); }
  html.lagom-dark-mode .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container:after {
    position: absolute;
    top: 2px;
    bottom: 0;
    display: flex;
    z-index: 1;
    align-items: center;
    content: "on";
    color: #fff;
    font-size: 11px;
    font-weight: var(--font-weight-base);
    text-transform: uppercase;
    left: 8px; }
  html.lagom-dark-mode .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container .switch__handle {
    right: 2px; }
  html.lagom-dark-mode .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container .switch__handle::before {
    display: none; }
  html.lagom-dark-mode .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container .switch__handle svg {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }

html:not(.lagom-dark-mode) .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container {
  background-color: var(--gray-lighter-4); }
  html:not(.lagom-dark-mode) .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container .switch__handle {
    right: 28px; }
  html:not(.lagom-dark-mode) .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container:after {
    position: absolute;
    top: 2px;
    bottom: 0;
    display: flex;
    right: 6px;
    z-index: 1;
    align-items: center;
    content: "off";
    color: var(--gray-lighter-2);
    font-size: 11px;
    font-weight: var(--font-weight-base);
    text-transform: uppercase;
    left: unset; }
  html:not(.lagom-dark-mode) .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container .switch__handle:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    width: 14px;
    height: 14px;
    background-image: url(../img/light-mode-icon.svg);
    background-repeat: no-repeat;
    content: "";
    display: block; }
  html:not(.lagom-dark-mode) .page-lagom-cms .switch--dark-mode .switch__checkbox + .switch__container .switch__handle svg {
    display: none; }

.form-text + .switch {
  margin-left: auto; }

/*
*******************************************
Form - Boostrap Switch
*******************************************
*/
.bootstrap-switch {
  margin-top: 11px;
  position: relative;
  height: 28px;
  width: 60px !important;
  border-radius: 100%;
  cursor: pointer; }
  .bootstrap-switch input[type=checkbox],
  .bootstrap-switch input[type=radio] {
    position: absolute;
    opacity: 0; }
  .bootstrap-switch-container {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100% !important;
    background-color: var(--gray-lighter-3);
    border-radius: 12px;
    transition: var(--transition-base);
    margin: 0 !important; }
  .bootstrap-switch-handle-on, .bootstrap-switch-handle-off {
    color: #fff;
    font-size: 11px;
    font-weight: 400;
    text-transform: uppercase;
    position: absolute;
    display: flex;
    align-items: center;
    position: absolute;
    top: 0;
    bottom: 0;
    width: auto !important;
    line-height: 1; }
  .bootstrap-switch-handle-off {
    right: 8px; }
  .bootstrap-switch-handle-on {
    left: 8px; }
  .bootstrap-switch-label {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    width: 100% !important; }
    .bootstrap-switch-label:after {
      width: 24px;
      height: 24px;
      position: absolute;
      top: 2px;
      left: 2px;
      display: block;
      content: '';
      background-color: #fff;
      transition: var(--transition-base);
      border-radius: 100%; }
  .bootstrap-switch-off .bootstrap-switch-handle-on {
    display: none; }
  .bootstrap-switch-on .bootstrap-switch-handle-off {
    display: none; }
  .bootstrap-switch-on .bootstrap-switch-label:after {
    left: 34px; }
  .bootstrap-switch-on .bootstrap-switch-container {
    background: var(--brand-primary); }

/*
*******************************************
 SVG Icons
*******************************************
*/
.svg-icon-stroke {
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round; }

.svg-icon-outline-p, .svg-icon-outline-l, .svg-icon-outline-s, .svg-icon-outline-i {
  fill: none;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round; }

.svg-icon-outline-p {
  stroke: var(--svg-icon-color-base); }

.svg-icon-outline-l {
  stroke: var(--svg-icon-color-lighter); }

.svg-icon-outline-s {
  stroke: var(--svg-icon-color-secondary); }

.svg-icon-outline-i {
  stroke: var(--svg-icon-color-icon); }

.svg-icon-i {
  fill: var(--svg-icon-color-icon); }
  .svg-icon-i.svg-icon-stroke {
    stroke: var(--svg-icon-color-icon); }

.svg-icon-prime {
  fill: var(--svg-icon-color-base); }
  .svg-icon-prime.svg-icon-stroke {
    stroke: var(--svg-icon-color-base); }

.svg-icon-prime-l {
  fill: var(--svg-icon-color-lighter); }
  .svg-icon-prime-l.svg-icon-stroke {
    stroke: var(--svg-icon-color-lighter); }

.section-secondary .svg-icon-outline-s,
.app-nav-secondary .svg-icon-outline-s,
.main-footer-extended-primary .svg-icon-outline-s,
.main-footer-extended-secondary .svg-icon-outline-s,
.svg-icon-on-dark .svg-icon-outline-s {
  stroke: var(--svg-icon-on-dark-color-secondary); }

.section-secondary .package .svg-icon-outline-s,
.app-nav-secondary .package .svg-icon-outline-s,
.main-footer-extended-primary .package .svg-icon-outline-s,
.main-footer-extended-secondary .package .svg-icon-outline-s,
.svg-icon-on-dark .package .svg-icon-outline-s {
  stroke: var(--svg-icon-color-secondary); }

:root .section-primary .svg-icon-on-dark,
:root .section-secondary .svg-icon-on-dark,
:root .main-footer-extended-primary .svg-icon-on-dark,
:root .main-footer-extended-secondary .svg-icon-on-dark {
  --svg-icon-color-1:                             var(--svg-icon-on-dark-color-1);
  --svg-icon-color-2:                             var(--svg-icon-on-dark-color-2);
  --svg-icon-color-3:                             var(--svg-icon-on-dark-color-3);
  --svg-icon-color-4:                             var(--svg-icon-on-dark-color-4); }

@media (min-width: 992px) {
  :root .lagom:not(.lagom-layout-left):not(.lagom-layout-left-wide) .app-nav-primary .menu.menu-primary > li > a .svg-icon-on-dark,
  :root .lagom:not(.lagom-layout-left):not(.lagom-layout-left-wide) .app-nav-secondary .menu.menu-primary > li > a .svg-icon-on-dark {
    --svg-icon-color-1:                             var(--svg-icon-on-dark-color-1);
    --svg-icon-color-2:                             var(--svg-icon-on-dark-color-2);
    --svg-icon-color-3:                             var(--svg-icon-on-dark-color-3);
    --svg-icon-color-4:                             var(--svg-icon-on-dark-color-4); } }

@media (max-width: 991px) {
  :root .lagom .app-nav-primary .menu.menu-primary > li > a .svg-icon-on-dark,
  :root .lagom .app-nav-secondary .menu.menu-primary > li > a .svg-icon-on-dark,
  :root .lagom .app-nav-primary .menu.menu-primary > li.dropdown > ul.dropdown-menu > li > a .svg-icon-on-dark,
  :root .lagom .app-nav-secondary .menu.menu-primary > li.dropdown > ul.dropdown-menu > li > a .svg-icon-on-dark {
    --svg-icon-color-1:                             var(--svg-icon-on-dark-color-1);
    --svg-icon-color-2:                             var(--svg-icon-on-dark-color-2);
    --svg-icon-color-3:                             var(--svg-icon-on-dark-color-3);
    --svg-icon-color-4:                             var(--svg-icon-on-dark-color-4); } }

:root .svg-icon-on-dark:not([class*='onDark']) {
  --svg-icon-color-1:                             var(--svg-icon-on-dark-color-1);
  --svg-icon-color-2:                             var(--svg-icon-on-dark-color-2);
  --svg-icon-color-3:                             var(--svg-icon-on-dark-color-3);
  --svg-icon-color-4:                             var(--svg-icon-on-dark-color-4); }

:root .lagom.lagom-layout-left .app-nav-primary .app-nav-menu .menu-primary > li > a .svg-icon-on-dark,
:root .lagom.lagom-layout-left .app-nav-secondary .app-nav-menu .menu-primary > li > a .svg-icon-on-dark,
:root .lagom.lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu-primary > li > a .svg-icon-on-dark,
:root .lagom.lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu-primary > li > a .svg-icon-on-dark {
  --svg-icon-color-1:                             var(--svg-icon-on-dark-color-1);
  --svg-icon-color-2:                             var(--svg-icon-on-dark-color-2);
  --svg-icon-color-3:                             var(--svg-icon-on-dark-color-3);
  --svg-icon-color-4:                             var(--svg-icon-on-dark-color-4); }

:root .lagom.lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu-primary > li > ul li a .svg-icon-on-dark, :root .lagom.lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu-primary > li > ul li .nav-header-text .svg-icon-on-dark,
:root .lagom.lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu-primary > li > .dropdown-menu li a .svg-icon-on-dark,
:root .lagom.lagom-layout-left-wide .app-nav-primary .app-nav-menu .menu-primary > li > .dropdown-menu li .nav-header-text .svg-icon-on-dark,
:root .lagom.lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu-primary > li > ul li a .svg-icon-on-dark,
:root .lagom.lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu-primary > li > ul li .nav-header-text .svg-icon-on-dark,
:root .lagom.lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu-primary > li > .dropdown-menu li a .svg-icon-on-dark,
:root .lagom.lagom-layout-left-wide .app-nav-secondary .app-nav-menu .menu-primary > li > .dropdown-menu li .nav-header-text .svg-icon-on-dark {
  --svg-icon-color-1:                             var(--svg-icon-on-dark-color-1);
  --svg-icon-color-2:                             var(--svg-icon-on-dark-color-2);
  --svg-icon-color-3:                             var(--svg-icon-on-dark-color-3);
  --svg-icon-color-4:                             var(--svg-icon-on-dark-color-4); }

/*
*******************************************
 SVG Graphics
*******************************************
*/
.svg-graphic-stroke-w, .svg-graphic-stroke-p, .svg-graphic-stroke-f, .svg-graphic-stroke-f-2, .svg-graphic-stroke-2, .svg-graphic-stroke-4 {
  fill: none;
  stroke-width: 1px;
  stroke-linecap: round;
  stroke-linejoin: round; }

.svg-graphic-stroke-w {
  stroke: var(--svg-graphic-stroke-white); }

.svg-graphic-stroke-p {
  stroke: var(--svg-graphic-stroke-primary); }

.svg-graphic-stroke-f, .svg-graphic-stroke-gray {
  stroke: var(--svg-graphic-stroke-faded); }

.svg-graphic-stroke-f-2 {
  stroke: var(--svg-graphic-stroke-faded-2); }

.svg-graphic-stroke-2 {
  stroke-width: 2px; }

.svg-graphic-stroke-4 {
  stroke-width: 4px; }

.svg-graphic-stroke-dashed {
  stroke-dasharray: 4,4; }

.svg-graphic-body {
  fill: var(--svg-graphic-bg-body); }

.svg-graphic-browser-top {
  fill: var(--svg-graphic-bg-browser-top); }

.svg-graphic-browser-actions {
  fill: var(--svg-graphic-bg-browser-actions); }

.svg-graphic-browser-search {
  fill: var(--svg-graphic-bg-browser-search); }

.svg-graphic-banner {
  fill: var(--svg-graphic-bg-banner); }

.svg-graphic-white {
  fill: var(--svg-graphic-bg-white); }

.svg-graphic-faded {
  fill: var(--svg-graphic-bg-faded); }

.svg-graphic-faded-2 {
  fill: var(--svg-graphic-bg-faded-2); }

.svg-graphic-faded-3 {
  fill: var(--svg-graphic-bg-faded-3); }

.svg-graphic-green {
  fill: var(--svg-graphic-bg-green); }

.svg-graphic-red {
  fill: var(--svg-graphic-bg-red); }

.svg-graphic-red-darker {
  fill: var(--svg-graphic-bg-red-darker); }

.svg-graphic-primary {
  fill: var(--svg-graphic-bg-primary); }
  .svg-graphic-primary.svg-graphic-stroke, .svg-graphic-primary.svg-graphic-stroke-2, .svg-graphic-primary.svg-graphic-stroke-4 {
    stroke: var(--svg-graphic-bg-primary); }

.svg-graphic-secondary {
  fill: var(--svg-graphic-bg-secondary); }

.svg-graphic-fill-none {
  fill: none; }

/*
*******************************************
 SVG Illustrations
*******************************************
*/
/* Shared Elements */
.svg-screen-bottom-front {
  fill: var(--svg-screen-bottom-front); }

.svg-screen-bottom-back {
  fill: var(--svg-screen-bottom-back); }

.svg-screen-bottom-button {
  fill: var(--svg-screen-bottom-button); }

.svg-screen-top-front {
  fill: var(--svg-screen-top-front); }

.svg-screen-top-bg {
  fill: var(--svg-screen-top-bg); }

.svg-screen-top-back {
  fill: var(--svg-screen-top-back); }

.svg-screen-top-logo {
  fill: var(--svg-screen-top-logo); }
  .svg-screen-top-logo-el {
    fill: var(--svg-screen-top-logo-el); }

.svg-screen-leg-back {
  fill: var(--svg-screen-leg-back); }

.svg-screen-leg-front {
  fill: var(--svg-screen-leg-front); }

.svg-smartphone-border {
  fill: var(--svg-smartphone-border); }

.svg-smartphone-front {
  fill: var(--svg-smartphone-front); }

.svg-smartphone-screen {
  fill: var(--svg-smartphone-screen); }

.svg-smartphone-icon {
  fill: var(--svg-smartphone-icon); }
  .svg-smartphone-icon-bg {
    fill: var(--svg-smartphone-icon-bg); }

.svg-tablet-back {
  fill: var(--svg-tablet-back); }

.svg-tablet-front {
  fill: var(--svg-tablet-front); }

.svg-tablet-screen {
  fill: var(--svg-tablet-screen); }

.svg-browser-body {
  fill: var(--svg-browser-body); }

.svg-browser-top {
  fill: var(--svg-browser-top); }
  .svg-browser-top-1 {
    fill: var(--svg-browser-top-1); }

.svg-browser-text {
  fill: var(--svg-browser-text); }

.svg-browser-banner {
  fill: var(--svg-browser-banner); }

.svg-border-inner-front {
  fill: var(--svg-border-inner-front); }

.svg-border-inner-back {
  fill: var(--svg-border-inner-back); }

.svg-border-top-front {
  fill: var(--svg-border-top-front); }

.svg-border-top-back {
  fill: var(--svg-border-top-back); }

.svg-border-bottom {
  fill: var(--svg-border-bottom); }

.svg-cpanelseo-box-front {
  fill: var(--svg-cpanelseo-box-front); }

.svg-cpanelseo-box-top {
  fill: var(--svg-cpanelseo-box-top); }

.svg-cpanelseo-box-right {
  fill: var(--svg-cpanelseo-box-right); }

.svg-cpanelseo-box-one {
  fill: var(--svg-cpanelseo-box-one); }

.svg-konfetti-small {
  fill: var(--svg-konfetti-small); }

.svg-konfetti-normal {
  stroke: var(--svg-konfetti-normal); }

.svg-laptop-bottom-back {
  fill: var(--svg-laptop-bottom-back); }

.svg-laptop-bottom-top {
  fill: var(--svg-laptop-bottom-top); }

.svg-laptop-touchpad-inside {
  fill: var(--svg-laptop-touchpad-inside);
  opacity: 0.48;
  enable-background: new; }

.svg-laptop-touchpad-outside {
  fill: var(--svg-laptop-touchpad-outside);
  opacity: 0.48;
  enable-background: new; }

.svg-laptop-screen {
  fill: var(--svg-laptop-screen); }
  .svg-laptop-screen-logo {
    fill: var(--svg-laptop-screen-logo); }
  .svg-laptop-screen-back {
    fill: var(--svg-laptop-screen-back); }
  .svg-laptop-screen-front {
    fill: var(--svg-laptop-screen-front); }

.svg-keyboard-keys-bottom {
  fill: var(--svg-keyboard-keys-bottom); }

.svg-keyboard-keys-top {
  fill: var(--svg-keyboard-keys-top); }

.svg-keyboard-body-top {
  fill: var(--svg-keyboard-body-top); }

.svg-keyboard-body-bottom {
  fill: var(--svg-keyboard-body-bottom); }

.svg-cup-flower .svg-cup-body {
  fill: var(--svg-cup-body); }

.svg-cup-flower .svg-cup-top {
  fill: var(--svg-cup-top); }

.svg-cup-flower .svg-cup-inside {
  fill: var(--svg-cup-inside); }

.svg-cup-flower .svg-flower-leaf {
  fill: var(--svg-flower-leaf); }
  .svg-cup-flower .svg-flower-leaf-1 {
    fill: var(--svg-flower-leaf-1); }
  .svg-cup-flower .svg-flower-leaf-2 {
    fill: var(--svg-flower-leaf-2); }

.svg-envelope-top {
  fill: var(--svg-envelope-top); }

.svg-envelope-top-open {
  fill: var(--svg-envelope-top-open); }

.svg-envelope-inside {
  fill: var(--svg-envelope-inside); }

.svg-envelope-right-side-open {
  fill: var(--svg-envelope-right-side-open); }

.svg-envelope-left-side-open {
  fill: var(--svg-envelope-left-side-open); }

.svg-envelope-split-open {
  fill: var(--svg-envelope-split-open); }

.svg-envelope-split {
  fill: var(--svg-envelope-split); }

.svg-envelope-right-side {
  fill: var(--svg-envelope-right-side); }

.svg-envelope-left-side {
  fill: var(--svg-envelope-left-side); }

.svg-colors-bottom {
  fill: var(--svg-weebly-colors-bottom); }

.svg-colors-top {
  fill: var(--svg-weebly-colors-top); }
  .svg-colors-top-1 {
    fill: var(--svg-weebly-colors-top-1); }
  .svg-colors-top-2 {
    fill: var(--svg-weebly-colors-top-2); }
  .svg-colors-top-3 {
    fill: var(--svg-weebly-colors-top-3); }

/* Website Builder (Weebly) */
.svg-weebly .svg-cup-body {
  fill: var(--svg-weebly-cup-body); }

.svg-weebly .svg-cup-top {
  fill: var(--svg-weebly-cup-top); }

.svg-weebly .svg-cup-inside {
  fill: var(--svg-weebly-cup-inside); }

.svg-weebly .svg-left-elements {
  fill: var(--svg-weebly-left-elements); }
  .svg-weebly .svg-left-elements-bottom {
    fill: var(--svg-weebly-left-elements-bottom); }

.svg-weebly .svg-left-body {
  fill: var(--svg-weebly-left-body); }

.svg-spamexperts .svg-browser-text-left {
  fill: var(--svg-spamexperts-browser-text-left); }

.svg-spamexperts .svg-browser-text-right {
  fill: var(--svg-spamexperts-browser-text-right); }

.svg-spamexperts .svg-browser-user {
  fill: var(--svg-spamexperts-browser-user); }

.svg-spamexperts .svg-browser-user-bg {
  fill: var(--svg-spamexperts-browser-user-bg); }

.svg-spamexperts .svg-browser-banner {
  fill: var(--svg-spamexperts-browser-banner); }

.svg-symantec .svg-left-body {
  fill: var(--svg-symantec-left-body); }

.svg-symantec .svg-left-elements {
  fill: var(--svg-symantec-left-elements); }

.svg-symantec .svg-medal-ribbon {
  fill: var(--svg-symantec-medal-ribbon); }

.svg-symantec .svg-medal-inside {
  fill: var(--svg-symantec-medal-inside); }
  .svg-symantec .svg-medal-inside-element {
    fill: var(--svg-symantec-medal-inside-element); }

.svg-symantec .svg-medal-round-back {
  fill: var(--svg-symantec-medal-round-back); }

.svg-symantec .svg-medal-round-front {
  fill: var(--svg-symantec-medal-round-front); }

.svg-symantec .svg-padlock-right-side {
  fill: var(--svg-symantec-padlock-right-side); }
  .svg-symantec .svg-padlock-right-side-element {
    fill: var(--svg-symantec-padlock-right-side-element); }

.svg-symantec .svg-padlock-top {
  fill: var(--svg-symantec-padlock-top); }
  .svg-symantec .svg-padlock-top-round-element {
    fill: var(--svg-symantec-padlock-top-round-element); }
  .svg-symantec .svg-padlock-top-element {
    fill: var(--svg-symantec-padlock-top-element); }
    .svg-symantec .svg-padlock-top-element-1 {
      fill: none;
      stroke: var(--svg-symantec-padlock-top-element-1);
      stroke-width: 18;
      stroke-linecap: round;
      stroke-linejoin: round;
      stroke-miterlimit: 10; }

.svg-symantec .svg-padlock-front {
  fill: var(--svg-symantec-padlock-front); }

.svg-symantec .svg-padlock-lock {
  fill: var(--svg-symantec-padlock-lock); }
  .svg-symantec .svg-padlock-lock-inside {
    fill: var(--svg-symantec-padlock-lock-inside); }

.svg-symantec .svg-key-bottom {
  fill: var(--svg-symantec-key-bottom); }

.svg-symantec .svg-key-top {
  fill: var(--svg-symantec-key-top); }
  .svg-symantec .svg-key-top-1 {
    fill: var(--svg-symantec-key-top-1); }

.svg-codeguard .svg-photo-frame {
  fill: var(--svg-codeguard-photo-frame); }

.svg-codeguard .svg-photo-bg {
  fill: var(--svg-codeguard-photo-bg); }

.svg-codeguard .svg-photo-logo {
  fill: var(--svg-codeguard-photo-logo); }

.svg-codeguard .svg-photo-front-corners {
  fill: var(--svg-codeguard-photo-front-corners); }

.svg-codeguard .svg-photo-back {
  fill: var(--svg-codeguard-photo-back); }

.svg-codeguard .svg-photo-browser-body {
  fill: var(--svg-codeguard-photo-browser-body); }

.svg-codeguard .svg-photo-browser-top {
  fill: var(--svg-codeguard-photo-browser-top); }
  .svg-codeguard .svg-photo-browser-top-1 {
    fill: var(--svg-codeguard-photo-browser-top-1); }

.svg-codeguard .svg-photo-browser-text {
  fill: var(--svg-codeguard-photo-browser-text); }

.svg-codeguard .svg-list-bg {
  fill: var(--svg-codeguard-list-bg); }

.svg-codeguard .svg-list-item {
  fill: var(--svg-codeguard-list-item); }
  .svg-codeguard .svg-list-item-bottom {
    fill: var(--svg-codeguard-list-item-bottom); }

.svg-codeguard .svg-folder-malware-bg {
  fill: var(--svg-codeguard-folder-malware-bg); }

.svg-codeguard .svg-folder-logo {
  fill: var(--svg-codeguard-folder-logo); }

.svg-codeguard .svg-folder-backup-top {
  fill: var(--svg-codeguard-folder-backup-top); }
  .svg-codeguard .svg-folder-backup-top-border {
    fill: var(--svg-codeguard-folder-backup-top-border); }

.svg-codeguard .svg-folder-backup-bg {
  fill: var(--svg-codeguard-folder-backup-bg); }

.svg-codeguard .svg-folder-backup-logo {
  fill: var(--svg-codeguard-folder-backup-logo); }

.svg-marketgoo .svg-phone-border {
  fill: var(--svg-marketgoo-phone-border); }

.svg-marketgoo .svg-phone-bg {
  fill: var(--svg-marketgoo-phone-bg); }

.svg-marketgoo .svg-phone-button {
  fill: var(--svg-marketgoo-phone-button); }

.svg-marketgoo .svg-phone-elements {
  fill: var(--svg-marketgoo-phone-elements); }

.svg-marketgoo .svg-graphs-bg {
  fill: var(--svg-marketgoo-graphs-bg); }

.svg-marketgoo .svg-graphs-text {
  fill: var(--svg-marketgoo-graphs-text); }
  .svg-marketgoo .svg-graphs-text-bg {
    fill: var(--svg-marketgoo-graphs-text-bg); }

.svg-marketgoo .svg-graphs-elements {
  fill: var(--svg-marketgoo-graphs-elements); }
  .svg-marketgoo .svg-graphs-elements-1 {
    fill: var(--svg-marketgoo-graphs-elements-1); }
  .svg-marketgoo .svg-graphs-elements-2 {
    fill: var(--svg-marketgoo-graphs-elements-2); }

.svg-marketgoo .svg-bar-top {
  fill: var(--svg-marketgoo-bar-top); }

.svg-marketgoo .svg-bar-front {
  fill: var(--svg-marketgoo-bar-front); }

.svg-marketgoo .svg-bar-side {
  fill: var(--svg-marketgoo-bar-side); }

.svg-marketgoo .svg-search-borders {
  fill: var(--svg-marketgoo-search-borders); }

.svg-marketgoo .svg-search-top {
  fill: var(--svg-marketgoo-search-top); }

.svg-marketgoo .svg-search-bg {
  fill: var(--svg-marketgoo-search-bg); }

.svg-marketgoo .svg-search-text {
  fill: var(--svg-marketgoo-search-text); }

.svg-marketgoo .svg-browser-search-bg {
  fill: var(--svg-marketgoo-browser-search-bg); }

.svg-marketgoo .svg-browser-search-icon {
  fill: var(--svg-marketgoo-browser-search-icon); }
  .svg-marketgoo .svg-browser-search-icon-bg {
    fill: var(--svg-marketgoo-browser-search-icon-bg); }

.svg-marketgoo .svg-browser-content-bottom .content-bottom-right {
  fill: var(--svg-marketgoo-content-bottom-right); }

.svg-marketgoo .svg-browser-content-bottom .content-bottom-circle {
  fill: var(--svg-marketgoo-content-bottom-circle); }

.svg-marketgoo .svg-browser-content-bottom .content-bottom-num {
  fill: var(--svg-marketgoo-content-bottom-num); }

.svg-marketgoo .svg-browser-content-top .content-top-right {
  fill: var(--svg-marketgoo-content-top-right); }

.svg-marketgoo .svg-browser-content-top .content-top-circle {
  fill: var(--svg-marketgoo-content-top-circle); }

.svg-marketgoo .svg-browser-content-top .content-top-num {
  fill: var(--svg-marketgoo-content-top-num); }

.svg-sitelockvpn .svg-left-elements {
  fill: var(--svg-sitelockvpn-left-elements); }
  .svg-sitelockvpn .svg-left-elements-body {
    fill: var(--svg-sitelockvpn-left-elements-body); }
    .svg-sitelockvpn .svg-left-elements-body-1 {
      fill: var(--svg-sitelockvpn-left-elements-body-1); }
  .svg-sitelockvpn .svg-left-elements-bg {
    fill: var(--svg-sitelockvpn-left-elements-bg); }
  .svg-sitelockvpn .svg-left-elements-text {
    fill: var(--svg-sitelockvpn-left-elements-text); }

.svg-sitelockvpn .svg-left-time {
  fill: var(--svg-sitelockvpn-left-time); }

.svg-sitelockvpn .svg-left-circle {
  fill: var(--svg-sitelockvpn-left-circle); }
  .svg-sitelockvpn .svg-left-circle-icon {
    fill: var(--svg-sitelockvpn-left-circle-icon); }

.svg-sitelockvpn .svg-circle-bottom {
  fill: var(--svg-sitelockvpn-circle-bottom); }

.svg-sitelockvpn .svg-circle-front {
  fill: var(--svg-sitelockvpn-circle-front); }

.svg-sitelockvpn .svg-circle-top {
  fill: var(--svg-sitelockvpn-circle-top); }
  .svg-sitelockvpn .svg-circle-top-border {
    fill: var(--svg-sitelockvpn-circle-top-border); }
  .svg-sitelockvpn .svg-circle-top-text {
    fill: var(--svg-sitelockvpn-circle-top-text); }

.svg-sitelockvpn .svg-browser-map {
  fill: var(--svg-sitelockvpn-browser-map); }
  .svg-sitelockvpn .svg-browser-map-marker {
    fill: var(--svg-sitelockvpn-browser-map-marker); }
    .svg-sitelockvpn .svg-browser-map-marker-bg {
      fill: var(--svg-sitelockvpn-browser-map-marker-bg); }

.svg-sitelockvpn .svg-browser-marker {
  fill: var(--svg-sitelockvpn-browser-marker); }

.svg-sitelock .svg-left-elements {
  fill: var(--svg-sitelock-left-elements); }
  .svg-sitelock .svg-left-elements-1 {
    fill: var(--svg-sitelock-left-elements-1); }
  .svg-sitelock .svg-left-elements-body {
    fill: var(--svg-sitelock-left-elements-body); }

.svg-sitelock .svg-code-bg {
  fill: var(--svg-sitelock-code-bg); }

.svg-sitelock .svg-code-text {
  fill: var(--svg-sitelock-code-text); }

.svg-sitelock .svg-shield-back {
  fill: var(--svg-sitelock-shield-back);
  opacity: 0.48;
  enable-background: new; }
  .svg-sitelock .svg-shield-back-1 {
    fill: var(--svg-sitelock-shield-back-1);
    opacity: 0.48;
    enable-background: new; }

.svg-sitelock .svg-shield-right-side {
  fill: var(--svg-sitelock-shield-right-side); }

.svg-sitelock .svg-shield-top {
  fill: var(--svg-sitelock-shield-top); }

.svg-sitelock .svg-shield-front {
  fill: var(--svg-sitelock-shield-front); }

.svg-sitelock .svg-shield-logo {
  fill: var(--svg-sitelock-shield-logo); }

.svg-sitelock .svg-search-bottom-element {
  fill: var(--svg-sitelock-search-bottom-element); }
  .svg-sitelock .svg-search-bottom-element-1 {
    fill: var(--svg-sitelock-search-bottom-element-1); }

.svg-sitelock .svg-search-borders {
  fill: var(--svg-sitelock-search-borders); }
  .svg-sitelock .svg-search-borders-inside {
    fill: var(--svg-sitelock-search-borders-inside); }

.svg-sitelock .svg-search-icon {
  fill: var(--svg-sitelock-search-icon); }

.svg-sitelock .svg-search-bg {
  fill: var(--svg-sitelock-search-bg); }

.svg-sitelock .svg-search-top {
  fill: var(--svg-sitelock-search-top); }

.svg-sitelock .svg-browser-elements {
  fill: var(--svg-sitelock-browser-elements); }

.svg-sitelock .svg-browser-avatar {
  fill: var(--svg-sitelock-browser-avatar); }
  .svg-sitelock .svg-browser-avatar-bg {
    fill: var(--svg-sitelock-browser-avatar-bg); }

.svg-ox .svg-browser-text-right {
  fill: var(--svg-ox-browser-text-right); }

.svg-ox .svg-browser-text-left {
  fill: var(--svg-ox-browser-text-left); }

.svg-ox .svg-browser-banner-right {
  fill: var(--svg-ox-browser-banner-right); }

.svg-ox .svg-browser-banner-left {
  fill: var(--svg-ox-browser-banner-left); }

.svg-ox .svg-browser-user {
  fill: var(--svg-ox-browser-user); }
  .svg-ox .svg-browser-user-bg {
    fill: var(--svg-ox-browser-user-bg); }

.svg-sitebuilder .svg-banner-bordered-element {
  stroke: var(--svg-sitebuilder-banner-bordered-element); }

.svg-sitebuilder .svg-banner-body {
  fill: var(--svg-sitebuilder-banner-body); }

.svg-sitebuilder .svg-banner-body-element {
  fill: var(--svg-sitebuilder-banner-body-element); }
  .svg-sitebuilder .svg-banner-body-element-1 {
    fill: var(--svg-sitebuilder-banner-body-element-1); }

.svg-sitebuilder .svg-smartphone-bordered-element {
  fill: var(--svg-sitebuilder-phone-bordered-element); }

.svg-sitebuilder .svg-smartphone-element {
  stroke: var(--svg-sitebuilder-phone-element); }

.svg-sitebuilder .svg-tablet-element {
  fill: var(--svg-sitebuilder-tablet-element); }
  .svg-sitebuilder .svg-tablet-element-1 {
    stroke: var(--svg-sitebuilder-tablet-element-1); }
  .svg-sitebuilder .svg-tablet-element-2 {
    fill: var(--svg-sitebuilder-tablet-element-2); }
  .svg-sitebuilder .svg-tablet-element-3 {
    stroke: var(--svg-sitebuilder-tablet-element-1); }

.svg-sitebuilder .svg-notepad-back {
  fill: var(--svg-sitebuilder-notepad-back); }

.svg-sitebuilder .svg-notepad-border {
  fill: var(--svg-sitebuilder-notepad-border); }

.svg-sitebuilder .svg-notepad-front {
  fill: var(--svg-sitebuilder-notepad-front); }

.svg-sitebuilder .svg-notepad-text {
  stroke: var(--svg-sitebuilder-notepad-text); }

.svg-sitebuilder .svg-notepad .svg-hole {
  fill: var(--svg-sitebuilder-hole); }

.svg-sitebuilder .svg-pen-element {
  fill: var(--svg-sitebuilder-pen-element); }
  .svg-sitebuilder .svg-pen-element-dark {
    fill: var(--svg-sitebuilder-pen-element-dark); }
  .svg-sitebuilder .svg-pen-element-1 {
    fill: var(--svg-sitebuilder-pen-element-1); }

.svg-sitebuilder .svg-pencil-element {
  fill: var(--svg-sitebuilder-pencil-element); }
  .svg-sitebuilder .svg-pencil-element-dark {
    fill: var(--svg-sitebuilder-pencil-element-dark); }
  .svg-sitebuilder .svg-pencil-element-1 {
    fill: var(--svg-sitebuilder-pencil-element-1); }

.svg-sitebuilder .svg-screen-element {
  fill: var(--svg-sitebuilder-screen-element); }
  .svg-sitebuilder .svg-screen-element-1 {
    stroke: var(--svg-sitebuilder-screen-element); }

.svg-sitebuilder .svg-screen-bordered-element {
  stroke: var(--svg-sitebuilder-screen-element); }

.svg-sitebuilder .svg-right-body {
  fill: var(--svg-sitebuilder-right-body); }

.svg-sitebuilder .svg-right-elements {
  fill: var(--svg-sitebuilder-right-elements); }
  .svg-sitebuilder .svg-right-elements-1 {
    fill: var(--svg-sitebuilder-right-elements-1); }

.svg-icon-dashed,
.svg-icon .dashed {
  stroke-dasharray: 3.84 7.69; }
  .svg-icon-dashed-1,
  .svg-icon .dashed-1 {
    stroke-dasharray: 4 8; }
  .svg-icon-dashed-2,
  .svg-icon .dashed-2 {
    stroke-dasharray: 7.71 9.64; }
  .svg-icon-dashed-3,
  .svg-icon .dashed-3 {
    stroke-dasharray: 7.5 9.37; }
  .svg-icon-dashed-4,
  .svg-icon .dashed-4 {
    stroke-dasharray: 6.6 8.25; }
  .svg-icon-dashed-5,
  .svg-icon .dashed-5 {
    stroke-dasharray: 7.61 9.51; }
  .svg-icon-dashed-6,
  .svg-icon .dashed-6 {
    stroke-dasharray: 7.55 9.43; }
  .svg-icon-dashed-7,
  .svg-icon .dashed-7 {
    stroke-dasharray: 6.76 8.45; }
  .svg-icon-dashed-8,
  .svg-icon .dashed-8 {
    stroke-dasharray: 7.63 9.54; }
  .svg-icon-dashed-9,
  .svg-icon .dashed-9 {
    stroke-dasharray: 6.52 8.15; }
  .svg-icon-dashed-10,
  .svg-icon .dashed-10 {
    stroke-dasharray: 7.79 9.74; }
  .svg-icon-dashed-11,
  .svg-icon .dashed-11 {
    stroke-dasharray: 8.39 10.49; }
  .svg-icon-dashed-12,
  .svg-icon .dashed-12 {
    stroke-dasharray: 7.83 9.78; }
  .svg-icon-dashed-13,
  .svg-icon .dashed-13 {
    stroke-dasharray: 8 10; }
  .svg-icon-dashed-14,
  .svg-icon .dashed-14 {
    stroke-dasharray: 8 8; }
  .svg-icon-dashed-15,
  .svg-icon .dashed-15 {
    stroke-dasharray: 6.42 6.42; }
  .svg-icon-dashed-16,
  .svg-icon .dashed-16 {
    stroke-dasharray: 7.66 9.58; }
  .svg-icon-dashed-17,
  .svg-icon .dashed-17 {
    stroke-dasharray: 7.64 9.55; }
  .svg-icon-dashed-18,
  .svg-icon .dashed-18 {
    stroke-dasharray: 6.56 8.19; }
  .svg-icon-dashed-19,
  .svg-icon .dashed-19 {
    stroke-dasharray: 7.6 9.5; }
  .svg-icon-dashed-20,
  .svg-icon .dashed-20 {
    stroke-dasharray: 6.57 8.21; }
  .svg-icon-dashed-21,
  .svg-icon .dashed-21 {
    stroke-dasharray: 4.27 8.53; }
  .svg-icon-dashed-22,
  .svg-icon .dashed-22 {
    stroke-dasharray: 3.7 7.4; }
  .svg-icon-dashed-23,
  .svg-icon .dashed-23 {
    stroke-dasharray: 7.67 9.59; }
  .svg-icon-dashed-24,
  .svg-icon .dashed-24 {
    stroke-dasharray: 6.5 8.13; }
  .svg-icon-dashed-25,
  .svg-icon .dashed-25 {
    stroke-dasharray: 7.58 9.48; }
  .svg-icon-dashed-26,
  .svg-icon .dashed-26 {
    stroke-dasharray: 6.48 8.1; }
  .svg-icon-dashed-27,
  .svg-icon .dashed-27 {
    stroke-dasharray: 4 6; }
  .svg-icon-dashed-28,
  .svg-icon .dashed-28 {
    stroke-dasharray: 9.09,11.36; }
  .svg-icon-dashed-29,
  .svg-icon .dashed-29 {
    stroke-dasharray: 23.25,29.19; }
  .svg-icon-dashed-30,
  .svg-icon .dashed-30 {
    stroke-dasharray: 23.35,29.19; }
  .svg-icon-dashed-31,
  .svg-icon .dashed-31 {
    stroke-dasharray: 23.25,29.07; }
  .svg-icon-dashed-32,
  .svg-icon .dashed-32 {
    stroke-dasharray: 9.09,11.37; }
  .svg-icon-dashed-33,
  .svg-icon .dashed-33 {
    stroke-dasharray: 10.93,13.66; }
  .svg-icon-dashed-34,
  .svg-icon .dashed-34 {
    stroke-dasharray: 20.82,26.02; }
  .svg-icon-dashed-34,
  .svg-icon .dashed-34 {
    stroke-dasharray: 20.88,26.1; }
  .svg-icon-dashed-35,
  .svg-icon .dashed-35 {
    stroke-dasharray: 13.54,16.93; }
  .svg-icon-dashed-36,
  .svg-icon .dashed-36 {
    stroke-dasharray: 21.14,26.42; }
  .svg-icon-dashed-37,
  .svg-icon .dashed-37 {
    stroke-dasharray: 21.04,26.31; }
  .svg-icon-dashed-38,
  .svg-icon .dashed-38 {
    stroke-dasharray: 13.42,16.78; }
  .svg-icon-dashed-39,
  .svg-icon .dashed-39 {
    stroke-dasharray: 7.96,9.94; }

.svg-banner-line {
  display: none;
  fill-rule: evenodd;
  clip-rule: evenodd;
  fill: none;
  stroke: var(--brand-primary);
  stroke-width: 2;
  stroke-miterlimit: 10; }

.svg-banner-shape-left {
  fill: var(--svg-banner-shape-left);
  fill-rule: evenodd;
  clip-rule: evenodd; }

.svg-banner-shape-right {
  fill: var(--svg-banner-shape-right);
  fill-rule: evenodd;
  clip-rule: evenodd; }

.svg-browser-element-1 {
  fill: var(--svg-browser-text); }

.svg-browser-element-2 {
  fill: var(--svg-browser-banner); }

.svg-cookie-icon .svg-cookie-icon-top {
  fill: var(--svg-cookie-icon-top);
  stroke: var(--svg-cookie-icon-top); }

.svg-cookie-icon .svg-cookie-icon-bottom {
  fill: var(--svg-cookie-icon-bottom);
  stroke: var(--svg-cookie-icon-bottom); }

.svg-cookie-icon .svg-cookie-icon-white {
  fill: var(--svg-cookie-icon-white); }

/*
*******************************************
Email Verification - General
*******************************************
*/
.user-validation.alert,
.email-verification.alert {
  border-top: 0;
  border-left: 0 !important;
  border-right: 0;
  margin: 0;
  border-radius: 0px; }
  .user-validation.alert .container,
  .email-verification.alert .container {
    display: flex;
    align-items: center; }
  .user-validation.alert .alert-body,
  .email-verification.alert .alert-body {
    justify-content: space-between;
    display: flex;
    align-items: center;
    width: 100%;
    margin-right: var(--ui-block-padding-base); }
    .user-validation.alert .alert-body i,
    .email-verification.alert .alert-body i {
      padding-right: var(--spacing-1x); }
  .user-validation.alert .text,
  .email-verification.alert .text {
    display: block;
    padding: 6px 0; }
  .user-validation.alert .alert-actions,
  .email-verification.alert .alert-actions {
    padding-left: 0px; }

/*
*******************************************
Email Verification - Responsive
*******************************************
*/
@media (max-width: 991.98px) {
  .lagom-layout-left-wide .email-verification,
  .lagom-layout-left .email-verification {
    margin-left: 0;
    margin-right: 0; } }

@media (max-width: 767.98px) {
  .email-verification .container {
    flex: 1; }
  .email-verification .alert-body {
    flex-direction: column;
    align-items: flex-start; }
    .email-verification .alert-body .btn {
      margin-top: var(--ui-block-spacing-xs);
      width: 100%; }
  .email-verification .alert-actions {
    align-self: flex-start;
    margin-top: 4px; } }

.twofa-module {
  display: flex;
  align-items: center;
  border: var(--ui-block-border);
  border-radius: var(--border-radius-base);
  padding: var(--ui-block-padding-base);
  margin-bottom: var(--ui-block-spacing-lg);
  cursor: pointer; }
  .twofa-module:hover, .twofa-module:focus {
    border-color: var(--gray-lighter-3); }
  .twofa-module.active {
    border-color: var(--brand-primary); }
  .twofa-module .col-logo {
    width: 64px;
    flex-shrink: 0; }
    .twofa-module .col-logo > img {
      max-height: 48px;
      max-width: 100%; }
  .twofa-module > * + * {
    margin-left: var(--ui-block-padding-base); }

.theme-switcher {
  position: fixed;
  z-index: 1002;
  top: 0;
  bottom: 0;
  left: calc(100%);
  width: 923px;
  transition: all 0.4s; }
  .theme-switcher h1 {
    color: #393d45; }
  .theme-switcher h2 {
    color: #393d45;
    font-size: 22px;
    font-weight: 400; }
  .theme-switcher-open {
    overflow-y: hidden; }
    .theme-switcher-open .theme-switcher {
      transform: translateX(-100%); }
      .theme-switcher-open .theme-switcher:before {
        background: none; }
      .theme-switcher-open .theme-switcher-button .btn {
        background: #fff;
        color: var(--text-primary-color);
        border: #fff; }
  .theme-switcher-header {
    margin-bottom: 45px;
    padding-top: 48px;
    display: flex;
    align-items: center; }
    .theme-switcher-header h1 {
      margin-bottom: 0; }
    .theme-switcher-header i {
      margin-left: var(--ui-block-padding-base);
      color: var(--ui-icon-color); }
  .theme-switcher-body {
    padding: 0 56px;
    flex: 1;
    overflow: auto; }
    .theme-switcher-body .section:last-of-type {
      margin-bottom: 30px; }
  .theme-switcher-button {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -52px;
    width: 52px;
    transition: all 0.2s;
    border-right: 1px solid #fff; }
    .theme-switcher-button .btn {
      position: absolute;
      top: 64px;
      left: 0;
      width: 132px;
      height: 55px;
      border-radius: 0; }
      .theme-switcher-button .btn i {
        margin-right: 18px; }
  .theme-switcher-content {
    position: relative;
    z-index: 3;
    height: 100vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    padding-bottom: 85px; }
    .theme-switcher-content .col-20 {
      width: 20%; }
  .theme-switcher-footer {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    width: 950px;
    padding: 18px 56px 18px;
    border-top: 1px solid var(--gray-lighter-4);
    z-index: 10;
    background: #fff; }
    .theme-switcher-footer .btn + .btn {
      margin-left: 13px; }
    .theme-switcher-footer .btn-default {
      color: #393d45;
      background-color: #fff;
      border-color: #dcdee2; }
  .theme-switcher-box {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #cae3fc;
    border-radius: var(--border-radius-base);
    transition: border var(--transition-base);
    overflow: hidden;
    position: relative; }
    .theme-switcher-box:after {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(255, 255, 255, 0.7);
      content: '';
      opacity: 0;
      transition: var(--transition-base);
      z-index: 1; }
    .theme-switcher-box:before {
      z-index: 2;
      font-family: var(--font-family-icons-small);
      content: "\e911";
      display: flex;
      justify-content: center;
      align-items: center;
      opacity: 0;
      position: absolute;
      top: 50%;
      left: 50%;
      width: 24px;
      height: 24px;
      border-radius: 100%;
      background: var(--brand-primary);
      color: #fff;
      transform: translateY(20px);
      transition: var(--transition-base);
      margin-top: -12px;
      margin-left: -12px; }
    .theme-switcher-box > img {
      max-width: 100%; }
    .theme-switcher-box.active, .theme-switcher-box:hover {
      border-color: var(--brand-primary); }
    .theme-switcher-box.active:after {
      opacity: 1; }
    .theme-switcher-box.active:before {
      opacity: 1;
      transform: translateY(0); }
    .theme-switcher-box.active + h4 {
      color: var(--text-primary-color); }
    .theme-switcher-box + h4 {
      display: flex;
      align-items: center;
      font-size: var(--font-size-md);
      margin-top: var(--ui-block-spacing-xs);
      color: #393d45; }
      .theme-switcher-box + h4 .label {
        margin-left: var(--spacing-1x);
        font-size: 11px; }
  .theme-switcher-soon {
    position: relative;
    border: 1px dashed #cae3fc;
    border-radius: var(--border-radius-base); }
    .theme-switcher-soon img {
      max-width: 100%;
      opacity: 0; }
    .theme-switcher-soon span {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: var(--ui-block-padding-base);
      color: #393d45; }

body:not(.theme-switcher-open) .theme-switcher:hover {
  cursor: pointer; }
  body:not(.theme-switcher-open) .theme-switcher:hover .theme-switcher-button {
    border-right: 8px solid var(--brand-primary); }
    body:not(.theme-switcher-open) .theme-switcher:hover .theme-switcher-button .btn {
      left: -60px; }

@media (min-width: 992px) and (max-width: 1319.98px) {
  .theme-switcher {
    width: 885px; } }

@media (min-width: 768px) and (max-width: 991.98px) {
  .theme-switcher {
    width: 680px; }
    .theme-switcher-header, .theme-switcher-footer, .theme-switcher-body {
      padding-left: 60px;
      padding-right: 60px; } }

@media (max-width: 767.98px) {
  .theme-switcher {
    display: none; }
    .theme-switcher-open .overlay {
      display: none !important; } }

/*
*******************************************
Feaute - General
*******************************************
*/
.feature {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: var(--feature-margin-bottom); }
  .feature-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: var(--feature-icon-margin-bottom); }
    .feature-icon > i {
      color: var(--text-primary-color);
      font-size: 24px; }
  .feature-title {
    font-size: var(--feature-title-font-size);
    line-height: var(--feature-title-line-height);
    font-weight: var(--feature-title-font-weight);
    margin-bottom: var(--ui-block-spacing-sm); }
    .feature-title:last-child {
      margin: 0; }
  .feature-desc {
    margin: 0;
    font-size: var(--feature-desc-font-size);
    line-height: var(--feature-desc-line-height);
    font-weight: var(--feature-desc-font-weight); }
    .feature-desc + * {
      margin-top: var(--ui-block-spacing-sm); }
  .feature-content > *:last-child {
    margin-bottom: 0; }
  .feature-number {
    display: block;
    margin-bottom: var(--feature-icon-margin-bottom);
    color: var(--text-primary-color);
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-light); }
    .feature-number-circled {
      display: flex;
      align-items: center;
      justify-content: center;
      border: 2px solid var(--text-primary-color);
      font-size: var(--font-size-h4);
      width: 56px;
      height: 56px;
      border-radius: 100%; }
  .feature-left {
    flex-direction: row;
    height: auto;
    text-align: left; }
    .feature-left .feature-icon {
      margin-bottom: 0 !important;
      margin-right: var(--spacing-3x); }

.lagom-default .site .section-steps .feature-boxed {
  background: var(--ui-block-bg); }

/*
*******************************************
Feaute - Boxed
*******************************************
*/
.feature-boxed,
.feature-bordered {
  border-radius: var(--feature-boxed-border-radius);
  padding: var(--feature-boxed-padding); }

.feature-boxed {
  background: var(--feature-boxed-bg);
  box-shadow: var(--feature-boxed-shadow); }

.feature-bordered {
  border: var(--feature-boxed-border); }

/*
*******************************************
Feaute - Sizes
*******************************************
*/
.feature-sm .feature-title {
  font-size: var(--feature-sm-title-font-size);
  line-height: var(--feature-sm-title-line-height);
  font-weight: var(--feature-sm-title-font-weight); }

.feature-sm .feature-icon .svg-icon {
  height: var(--feature-sm-svg-icon-size); }

.feature-sm.feature-boxed, .feature-sm.feature-bordered {
  padding: var(--feature-sm-boxed-padding); }
  .feature-sm.feature-boxed .feature-icon, .feature-sm.feature-bordered .feature-icon {
    margin-bottom: var(--ui-block-spacing-sm); }

.feature-sm.feature-left .feature-icon {
  margin-right: var(--spacing-2x); }

.feature-lg.feature-boxed, .feature-lg.feature-bordered {
  padding: var(--feature-boxed-padding); }

.feature-lg .feature-icon {
  margin-bottom: var(--feature-lg-icon-margin-bottom); }

.feature-lg .feature-title {
  font-size: var(--feature-lg-title-font-size);
  line-height: var(--feature-lg-title-line-height);
  font-weight: var(--feature-lg-title-font-weight); }

.feature-lg .feature-desc {
  font-size: var(--feature-lg-desc-font-size);
  line-height: var(--feature-lg-desc-line-height);
  font-weight: var(--feature-lg-desc-font-weight); }

/*
*******************************************
Feaute - Row
*******************************************
*/
.features-boxes {
  margin-bottom: calc(-1 * var(--ui-block-spacing-lg)) !important; }
  .features-boxes .feature {
    margin-bottom: var(--ui-block-spacing-lg); }

.features:not(.features-boxes) {
  margin-bottom: calc(-1 * var(--feature-row-margin-bottom)) !important; }
  .features:not(.features-boxes) .feature {
    margin-bottom: var(--feature-row-margin-bottom); }

.features-steps {
  margin: 0 -32px; }
  .features-steps [class*="col"] {
    padding: 0 32px; }
    .features-steps [class*="col"]:not(:last-child) .feature:after {
      font-family: var(--font-family-icons-medium);
      content: '\e91e';
      position: absolute;
      right: -40px;
      top: 50%;
      margin-top: -12px;
      color: var(--gray-icons); }

@media (max-width: 479.98px) {
  .features .mob-feature-left {
    flex-direction: row;
    text-align: left; }
    .features .mob-feature-left .feature-icon {
      margin-bottom: 0;
      margin-right: var(--feature-icon-margin-bottom); } }
  @media screen and (max-width: 479.98px) and (-ms-high-contrast: active), (max-width: 479.98px) and (-ms-high-contrast: none) {
    .features .mob-feature-left .feature-title {
      text-align: left; } }

@media (max-width: 479.98px) {
    .features .mob-feature-left .feature-bordered {
      flex-direction: column;
      margin-top: 0px; }
    .features .mob-feature-left .feature-flex .feature-icon {
      margin-left: 0px; }
    .features .mob-feature-left .feature-flex .feature-content {
      text-align: center;
      margin-top: var(--ui-block-spacing-xs); } }

@media screen and (max-width: 479.98px) and (-ms-high-contrast: active), (max-width: 479.98px) and (-ms-high-contrast: none) {
  .features .m-safari {
    max-width: 100%; } }

@media (max-width: 479.98px) {
  .section-enlargement .feature.feature-bordered.feature-flex .feature-icon {
    margin-right: 0px; } }

/*
*******************************************
Search Box
*******************************************
*/
.search-box {
  margin-bottom: var(--ca-section-spacing);
  padding: var(--ui-block-padding-xlg);
  border-radius: var(--ui-block-border-radius-lg);
  box-shadow: var(--box-shadow-lg);
  background: var(--ui-block-bg); }
  .search-box-sm {
    padding: var(--ui-block-padding-base); }
  .search-box .search-group {
    margin: auto;
    width: 100%; }
  .search-box .desc {
    margin: var(--spacing-1x) 0 0; }

/*
*******************************************
Search Box - Style
*******************************************
*/
.banner-primary,
.search-box-primary {
  background: var(--primary-block-bg-h); }
  .banner-primary .search-group .search-field .form-control:focus ~ .search-field-icon > i,
  .search-box-primary .search-group .search-field .form-control:focus ~ .search-field-icon > i {
    color: var(--text-primary-color); }
  .banner-primary .search-field-icon,
  .search-box-primary .search-field-icon {
    color: var(--text-primary-color); }
    .banner-primary .search-field-icon > i,
    .search-box-primary .search-field-icon > i {
      color: var(--text-secondary-primary-color); }
  .banner-primary .form-control, .banner-primary .form-control:hover, .banner-primary .form-control:active, .banner-primary .form-control:focus,
  .banner-primary .input-group,
  .banner-primary .input-group:hover,
  .banner-primary .input-group:active,
  .banner-primary .input-group:focus,
  .search-box-primary .form-control,
  .search-box-primary .form-control:hover,
  .search-box-primary .form-control:active,
  .search-box-primary .form-control:focus,
  .search-box-primary .input-group,
  .search-box-primary .input-group:hover,
  .search-box-primary .input-group:active,
  .search-box-primary .input-group:focus {
    color: var(--primary-block-input-color); }
  .banner-primary .form-control::placeholder,
  .banner-primary .input-group::placeholder,
  .search-box-primary .form-control::placeholder,
  .search-box-primary .input-group::placeholder {
    color: var(--primary-block-input-placeholder-color); }
  .banner-primary .dropdown-header .form-control,
  .search-box-primary .dropdown-header .form-control {
    color: var(--input-color); }
  .banner-primary .input-group-addon,
  .search-box-primary .input-group-addon {
    color: var(--primary-block-input-placeholder-color); }
  .banner-primary .domain-search-input.search-group-combined,
  .search-box-primary .domain-search-input.search-group-combined {
    background: var(--primary-block-input-bg); }
  .banner-primary .domain-search-input .search-field-icon,
  .banner-primary .domain-search-input .search-field-icon > i,
  .search-box-primary .domain-search-input .search-field-icon,
  .search-box-primary .domain-search-input .search-field-icon > i {
    color: var(--primary-block-input-icon-color); }

.search-box-primary .form-control {
  border: none; }

.banner-secondary,
.search-box-secondary {
  background: var(--secondary-block-bg-h); }
  .banner-secondary .search-group .search-field .form-control:focus ~ .search-field-icon > i,
  .search-box-secondary .search-group .search-field .form-control:focus ~ .search-field-icon > i {
    color: var(--text-primary-color); }
  .banner-secondary .search-field-icon,
  .search-box-secondary .search-field-icon {
    color: var(--text-primary-color); }
    .banner-secondary .search-field-icon > i,
    .search-box-secondary .search-field-icon > i {
      color: var(--text-secondary-primary-color); }
  .banner-secondary .form-control,
  .banner-secondary .input-group,
  .search-box-secondary .form-control,
  .search-box-secondary .input-group {
    background: var(--secondary-block-input-bg);
    border-color: var(--secondary-block-input-border);
    color: var(--secondary-block-input-color); }
    .banner-secondary .form-control, .banner-secondary .form-control:hover, .banner-secondary .form-control:active, .banner-secondary .form-control:focus,
    .banner-secondary .input-group,
    .banner-secondary .input-group:hover,
    .banner-secondary .input-group:active,
    .banner-secondary .input-group:focus,
    .search-box-secondary .form-control,
    .search-box-secondary .form-control:hover,
    .search-box-secondary .form-control:active,
    .search-box-secondary .form-control:focus,
    .search-box-secondary .input-group,
    .search-box-secondary .input-group:hover,
    .search-box-secondary .input-group:active,
    .search-box-secondary .input-group:focus {
      color: var(--secondary-block-input-color); }
    .banner-secondary .form-control::placeholder,
    .banner-secondary .input-group::placeholder,
    .search-box-secondary .form-control::placeholder,
    .search-box-secondary .input-group::placeholder {
      color: var(--secondary-block-input-placeholder-color); }
  .banner-secondary .dropdown-header .form-control,
  .search-box-secondary .dropdown-header .form-control {
    color: var(--input-color); }
  .banner-secondary .input-group-addon,
  .search-box-secondary .input-group-addon {
    color: var(--secondary-block-input-placeholder-color); }
  .banner-secondary .domain-search-input.search-group-combined,
  .search-box-secondary .domain-search-input.search-group-combined {
    background: var(--secondary-block-input-bg); }
  .banner-secondary .domain-search-input .search-field-icon,
  .banner-secondary .domain-search-input .search-field-icon > i,
  .search-box-secondary .domain-search-input .search-field-icon,
  .search-box-secondary .domain-search-input .search-field-icon > i {
    color: var(--secondary-block-input-icon-color); }
  .banner-secondary .domain-search-advanced:has(#message:active) .dropdown-multi-level > .dropdown-toggle,
  .banner-secondary .domain-search-advanced:has(#message:focus) .dropdown-multi-level > .dropdown-toggle,
  .banner-secondary .domain-search-advanced:has(#message:hover) .dropdown-multi-level > .dropdown-toggle,
  .search-box-secondary .domain-search-advanced:has(#message:active) .dropdown-multi-level > .dropdown-toggle,
  .search-box-secondary .domain-search-advanced:has(#message:focus) .dropdown-multi-level > .dropdown-toggle,
  .search-box-secondary .domain-search-advanced:has(#message:hover) .dropdown-multi-level > .dropdown-toggle {
    background: var(--secondary-block-input-bg);
    border-color: var(--secondary-block-input-border); }

.search-box-primary .form-control,
.search-box-primary .input-group {
  background: var(--primary-block-input-bg);
  border-color: var(--primary-block-input-border); }
  .search-box-primary .form-control, .search-box-primary .form-control:hover, .search-box-primary .form-control:active, .search-box-primary .form-control:focus,
  .search-box-primary .input-group,
  .search-box-primary .input-group:hover,
  .search-box-primary .input-group:active,
  .search-box-primary .input-group:focus {
    color: var(--primary-block-input-color); }
  .search-box-primary .form-control::placeholder,
  .search-box-primary .input-group::placeholder {
    color: var(--primary-block-input-placeholder-color); }

.search-box-primary .domain-search-advanced:has(#message:active) .dropdown-multi-level > .dropdown-toggle,
.search-box-primary .domain-search-advanced:has(#message:focus) .dropdown-multi-level > .dropdown-toggle,
.search-box-primary .domain-search-advanced:has(#message:hover) .dropdown-multi-level > .dropdown-toggle {
  background: var(--primary-block-input-bg);
  border-color: var(--primary-block-input-border); }

/*
*******************************************
Search Group
*******************************************
*/
.search-group {
  display: flex;
  flex-wrap: wrap; }
  .search-group-btn > * + * {
    margin-left: var(--spacing-1x); }
  .search-group .search-field {
    flex: 1; }
    .search-group .search-field .form-control:focus ~ .search-field-icon > i {
      color: var(--search-field-combined-icon-color); }

.search-field {
  position: relative; }
  .search-field-icon {
    position: absolute;
    top: calc((var(--ui-height-base) - var(--ui-icon-size-base))/2);
    left: var(--spacing-2x);
    width: var(--ui-icon-size-base);
    font-size: var(--ui-icon-size-base);
    line-height: var(--ui-icon-size-base);
    text-align: center; }
    .search-field-icon > i {
      color: var(--search-field-icon-color);
      transition: color var(--transition-base); }
  .search-field .form-control {
    padding-left: calc(var(--ui-icon-size-base) + 2 * var(--spacing-2x)); }
  .search-field .search-field-icon {
    left: var(--spacing-2x); }
  .search-field .form-control {
    padding-left: calc(var(--ui-icon-size-base) + 2 * var(--spacing-2x)); }
  .search-field .search-field-loader {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 24px; }
  .search-field:has(.input-sm) .search-field-loader {
    right: 16px; }
  .search-field .search-field-results {
    position: absolute;
    z-index: 1;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    opacity: 0;
    transform: translateY(-16px);
    transition: var(--show-animation);
    visibility: hidden; }
    .search-field .search-field-results .list-group-item.message {
      border: unset; }
      .search-field .search-field-results .list-group-item.message-no-data {
        min-height: 360px; }
        .search-field .search-field-results .list-group-item.message-no-data .message-image {
          width: 56px;
          height: 56px; }
          .search-field .search-field-results .list-group-item.message-no-data .message-image svg {
            width: 56px;
            height: 56px; }
        .search-field .search-field-results .list-group-item.message-no-data .message-title {
          margin-top: var(--ui-block-spacing-base);
          margin-bottom: 4px; }
    .search-field .search-field-results.list-group-xxs .list-group-item.message-no-data {
      min-height: 224px; }
      .search-field .search-field-results.list-group-xxs .list-group-item.message-no-data .message-image {
        width: 40px;
        height: 40px; }
        .search-field .search-field-results.list-group-xxs .list-group-item.message-no-data .message-image svg {
          width: 40px;
          height: 40px; }
      .search-field .search-field-results.list-group-xxs .list-group-item.message-no-data .message-title {
        margin-top: var(--ui-block-spacing-sm);
        margin-bottom: 4px; }
    .search-field .search-field-results.show {
      transform: translateY(0);
      opacity: 1;
      visibility: visible; }
    .search-field .search-field-results[data-knowledgebase-search-results] {
      overflow-y: auto !important; }

@media (max-width: 991.98px) {
  [menuitemname="Knowledgebase Suggestions"] .search-field-results[data-knowledgebase-search-results] {
    top: unset;
    bottom: calc(100% + 8px);
    transform: translateY(16px); }
    [menuitemname="Knowledgebase Suggestions"] .search-field-results[data-knowledgebase-search-results].show {
      transform: translateY(0); } }

.page-homepage .search-group {
  max-width: var(--search-group-max-width);
  margin: 0 auto; }

.search-group > * + * {
  margin-left: var(--spacing-2x); }

@media (max-width: 479.98px) {
  .search-group:not(.panel-choose-domain--subdomain) > * {
    margin-left: 0;
    min-width: 100%;
    flex-basis: 100%; }
    .search-group:not(.panel-choose-domain--subdomain) > * + * {
      margin-top: var(--ui-block-spacing-sm);
      margin-right: 0; }
  .search-group-btn .btn {
    width: 100%; }
  .search-group-btn > * + * {
    margin-top: var(--ui-block-spacing-sm);
    margin-left: 0; } }

/*
*******************************************
Search Group Combined
*******************************************
*/
.search-box-primary .search-group-combined {
  background: var(--primary-block-input-bg); }

.search-box-secondary .search-group-combined {
  background: var(--secondary-block-input-bg); }

.search-group-combined {
  align-items: center;
  background: var(--input-bg);
  border-radius: var(--border-radius-base);
  border: 1px solid var(--input-border-color);
  padding: var(--spacing-1x) var(--spacing-1x) var(--spacing-1x) 0; }
  @media (max-width: 479.98px) {
    .search-group-combined {
      padding: var(--spacing-1x); } }
  .search-group-combined.has-shadow {
    border: none;
    box-shadow: var(--ui-block-shadow-lg);
    border: var(--ui-block-border); }
  .search-group-combined .form-control {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important; }

/*
*******************************************
Search Group Size
*******************************************
*/
.search-group .search-field .form-control {
  height: var(--ui-height-base);
  font-size: var(--input-font-size);
  line-height: var(--input-line-height);
  font-weight: var(--input-font-weight);
  border-radius: var(--input-border-radius); }

.search-group .search-group-btn .btn {
  height: var(--ui-height-base);
  padding: var(--ui-padding-base-v) var(--ui-padding-base-h);
  font-size: var(--btn-base-font-size);
  line-height: var(--btn-base-line-height);
  font-weight: var(--btn-base-font-weight);
  border-radius: var(--btn-base-border-radius); }

.search-group-lg .search-group-btn .btn {
  height: var(--ui-height-lg);
  padding: var(--ui-padding-lg-v) var(--ui-padding-lg-h);
  font-size: var(--btn-lg-font-size);
  line-height: var(--btn-lg-line-height);
  font-weight: var(--btn-lg-font-weight);
  border-radius: var(--btn-lg-border-radius); }

.search-group-lg .search-field .form-control {
  height: var(--ui-height-lg);
  font-size: var(--input-lg-font-size);
  line-height: var(--input-lg-line-height);
  font-weight: var(--input-lg-font-weight);
  border-radius: var(--input-lg-border-radius);
  padding-left: calc(var(--ui-icon-size-base) + var(--spacing-5x)); }

.search-group-lg .search-field-icon {
  top: calc((var(--ui-height-lg) - var(--ui-icon-size-base))/2);
  left: var(--spacing-3x);
  right: unset; }

.search-group-xl .search-group-btn .btn {
  height: var(--ui-height-xlg);
  padding: var(--ui-padding-xlg-v) var(--ui-padding-xlg-h);
  font-size: var(--btn-xlg-font-size);
  line-height: var(--btn-xlg-line-height);
  font-weight: var(--btn-xlg-font-weight);
  border-radius: var(--btn-xlg-border-radius); }

.search-group-xl .search-field .form-control {
  height: var(--ui-height-xlg);
  font-size: var(--input-xlg-font-size);
  line-height: var(--input-xlg-line-height);
  font-weight: var(--input-xlg-font-weight);
  border-radius: var(--input-xlg-border-radius);
  padding-left: calc(var(--ui-icon-size-base) + var(--spacing-5x)); }

.search-group-xl .search-field-icon {
  top: calc((var(--ui-height-xlg) - var(--ui-icon-size-base))/2);
  left: var(--spacing-3x);
  right: unset; }

.cookie-bar {
  position: fixed;
  bottom: var(--cookie-position);
  z-index: var(--zindex-tooltip);
  max-width: var(--cookie-width);
  min-width: var(--cookie-width);
  color: var(--text-heading-color);
  visibility: hidden;
  opacity: 0;
  transition: 0.7s; }
  .cookie-bar.is-active {
    visibility: visible;
    opacity: 1; }
  .cookie-bar__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--ui-block-padding-base);
    box-shadow: var(--box-shadow-lg);
    border-radius: var(--ui-block-border-radius-lg);
    background: var(--dropdown-bg); }
  .cookie-bar__desc {
    margin-bottom: var(--ui-block-padding-base);
    text-align: center;
    overflow-wrap: break-word; }
  .cookie-bar__icon {
    margin-bottom: var(--ui-block-padding-sm);
    display: flex;
    justify-content: center; }
  .cookie-bar__action {
    width: 100%; }
    .cookie-bar__action .btn {
      width: 100%; }
  .cookie-bar--bottom-left {
    left: var(--cookie-position); }
  .cookie-bar--bottom-right {
    right: var(--cookie-position); }
  .cookie-bar--bottom {
    right: 0;
    left: 0;
    max-width: unset;
    bottom: var(--cookie-position); }
    .cookie-bar--bottom::before {
      content: '';
      left: 0;
      top: 0;
      right: 0;
      bottom: 0;
      background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 53.12%); }
    .cookie-bar--bottom .cookie-bar__content {
      padding: var(--ui-block-padding-sm) var(--ui-block-padding-base);
      flex-direction: row;
      box-shadow: var(--box-shadow-xlg); }

@media (min-width: 768px) {
  .cookie-bar--bottom .cookie-bar__icon {
    margin-bottom: 0;
    margin-right: 16px; }
  .cookie-bar--bottom .cookie-bar__desc {
    margin-bottom: 0;
    flex-grow: 1;
    text-align: left; }
  .cookie-bar--bottom .cookie-bar__action {
    margin-left: 16px;
    width: unset; }
    .cookie-bar--bottom .cookie-bar__action .btn {
      min-width: 220px; } }

@media (max-width: 767.98px) {
  .cookie-bar--bottom .cookie-bar__content {
    flex-direction: column; } }

.client-avatar,
.creator-avatar {
  position: relative;
  margin-bottom: var(--ui-block-spacing-sm); }
  .client-avatar img,
  .creator-avatar img {
    width: 72px;
    height: 72px;
    border-radius: 56px; }
  .client-avatar-sm,
  .creator-avatar-sm {
    display: inline-block;
    margin-bottom: 0; }
    .client-avatar-sm img,
    .creator-avatar-sm img {
      width: 32px;
      height: 32px; }
  .client-avatar-md,
  .creator-avatar-md {
    display: inline-block;
    margin-bottom: 0; }
    .client-avatar-md img,
    .creator-avatar-md img {
      width: 48px;
      height: 48px; }
  .client-avatar .staff-reply,
  .creator-avatar .staff-reply {
    position: absolute;
    right: -4px;
    bottom: -6px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 20px;
    width: 20px;
    background-color: var(--brand-primary);
    border-radius: 100%; }
    .client-avatar .staff-reply img,
    .creator-avatar .staff-reply img {
      height: 12px;
      width: 12px; }

.lagom-layout-left .top-nav .client-avatar-sm img,
.lagom-layout-condensed .top-nav .client-avatar-sm img {
  width: 24px;
  height: 24px; }

.dropdown-menu-search,
.dropdown-language-search {
  width: 250px;
  max-height: 290px;
  padding: 0;
  overflow: hidden;
  background: var(--dropdown-bg); }
  .dropdown-menu-search .dropdown-menu-items,
  .dropdown-language-search .dropdown-menu-items {
    position: relative;
    max-height: 236px; }
  .dropdown-menu-search .dropdown-header,
  .dropdown-language-search .dropdown-header {
    padding: 0;
    height: 56px; }
    .dropdown-menu-search .dropdown-header .input-group-icon,
    .dropdown-language-search .dropdown-header .input-group-icon {
      margin: 0 -33px 0 24px;
      color: var(--gray-icons); }
    .dropdown-menu-search .dropdown-header .form-control,
    .dropdown-language-search .dropdown-header .form-control {
      background: transparent !important;
      border: none;
      padding-left: 44px;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0; }
    .dropdown-menu-search .dropdown-header-bordered,
    .dropdown-language-search .dropdown-header-bordered {
      border-bottom: 1px solid var(--input-border-color);
      border-radius: 0;
      transition: all var(--transition-base); }
      .dropdown-menu-search .dropdown-header-bordered:has(input:focus),
      .dropdown-language-search .dropdown-header-bordered:has(input:focus) {
        border-color: var(--input-focus-border-color); }
  .dropdown-menu-search .dropdown-menu-no-data,
  .dropdown-language-search .dropdown-menu-no-data {
    height: 100%;
    display: none;
    min-height: 64px; }
  .dropdown-menu-search.is-empty .dropdown-menu-items,
  .dropdown-language-search.is-empty .dropdown-menu-items {
    display: none; }
  .dropdown-menu-search.is-empty .dropdown-menu-no-data,
  .dropdown-language-search.is-empty .dropdown-menu-no-data {
    padding: var(--ui-block-padding-xs);
    display: flex;
    align-items: center;
    justify-content: center; }

.dropdown-language-search .dropdown-menu-item a {
  display: flex;
  align-items: center; }

.dropdown-language-search .nav-divider {
  margin: 0; }

.dropdown-language-search .language-enter {
  margin-left: auto;
  position: relative;
  font-size: var(--font-size-sm);
  display: flex;
  align-items: center; }
  .dropdown-language-search .language-enter:after {
    display: flex;
    content: '';
    width: 18px;
    height: 18px;
    background-image: url("../img/enter.svg");
    background-repeat: no-repeat;
    margin-left: 8px; }

.language-flag {
  display: flex;
  width: 20px;
  height: 15px;
  border-radius: var(--border-radius-xs);
  overflow: hidden;
  margin-right: var(--spacing-1x); }
  .language-flag.catalan {
    background: url("../img/flags/catalan.svg"); }
  .language-flag.arabic {
    background: url("../img/flags/arabic.svg"); }
  .language-flag.azerbaijani {
    background: url("../img/flags/azerbaijani.svg"); }
  .language-flag.chinese {
    background: url("../img/flags/chinese.svg"); }
  .language-flag.croatian {
    background: url("../img/flags/croatian.svg"); }
  .language-flag.czech {
    background: url("../img/flags/czech.svg"); }
  .language-flag.danish {
    background: url("../img/flags/danish.svg"); }
  .language-flag.dutch {
    background: url("../img/flags/dutch.svg"); }
  .language-flag.english {
    background: url("../img/flags/english.svg"); }
  .language-flag.estonian {
    background: url("../img/flags/estonian.svg"); }
  .language-flag.farsi {
    background: url("../img/flags/farsi.svg"); }
  .language-flag.french {
    background: url("../img/flags/french.svg"); }
  .language-flag.german {
    background: url("../img/flags/german.svg"); }
  .language-flag.hebrew {
    background: url("../img/flags/hebrew.svg"); }
  .language-flag.hungarian {
    background: url("../img/flags/hungarian.svg"); }
  .language-flag.italian {
    background: url("../img/flags/italian.svg"); }
  .language-flag.macedonian {
    background: url("../img/flags/macedonian.svg"); }
  .language-flag.norwegian {
    background: url("../img/flags/norwegian.svg"); }
  .language-flag.portuguese-br {
    background: url("../img/flags/portuguese-br.svg"); }
  .language-flag.portuguese-pt {
    background: url("../img/flags/portuguese-pt.svg"); }
  .language-flag.portuguese {
    background: url("../img/flags/portuguese.svg"); }
  .language-flag.romanian {
    background: url("../img/flags/romanian.svg"); }
  .language-flag.russian {
    background: url("../img/flags/russian.svg"); }
  .language-flag.spanish {
    background: url("../img/flags/spanish.svg"); }
  .language-flag.swedish {
    background: url("../img/flags/swedish.svg"); }
  .language-flag.turkish {
    background: url("../img/flags/turkish.svg"); }
  .language-flag.ukrainian {
    background: url("../img/flags/ukrainian.svg"); }

/*
*******************************************
Article - Content
*******************************************
*/
.article-content {
  color: var(--article-font-color);
  font-size: var(--article-font-size-base);
  font-weight: var(--article-font-weight-base);
  line-height: var(--article-line-height-base); }
  .article-content > *:first-child {
    margin-top: 0; }
  .article-content > *:last-child {
    margin-bottom: 0; }
  .article-content h1,
  .article-content .h1 {
    margin-top: var(--article-h1-margin-top);
    margin-bottom: var(--article-h1-margin-bottom); }
  .article-content h2,
  .article-content .h2 {
    margin-top: var(--article-h2-margin-top);
    margin-bottom: var(--article-h2-margin-bottom); }
  .article-content h3,
  .article-content .h3 {
    margin-top: var(--article-h3-margin-top);
    margin-bottom: var(--article-h3-margin-bottom); }
  .article-content h4,
  .article-content .h4 {
    margin-top: var(--article-h4-margin-top);
    margin-bottom: var(--article-h4-margin-bottom); }
  .article-content h5,
  .article-content .h5 {
    margin-top: var(--article-h5-margin-top);
    margin-bottom: var(--article-h5-margin-bottom); }
  .article-content h6,
  .article-content .h6 {
    margin-top: var(--article-h6-margin-top);
    margin-bottom: var(--article-h6-margin-bottom); }
  .article-content b,
  .article-content strong {
    font-weight: var(--font-weight-bold);
    color: var(--text-heading-color); }
  .article-content .table,
  .article-content table {
    border: 1px solid var(--ui-block-divider-color); }
    .article-content .table td,
    .article-content .table th,
    .article-content table td,
    .article-content table th {
      height: auto; }
  .article-content img {
    max-width: 100%;
    height: auto; }

.announcements-list img {
  max-width: 100%;
  height: auto;
  margin: var(--spacing-1x) 0; }

.invite-users-btn {
  margin-left: auto; }

.panel-users .panel-body {
  padding: 0; }

.user-list {
  padding: 0;
  margin: 0;
  list-style: none; }
  .user-list-item {
    position: relative;
    padding: var(--ui-block-padding-sm) var(--ui-block-padding-base);
    display: flex;
    align-items: center; }
    .user-list-item > * + * {
      margin-left: var(--spacing-3x); }
    .user-list-item-avatar {
      width: 48px;
      padding: 0;
      border-radius: 100%;
      overflow: hidden;
      display: flex;
      align-items: center; }
      .user-list-item-avatar img {
        max-width: 100%; }
    .user-list-item-body {
      display: flex;
      align-items: center;
      flex: 1; }
    .user-list-item-info {
      width: 60%;
      max-width: 60%;
      display: flex;
      justify-content: center;
      flex-direction: column; }
      .user-list-item-info > span {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis; }
      .user-list-item-info > i {
        margin-left: 8px; }
    .user-list-item-name {
      font-size: var(--font-size-lg);
      font-weight: var(--font-weight-base);
      color: var(--text-heading-color); }
    .user-list-item-email {
      font-size: var(--font-size-sm);
      font-weight: var(--font-weight-base);
      color: var(--text-lighter-color); }
    .user-list-item-date {
      width: 40%;
      max-width: 40%;
      display: flex;
      flex-direction: column; }
    .user-list-item-actions {
      display: flex;
      flex-wrap: nowrap;
      margin-left: auto;
      margin-right: -8px; }
      .user-list-item-actions .label,
      .user-list-item-actions .btn-default {
        margin-right: 8px; }
    .user-list-item .tooltip {
      max-width: 150px; }
    .user-list-item + .user-list-item {
      border-top: 1px solid var(--ui-block-divider-color); }
  .user-list a.user-list-item:after {
    content: '';
    position: absolute;
    left: 8px;
    right: 8px;
    top: 0;
    bottom: 0;
    background: transparent;
    opacity: 0;
    transition: all var(--transition-base);
    z-index: 0; }
  .user-list a.user-list-item + .user-list-item:after {
    top: 1px; }
  .user-list a.user-list-item:hover:after {
    opacity: 1; }
  .user-list a.user-list-item.disabled {
    cursor: not-allowed;
    opacity: 0.7; }
    .user-list a.user-list-item.disabled * {
      cursor: not-allowed; }
    .user-list a.user-list-item.disabled:hover:after {
      background: transparent; }
  .user-list-switch .user-list-item-date {
    display: block; }

@media (max-width: 767.98px) {
  .user-list-item {
    flex-wrap: wrap; }
    .user-list-item-body {
      align-items: flex-start;
      flex-direction: column; }
    .user-list-item-date {
      flex-direction: row;
      white-space: nowrap;
      align-items: center;
      font-size: var(--font-size-xs);
      line-height: var(--line-height-xs); }
      .user-list-item-date > * + * {
        margin-left: var(--spacing-1x); } }

@media (max-width: 479.98px) {
  .user-list-item-actions {
    min-width: 100%;
    width: 100%;
    justify-content: flex-start;
    padding-left: 66px;
    margin-left: unset;
    margin-top: 0; }
    .user-list-item-actions .label {
      margin-left: 6px;
      margin-top: 6px; }
  .user-list-switch .user-list-item-actions {
    padding-left: 72px;
    margin-top: 10px; } }

:root .page-promotion-black_week {
  padding-top: 0 !important;
  --body-bg:                                                          linear-gradient(270deg, #1624A7 0%, #000000 100%);
  --gray-gradient-v:                                                  transparent;
  --gray-block-bg-h:                                                  transparent;
  --gray-gradient-h:                                                  transparent;
  --white-gradient:                                                   unset;
  --app-nav-top-box-shadow:                                           0;
  --app-nav-top-condensed-header-border-bottom:                       none;
  --cms-block-divider-default-color:                                  linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0) 100%);
  --app-nav-top-border-bottom:                                        none;
  --ui-block-divider-color:                                           #FFFFFF57;
  --main-footer-border-top:                                           1px solid #FFFFFF1A;
  --main-footer-extended-border-top:                                  1px solid #FFFFFF1A;
  --main-footer-bg:                                                   transparent;
  --site-section-title-color:                                         #fff;
  --site-section-subtitle-color:                                      #FFFFFFEB;
  --baner-caption-color:                                              #fff;
  --section-caption-color:                                            #fff;
  --main-footer-extended-title-color:                                 #fff;
  --main-footer-link-color:                                           #FFFFFFCC;
  --main-footer-extended-desc-color:                                  #FFFFFFCC;
  --nav-tabs-link-color:                                              #B3B3B3; }
  :root .page-promotion-black_week .section-faq {
    --brand-primary: #009AFF;
    --gray-lighter: #303030;
    --gray-lighter-4: #EFEFF1;
    --text-heading-color: #fff;
    --text-primary-color: #009AFF;
    --text-body-color: hsla(0,0%,100%,.24);
    --brand-primary-lighter-3: hsla(0,0%,100%,.8); }

.page-promotion-black_week .section-faq .faq-item.faq-item-boxed {
  outline: unset !important;
  border: 1px solid rgba(255, 255, 255, 0.24); }
  .page-promotion-black_week .section-faq .faq-item.faq-item-boxed .faq-item-bottom {
    color: #FFFFFFCC !important; }

.page-promotion-black_week .section-faq.collapsed:not(.faq-item-expanded):after {
  display: none !important; }

.page-promotion-black_week .section-faq:not(.collapsed):not(.faq-item-expanded) h3 {
  color: var(--text-heading-color); }

.page-promotion-black_week .section-faq:not(.faq-item-expanded):hover h3 {
  color: #FFFFFFCC; }

.page-promotion-black_week .section-faq.collapsed:hover .accordion-icon svg g path {
  fill: #FFFFFFCC; }

.page-promotion-black_week.page-lagom-cms.lagom-depth,
.page-promotion-christmas_sale.page-lagom-cms.lagom-depth {
  background: var(--body-bg); }

.page-promotion-black_week.lagom-futuristic,
.page-promotion-christmas_sale.lagom-futuristic {
  background: var(--body-bg); }

.page-promotion-black_week .app-nav-only-logo,
.page-promotion-christmas_sale .app-nav-only-logo {
  position: absolute !important;
  top: 0;
  left: 0;
  right: 0;
  background: transparent; }
  .page-promotion-black_week .app-nav-only-logo .app-nav-menu,
  .page-promotion-christmas_sale .app-nav-only-logo .app-nav-menu {
    background: transparent; }
    .page-promotion-black_week .app-nav-only-logo .app-nav-menu > .container,
    .page-promotion-christmas_sale .app-nav-only-logo .app-nav-menu > .container {
      height: var(--app-nav-header-height);
      display: flex;
      align-items: center; }
  .page-promotion-black_week .app-nav-only-logo .logo-img,
  .page-promotion-christmas_sale .app-nav-only-logo .logo-img {
    height: var(--app-nav-logo-height);
    max-width: var(--app-nav-logo-width); }

.page-promotion-black_week.scroll-up .app-nav-only-logo,
.page-promotion-christmas_sale.scroll-up .app-nav-only-logo {
  display: none; }

.page-promotion-black_week .product-billing-switcher .btn-group > .btn:not(.active) .btn-text,
.page-promotion-christmas_sale .product-billing-switcher .btn-group > .btn:not(.active) .btn-text {
  color: #fff; }

.page-promotion-black_week .product-billing-switcher .btn-dropdown > span,
.page-promotion-christmas_sale .product-billing-switcher .btn-dropdown > span {
  color: #fff; }

.page-promotion-black_week .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button,
.page-promotion-christmas_sale .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button {
  border: 1px solid var(--ui-block-divider-color); }
  .page-promotion-black_week .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button:hover, .page-promotion-black_week .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button:active, .page-promotion-black_week .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button:focus,
  .page-promotion-christmas_sale .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button:hover,
  .page-promotion-christmas_sale .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button:active,
  .page-promotion-christmas_sale .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button:focus {
    background: transparent; }
  .page-promotion-black_week .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button .btn-text,
  .page-promotion-christmas_sale .product-billing-switcher .btn-dropdown .dropdown-cycle-switcher > button .btn-text {
    color: #fff; }

.page-promotion-black_week .main-footer,
.page-promotion-christmas_sale .main-footer {
  background: transparent !important; }
  .page-promotion-black_week .main-footer-extended-gray,
  .page-promotion-christmas_sale .main-footer-extended-gray {
    border-top: var(--main-footer-extended-border-top); }

.page-promotion-black_week .footer-company-logo img,
.page-promotion-christmas_sale .footer-company-logo img {
  filter: brightness(0) invert(1); }

.page-promotion-black_week .footer-copyright,
.page-promotion-christmas_sale .footer-copyright {
  color: #FFFFFFCC; }

.page-promotion-black_week .site-banner.balck-week-banner-graphic-1 .banner-graphic-background-side img,
.page-promotion-christmas_sale .site-banner.balck-week-banner-graphic-1 .banner-graphic-background-side img {
  margin-right: -320px; }

.page-promotion-black_week .site-banner.banner-gray::before,
.page-promotion-christmas_sale .site-banner.banner-gray::before {
  display: none; }

.page-promotion-black_week .site-banner .banner-subtitle, .page-promotion-black_week .site-banner .banner-title, .page-promotion-black_week .site-banner .banner-title .h2,
.page-promotion-christmas_sale .site-banner .banner-subtitle,
.page-promotion-christmas_sale .site-banner .banner-title,
.page-promotion-christmas_sale .site-banner .banner-title .h2 {
  color: #fff; }

.page-promotion-black_week .site-banner .banner-content,
.page-promotion-christmas_sale .site-banner .banner-content {
  padding-top: 180px !important; }

.page-promotion-black_week .timer-bordered .timer-box,
.page-promotion-christmas_sale .timer-bordered .timer-box {
  border: 1px solid #FFFFFF57; }
  .page-promotion-black_week .timer-bordered .timer-box-num,
  .page-promotion-christmas_sale .timer-bordered .timer-box-num {
    color: #fff; }
  .page-promotion-black_week .timer-bordered .timer-box-label,
  .page-promotion-christmas_sale .timer-bordered .timer-box-label {
    color: #FFFFFFCC; }

.page-promotion-black_week .timer-divider svg circle,
.page-promotion-christmas_sale .timer-divider svg circle {
  fill: #FFFFFFCC; }

.page-promotion-black_week .feature-stat span.text-heading,
.page-promotion-christmas_sale .feature-stat span.text-heading {
  color: var(--text-heading-color); }

.page-promotion-black_week .font-80,
.page-promotion-christmas_sale .font-80 {
  display: block;
  font-size: 80px;
  line-height: 88px; }

.page-promotion-black_week .text-primary-lighter,
.page-promotion-christmas_sale .text-primary-lighter {
  color: var(--brand-primary-lighter) !important; }

.page-promotion-black_week .site-banner.banner.balck-week-banner-graphic-1 .container .banner-graphic img,
.home-sale-black-week .site-banner.banner.balck-week-banner-graphic-1 .container .banner-graphic img {
  height: 820px;
  width: auto;
  margin-top: -180px; }

@media (max-width: 767.98px) {
  .page-promotion-black_week .site-banner.banner.balck-week-banner-graphic-1 .container .banner-background,
  .home-sale-black-week .site-banner.banner.balck-week-banner-graphic-1 .container .banner-background {
    display: none; }
  .page-promotion-black_week .site-banner.banner.balck-week-banner-graphic-1 .container .banner-content,
  .home-sale-black-week .site-banner.banner.balck-week-banner-graphic-1 .container .banner-content {
    padding-top: 120px; } }

.page-promotion-christmas_sale .site-banner.banner.chirstmas-sale-banner-graphic-1 .container .banner-graphic img {
  height: 670px;
  width: auto;
  margin-top: 0; }

@media (max-width: 767.98px) {
  .page-promotion-christmas_sale .site-banner.banner.chirstmas-sale-banner-graphic-1 .container .banner-background {
    display: none; }
  .page-promotion-christmas_sale .site-banner.banner.chirstmas-sale-banner-graphic-1 .container .banner-content {
    padding-top: 120px; } }

.home-sale-black-week .section-secondary .timer .timer-box.is-bordered,
.home-sale-black-week .banner-secondary .timer .timer-box.is-bordered {
  border-color: rgba(255, 255, 255, 0.24); }

.page-promotion-black_week .timer .timer-box.is-bordered,
.page-promotion-christmas_sale .timer .timer-box.is-bordered {
  border-color: rgba(255, 255, 255, 0.24); }

.page-promotion-christmas_sale {
  padding-top: 0 !important;
  --body-bg:                                                          linear-gradient(270deg, #00643A 0%, #003324 100%);
  --gray-gradient-v:                                                  transparent;
  --gray-block-bg-h:                                                  transparent;
  --gray-gradient-h:                                                  transparent;
  --white-gradient:                                                   unset;
  --app-nav-top-box-shadow:                                           0;
  --app-nav-top-condensed-header-border-bottom:                       none;
  --cms-block-divider-default-color:                                  linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0) 100%);
  --app-nav-top-border-bottom:                                        none;
  --ui-block-divider-color:                                           #FFFFFF57;
  --main-footer-border-top:                                           1px solid #FFFFFF1A;
  --main-footer-extended-border-top:                                  1px solid #FFFFFF1A;
  --main-footer-bg:                                                   transparent;
  --site-section-title-color:                                         #fff;
  --site-section-subtitle-color:                                      #FFFFFFEB;
  --baner-caption-color:                                              #fff;
  --section-caption-color:                                            #fff;
  --main-footer-extended-title-color:                                 #fff;
  --main-footer-link-color:                                           #FFFFFFCC;
  --main-footer-extended-desc-color:                                  #FFFFFFCC;
  --nav-tabs-link-color:                                              #B3B3B3; }

.page-promotion-christmas_sale,
.home-christmas_sale .section-secondary,
.home-christmas_sale .banner-secondary {
  --text-primary-color: #25a75b;
  --brand-primary-lighter: #25a75b;
  --main-footer-link-hover-color: #25a75b;
  --btn-primary-bg: #25a75b;
  --btn-primary-border: #25a75b;
  --btn-primary-hover-bg: #4ECA78;
  --btn-primary-hover-border: #4ECA78;
  --btn-primary-faded-color: #25a75b;
  --btn-primary-faded-bg: #D8F3E1;
  --btn-primary-faded-border: #D8F3E1;
  --btn-primary-faded-hover-color: #25a75b;
  --btn-primary-faded-hover-bg: #C8EED5;
  --btn-primary-faded-hover-border: #C8EED5;
  --btn-primary-faded-active-bg: var(--btn-primary-faded-hover-bg);
  --btn-primary-faded-active-border: var(--btn-primary-faded-hover-border); }

.home-christmas_sale .site-banner.banner.chirstmas-sale-banner-graphic-1 .container .banner-graphic img {
  height: 670px;
  width: auto;
  margin-top: 0; }

@media (max-width: 767.98px) {
  .home-christmas_sale .site-banner.banner.chirstmas-sale-banner-graphic-1 .container .banner-background {
    display: none; }
  .home-christmas_sale .site-banner.banner.chirstmas-sale-banner-graphic-1 .container .banner-content {
    padding-top: 120px; } }

.home-christmas_sale .site-banner,
.home-christmas_sale .section-secondary {
  background: linear-gradient(270deg, #00643A 0%, #003324 100%) !important; }

.home-christmas_sale .site-banner .banner-graphic-background-side img {
  margin-top: -100px;
  margin-right: -320px;
  max-height: 820px; }

.home-christmas_sale .section-secondary .timer .timer-box.is-bordered,
.home-christmas_sale .banner-secondary .timer .timer-box.is-bordered {
  border-color: rgba(255, 255, 255, 0.24); }

.home-christmas_sale .modal-backdrop {
  background: linear-gradient(270deg, rgba(1, 72, 42, 0.9) 0%, rgba(0, 18, 12, 0.9) 100%) !important; }

:root .modal-black-week,
:root .modal-christmas-sale {
  --text-body-color: var(--text-secondary-body-color);
  --text-heading-color: var(--text-secondary-heading-color);
  --input-color: rgba(255,255,255, 0.8); }

.modal-black-week .close,
.modal-christmas-sale .close {
  background: rgba(0, 0, 0, 0.5);
  border-radius: 40px;
  text-shadow: none;
  color: #fff; }

.modal-black-week .timer,
.modal-christmas-sale .timer {
  margin: var(--spacing-2x) auto;
  justify-content: center; }
  .modal-black-week .timer .timer-box.is-bordered,
  .modal-christmas-sale .timer .timer-box.is-bordered {
    border-color: rgba(255, 255, 255, 0.24); }

.home-sale-black-week .modal-backdrop {
  background: linear-gradient(270deg, rgba(13, 22, 109, 0.9) 0%, rgba(0, 0, 0, 0.9) 100%) !important; }

.modal-black-week .modal-content {
  background: linear-gradient(270deg, #1624A7 0%, #000000 100%) !important; }

:root .modal-christmas-sale {
  --text-primary-color: #25a75b;
  --btn-primary-bg:#25a75b;
  --btn-primary-border:#25a75b;
  --btn-primary-hover-bg: #4ECA78;
  --btn-primary-hover-border: #4ECA78;
  --btn-primary-faded-color:#25a75b;
  --btn-primary-faded-bg:#D8F3E1;
  --btn-primary-faded-border:#D8F3E1;
  --btn-primary-faded-hover-color:#25a75b;
  --btn-primary-faded-hover-bg:#C8EED5;
  --btn-primary-faded-hover-border:#C8EED5;
  --btn-primary-faded-active-bg: var(--btn-primary-faded-hover-bg);
  --btn-primary-faded-active-border: var(--btn-primary-faded-hover-border);
  --icheck-active-bg:#25a75b;
  --icheck-active-border-color:#25a75b; }

.modal-christmas-sale .modal-content {
  background: linear-gradient(270deg, #00643A 0%, #003324 100%) !important; }

.clientAlert.alert-black-week {
  background: linear-gradient(270deg, #1624A7 0%, #000000 100%) !important;
  border: none; }

:root .clientAlert.alert-christmas-sale {
  --btn-primary-faded-color:#25a75b;
  --btn-primary-faded-bg:#D8F3E1;
  --btn-primary-faded-border:#D8F3E1;
  --btn-primary-faded-hover-color:#25a75b;
  --btn-primary-faded-hover-bg:#C8EED5;
  --btn-primary-faded-hover-border:#C8EED5;
  --btn-primary-faded-active-bg: var(--btn-primary-faded-hover-bg);
  --btn-primary-faded-active-border: var(--btn-primary-faded-hover-border); }

.clientAlert.alert-christmas-sale {
  background: linear-gradient(270deg, #00643A 0%, #003324 100%);
  border: none; }

/* PRESENTATION PAGE */
.lagom.presentation-page .presentation-section {
  width: calc(100% - 80px);
  max-width: 1900px;
  margin: 120px auto;
  border-radius: 20px; }

.lagom.presentation-page .presentation-section.site-banner:after {
  height: 100% !important;
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: 20px;
  background: transparent !important; }

.lagom.presentation-page .presentation-section.site-banner.banner .banner-body {
  min-height: 640px;
  z-index: 99; }

.lagom-layout-top .app-nav-menu .menu > li.dropdown-mega.cms-menu .dropdown-menu-content .dropdown-menu-parent:nth-child(1),
.lagom-layout-top .app-nav-menu .menu > li.dropdown-mega.cms-menu .dropdown-menu-content .dropdown-menu-parent:nth-child(2) {
  flex-basis: 15%; }

.affiliate-stat {
  margin: 0;
  padding: 15px;
  font-size: 1.6em;
  text-align: center; }
  .affiliate-stat span {
    display: block;
    font-size: 2.4em; }
  .affiliate-stat i {
    float: left;
    padding: 10px;
    font-size: 4em; }

@media (max-width: 1200px) {
  .affiliate-stat {
    font-size: 1.2em; }
    .affiliate-stat span {
      font-size: 2.1em; }
    .affiliate-stat i {
      font-size: 3.6em; } }

@media (max-width: 991.98px) {
  .affiliate-stat {
    font-size: 1.0em; }
    .affiliate-stat span {
      font-size: 1.6em; }
    .affiliate-stat i {
      font-size: 3em; } }

.page-xtreamcode .panel.panel_design {
  border: none; }
  .page-xtreamcode .panel.panel_design > .panel-heading {
    background-color: var(--bg-color-transparent); }
  .page-xtreamcode .panel.panel_design .list-group .list-group-item {
    box-shadow: none; }

/*
*******************************************
Announcements List
*******************************************
*/
.announcements-list.list-boxed {
  gap: 32px;
  max-width: 920px;
  margin: 32px auto var(--main-body-padding-v) auto;
  box-shadow: none;
  border: 0;
  background: none; }
  .announcements-list.list-boxed .list-group-item {
    background: var(--list-group-bg);
    border-radius: var(--border-radius-lg);
    box-shadow: var(--box-shadow-base);
    border: none; }
    .announcements-list.list-boxed .list-group-item .list-group-item-heading::before {
      content: none; }
    .announcements-list.list-boxed .list-group-item .list-group-item-text {
      margin-top: var(--ui-block-spacing-sm);
      font-size: var(--font-size-md);
      line-height: var(--line-height-md); }
    .announcements-list.list-boxed .list-group-item-footer {
      gap: 24px; }
    .announcements-list.list-boxed .list-group-item-link:hover .announcement-date {
      color: var(--text-body-color); }

.announcements-list .details {
  margin-bottom: 0;
  margin-left: auto; }
  .announcements-list .details a {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    color: var(--text-body-color); }

.announcements-list .announcement-date {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm); }

.announcements-list .pagination {
  border-radius: 0;
  border-width: 1px 0 0; }

.announcements-list.list-group-lg .announcement-date i {
  color: var(--gray-icons);
  margin-right: var(--spacing-1x); }

.announcements-list.list-group-lg .list-group-item-heading {
  display: flex;
  align-items: center;
  margin: var(--spacing-1x) 0; }
  .announcements-list.list-group-lg .list-group-item-heading:before {
    width: 12px;
    align-self: flex-start;
    display: inline-flex;
    font-size: 12px;
    content: "\e908";
    font-family: var(--font-family-icons-small);
    margin-right: 12px; }

/*
*******************************************
Article
*******************************************
*/
.article .panel-body {
  padding: var(--ui-block-padding-lg); }

.article-date {
  display: flex;
  align-items: center;
  color: var(--text-lighter-color);
  margin-bottom: var(--ui-block-spacing-lg); }
  .article-date i {
    margin-right: var(--spacing-1x); }

.article-details {
  display: flex;
  list-style: none;
  padding: 0;
  margin-bottom: var(--ui-block-spacing-lg); }
  .article-details > li {
    margin-right: var(--ui-block-spacing-sm);
    color: var(--text-lighter-color);
    font-size: var(--font-size-sm); }
    .article-details > li > i {
      margin-right: var(--spacing-1x);
      color: var(--ui-icon-color); }
    .article-details > li > ul {
      display: inline-flex;
      list-style: none;
      margin: 0;
      padding: 0; }
      .article-details > li > ul > li + li {
        margin-left: var(--spacing-1x); }
      .article-details > li > ul a {
        color: var(--text-lighter-color); }
        .article-details > li > ul a:hover {
          color: var(--link-color); }

.article-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--ui-block-spacing-lg); }
  .article-title > * {
    margin: 0; }
  .article-title .btn-print {
    font-size: var(--ui-icon-size-base);
    order: 2; }
    .article-title .btn-print:not(:hover) {
      color: #b9bdc5; }

.article-footer {
  display: flex;
  align-items: center;
  margin-top: var(--ui-block-spacing-xxlg); }

.article-share {
  display: flex;
  align-items: center;
  margin-left: auto; }
  .article-share .share-via {
    margin: 0 16px 0 0; }
  .article-share > a {
    display: flex;
    align-items: center;
    width: 32px;
    height: 32px;
    color: var(--ui-icon-color); }
    .article-share > a:hover {
      color: var(--link-color); }
  .article-share > span + span {
    margin-left: var(--ui-block-padding-base); }
  .article-share .twitter-share-button {
    margin-top: 12px; }

.article-comments,
.article + .section {
  margin-top: var(--ui-block-spacing-xxlg); }

.article pre {
  border-color: var(--gray-lighter-4);
  border-color: var(--ui-block-border-color);
  margin-bottom: var(--spacing-5x); }

.article-rate .panel-body {
  display: flex;
  color: var(--text-primary-color); }

.article-rate .text {
  display: flex;
  flex-direction: column; }
  .article-rate .text span {
    margin-top: 6px;
    display: flex;
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    color: var(--text-lighter-color);
    align-items: center; }
    .article-rate .text span i {
      margin-right: var(--spacing-1x);
      color: var(--ui-icon-color); }

.article-rate form {
  display: flex;
  font-size: var(--font-size-lg);
  justify-content: space-between;
  flex: 1;
  align-items: center; }
  .article-rate form .btn + .btn {
    margin-left: 6px; }

@media (max-width: 767.98px) {
  .article-rate form {
    flex-direction: column;
    align-items: center;
    text-align: center; }
    .article-rate form div:not(.text) {
      margin-top: var(--ui-block-padding-base); } }

.comment {
  background: var(--ui-block-bg);
  box-shadow: var(--ui-block-shadow);
  border: var(--ui-block-border);
  padding: var(--ui-block-padding-md); }
  .comment-top {
    display: flex;
    align-items: center; }
  .comment-user > i {
    width: 24px;
    height: 24px;
    margin-right: var(--ui-block-padding-md);
    margin-right: var(--ui-block-padding-md); }
  .comment-user .btn {
    margin-left: var(--ui-block-padding-base); }
  .comment-date {
    margin-left: auto;
    color: var(--text-lighter-color);
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm); }
  .comment-body {
    padding-top: 24px;
    color: var(--text-lighter-color); }

@media (max-width: 1324px) {
  .article-footer {
    flex-direction: column;
    align-items: flex-start; }
  .article-share {
    margin-left: 0; }
    .article-share > span + span {
      margin-left: 4px; } }

/*
*******************************************
Announcements Toolbar
*******************************************
*/
.announcements-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  max-width: 920px;
  margin: 0 auto;
  margin-top: -120px; }
  @media (max-width: 479.98px) {
    .announcements-toolbar {
      flex-direction: column;
      gap: 16px; } }
  .announcements-toolbar .tld-toolbar {
    margin-bottom: 0;
    width: unset;
    z-index: 1000; }
    .announcements-toolbar .tld-toolbar input {
      border-radius: var(--border-radius-sm); }
      @media (max-width: 767.98px) {
        .announcements-toolbar .tld-toolbar input {
          min-width: unset; } }
    .announcements-toolbar .tld-toolbar .search-field-icon {
      color: #ACAFB9; }
  .announcements-toolbar form {
    z-index: 100000; }
  .announcements-toolbar .dropdown-filter {
    display: flex;
    align-items: center;
    gap: 16px;
    z-index: 1000; }
    .announcements-toolbar .dropdown-filter > span {
      color: #fff; }
    .announcements-toolbar .dropdown-filter .dropdown {
      background-color: #fff;
      color: var(--text-heading-color);
      border-radius: var(--border-radius-sm); }
    .announcements-toolbar .dropdown-filter .btn {
      padding: 10px 16px;
      border-radius: var(--border-radius-sm); }

.lagom-modern .announcements-toolbar .dropdown-filter > span {
  color: var(--text-heading-color); }

/*
*******************************************
Payment Methods
*******************************************
*/
.panel-cc .panel-body {
  padding: 0; }

.cc-item {
  display: flex;
  align-items: center;
  padding: var(--ui-block-padding-sm) var(--ui-block-padding-base);
  position: relative;
  max-width: unset; }
  .cc-item > * + * {
    margin-left: var(--spacing-2x); }
  .cc-item-icon {
    width: 48px;
    display: flex;
    align-items: center; }
    .cc-item-icon img {
      max-width: 100%; }
    .cc-item-icon i,
    .cc-item-icon .ls {
      font-size: 20px !important;
      color: var(--text-primary-color); }
  .cc-item-name {
    color: var(--text-heading-color);
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-medium);
    width: 20%;
    max-width: 20%; }
    .cc-item-name-paypal {
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis; }
  .cc-item-desc {
    flex: 1;
    color: var(--text-lighter-color); }
  .cc-item-status {
    display: flex; }
  .cc-item-actions {
    white-space: nowrap;
    min-width: 205px;
    text-align: right; }
    .cc-item-actions .label,
    .cc-item-actions .btn-default {
      margin-right: var(--spacing-1x); }
  .cc-item-expiry {
    width: 20%;
    max-width: 20%;
    display: flex;
    color: var(--text-body-color); }
    .cc-item-expiry span {
      color: var(--text-heading-color);
      padding-left: 4px; }
  .cc-item + .cc-item {
    border-top: 1px solid var(--ui-block-divider-color); }

.cc-list-bank .cc-item-icon {
  height: 32px; }

.cc-list-bank .cc-name {
  width: 40%;
  max-width: 40%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }

@media (max-width: 767.98px) {
  .cc-item {
    flex-wrap: wrap; }
    .cc-item-icon {
      order: 0; }
    .cc-item-name {
      order: 1;
      width: calc(70% - 48px);
      min-width: calc(70% - 48px); }
    .cc-item-desc {
      order: 3;
      padding-left: 48px;
      width: 60%;
      max-width: 60%;
      font-size: var(--font-size-sm);
      line-height: var(--line-height-sm); }
    .cc-item-status {
      margin-left: auto;
      order: 2;
      text-align: right; }
    .cc-item-actions {
      min-width: 30%;
      width: 30%;
      margin-top: var(--ui-block-spacing-xs);
      order: 4;
      width: 40%;
      min-width: 40%;
      display: flex;
      justify-content: flex-end;
      align-items: center; } }

@media (max-width: 479.98px) {
  .cc-item-desc {
    width: 100%;
    min-width: 100%; }
    .cc-item-desc.empty {
      display: none; }
  .cc-item-actions {
    min-width: 100%;
    width: 100%;
    justify-content: flex-start;
    padding-left: 56px;
    margin-left: unset; } }

/*
*******************************************
Payment Methods - CHeckout
*******************************************
*/
.cc-input-container #inputDescriptionContainer.col-md-6,
.cc-input-container #cardNumberContainer.col-md-6 {
  max-width: unset; }

.cc-input-container #inputDescriptionContainer.offset-md-3,
.cc-input-container #cardNumberContainer.offset-md-3 {
  margin-left: 0; }

.cc-input-container .cc-item {
  padding: var(--ui-padding-base-v) var(--ui-block-padding-base);
  margin-bottom: var(--ui-block-spacing-xs);
  border-radius: var(--border-radius-base);
  border: 1px solid var(--input-border-color);
  cursor: pointer;
  transition: border var(--transition-base); }
  .cc-input-container .cc-item-checkbox {
    margin-left: -8px; }
  .cc-input-container .cc-item-desc {
    width: 40%;
    max-width: 40%; }
  .cc-input-container .cc-item + .cc-item:before {
    content: unset; }
  .cc-input-container .cc-item.disabled {
    cursor: not-allowed;
    opacity: 0.8; }
  .cc-input-container .cc-item.active, .cc-input-container .cc-item:hover {
    border: 1px solid var(--input-focus-border-color); }

.cc-input-container #newCardInfo {
  height: auto !important; }

.cc-input-container #stripeElements {
  height: auto !important; }
  .cc-input-container #stripeElements .stripe-cards-inputs {
    margin: 0;
    width: 100%;
    padding: 0; }
    .cc-input-container #stripeElements .stripe-cards-inputs div[class*=col-] {
      float: left;
      margin-bottom: 0;
      max-width: unset; }
    .cc-input-container #stripeElements .stripe-cards-inputs.col-md-8 {
      max-width: unset; }
    .cc-input-container #stripeElements .stripe-cards-inputs.offset-md-2 {
      margin-left: unset; }
    @media (min-width: 768px) {
      .cc-input-container #stripeElements .stripe-cards-inputs .col-md-6 {
        width: 50%; }
      .cc-input-container #stripeElements .stripe-cards-inputs .col-md-3 {
        width: 25%; } }
    @media (max-width: 767.98px) {
      .cc-input-container #stripeElements .stripe-cards-inputs .col-md-6 {
        width: 100%;
        margin-bottom: 16px !important; }
      .cc-input-container #stripeElements .stripe-cards-inputs .col-md-3 {
        width: 50%; } }

#stripeElements .control-label {
  width: 100%;
  padding: 0;
  float: none; }

#stripeElements .StripeElement {
  padding-top: 12px; }

#stripeElements div[class*=col-] {
  float: none; }

@media (min-width: 768px) {
  #stripeElements .col-sm-7 {
    width: 100%; } }

#ibanElementContainer div[class*=col-] {
  padding: 0;
  width: 100%; }

.page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields {
  background: unset;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  display: flex;
  flex-direction: column; }
  .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields .payment-instructions {
    order: 1;
    text-align: left; }
    .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields .payment-instructions + .section-heading {
      text-align: left;
      order: 0; }
      .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields .payment-instructions + .section-heading + .panel-form {
        order: 2; }
  .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields ul.panel-tabs {
    width: 100%;
    border: unset;
    border-bottom: 1px solid var(--panel-border-divider-color);
    border-radius: unset;
    margin: unset;
    padding: 0 calc(var(--panel-body-padding) - var(--nav-link-padding-h));
    display: flex; }
  .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields .existing-cc-grid {
    width: 100%;
    font-size: inherit; }
    @media (min-width: 480px) {
      .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields .existing-cc-grid .cc-item-name {
        width: 60%;
        max-width: 60%;
        word-break: break-all; }
      .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields .existing-cc-grid .cc-item-desc {
        display: none; }
      .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields .existing-cc-grid .cc-item-actions {
        min-width: unset; } }
  .page-viewcart #frmCheckout.paypal_ppcpv-payment-form .section#creditCardInputFields .cc-input-container .paypal-buttons {
    margin-bottom: -24px; }

/*
*******************************************
Payment Methods - Page
*******************************************
*/
.field-error-msg {
  display: none; }

.fieldgroup-auxfields #billingContactsContainer .radio {
  margin: 10px 0; }
  .fieldgroup-auxfields #billingContactsContainer .radio label {
    flex-wrap: wrap; }
    .fieldgroup-auxfields #billingContactsContainer .radio label span {
      margin: 0 4px; }

.fieldgroup-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
  width: 100%; }

.fieldgroup-creditcard #stripeElements {
  margin-left: -12px;
  margin-right: -12px; }
  .fieldgroup-creditcard #stripeElements::after {
    display: block;
    clear: both;
    content: ""; }
  .fieldgroup-creditcard #stripeElements .cc-billing-address {
    padding: 0 12px;
    margin-left: 0;
    margin-right: 0; }
    .fieldgroup-creditcard #stripeElements .cc-billing-address:not(:first-of-type) {
      width: 50%;
      float: left; }
    .fieldgroup-creditcard #stripeElements .cc-billing-address .col-sm-4, .fieldgroup-creditcard #stripeElements .cc-billing-address .col-sm-7, .fieldgroup-creditcard #stripeElements .cc-billing-address .col-lg-8 {
      flex: none;
      max-width: unset; }
    .fieldgroup-creditcard #stripeElements .cc-billing-address .col-sm-2 {
      flex: none;
      max-width: unset; }
  .fieldgroup-creditcard #stripeElements .col-sm-2 {
    width: 100%; }
  .fieldgroup-creditcard #stripeElements .StripeElement {
    padding-top: 12px; }
  .fieldgroup-creditcard #stripeElements div[class*=col-] {
    padding: 0;
    float: none; }
  .fieldgroup-creditcard #stripeElements .control-label {
    width: 100%;
    padding: 0;
    float: none; }

.fieldgroup-creditcard .col-lg-8 {
  flex: none;
  max-width: unset; }

.fieldgroup-creditcard > .row .col-lg-8 .row .col-xs-6 {
  max-width: 50%;
  padding: 0 12px;
  width: 100%; }

.fieldgroup-creditcard .cc-number-field {
  background-image: url("../img/creditcards/credit-card.svg");
  background-repeat: no-repeat !important;
  background-position: center right !important; }
  .fieldgroup-creditcard .cc-number-field.visa {
    background-image: url("../img/creditcards/visa.svg"); }
  .fieldgroup-creditcard .cc-number-field.mastercard {
    background-image: url("../img/creditcards/mastercard.svg"); }
  .fieldgroup-creditcard .cc-number-field.amex {
    background-image: url("../img/creditcards/american-express.svg"); }
  .fieldgroup-creditcard .cc-number-field.discover {
    background-image: url("../img/creditcards/discover.svg"); }
  .fieldgroup-creditcard .cc-number-field.jcb {
    background-image: url("../img/creditcards/jcb.svg"); }

.fieldgroup-creditcard #billingAddressChoice .radio {
  margin: 10px 0; }

@media (min-width: 1320px) {
  .fieldgroup-creditcard .col-lg-8 {
    width: 66.66666%; }
  .fieldgroup-creditcard .fieldgroup-creditcard #stripeElements {
    max-width: calc(66.66667% + var(--spacing-2x)); } }

#cvvWhereLink, #stripeCvcWhere {
  padding: 0; }

@media (min-width: 992px) {
  .page-invoice-payment .main-grid .main-content #frmPayment {
    display: flex;
    flex-wrap: wrap; } }

@media (min-width: 1320px) {
  .fieldgroup-creditcard #stripeElements {
    max-width: calc(66.66667% + var(--spacing-2x)); } }

.page-invoice-payment #paypal_acdc_input_container .row,
.page-account-paymentmethods-manage #paypal_acdc_input_container .row {
  flex-direction: column; }
  @media (min-width: 480px) {
    .page-invoice-payment #paypal_acdc_input_container .row .col-sm-7,
    .page-account-paymentmethods-manage #paypal_acdc_input_container .row .col-sm-7 {
      flex: 0 0 66.66667%;
      max-width: 66.66667%; } }
  .page-invoice-payment #paypal_acdc_input_container .row #paypal_acdc-CreditCard,
  .page-invoice-payment #paypal_acdc_input_container .row #paypal_acdc-ExpiryDate,
  .page-invoice-payment #paypal_acdc_input_container .row #paypal_acdc-Cvc,
  .page-account-paymentmethods-manage #paypal_acdc_input_container .row #paypal_acdc-CreditCard,
  .page-account-paymentmethods-manage #paypal_acdc_input_container .row #paypal_acdc-ExpiryDate,
  .page-account-paymentmethods-manage #paypal_acdc_input_container .row #paypal_acdc-Cvc {
    margin: -0.375rem; }

.page-invoice-payment .paypal_ppcpv-payment-form #paymentGatewayInput + .fieldgroup-creditcard {
  display: none !important; }

.page-invoice-payment .paypal_ppcpv-payment-form #paymentGatewayInput .payment-instructions {
  display: none; }

@media (min-width: 480px) {
  .page-invoice-payment .paypal_ppcpv-payment-form .cc-item-name {
    width: 60%;
    max-width: 60%;
    word-break: break-all; }
  .page-invoice-payment .paypal_ppcpv-payment-form .cc-item-desc {
    display: none; }
  .page-invoice-payment .paypal_ppcpv-payment-form .cc-item-actions {
    min-width: unset; } }

/*
*******************************************
Billing - Mass Pay
*******************************************
*/
.table-masspay .table {
  margin-bottom: 0; }
  .table-masspay .table tr td {
    border: 0 !important;
    height: 24px;
    padding-top: 4px;
    padding-bottom: 4px; }
    .table-masspay .table tr td:first-of-type {
      padding-left: 22px;
      color: var(--text-body-color); }
  .table-masspay .table tr:hover {
    background: none; }

.table-masspay .masspay-title {
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg); }
  .table-masspay .masspay-title > i {
    margin-right: var(--spacing-1x); }

/*
*******************************************
Billing - Others
*******************************************
*/
#billingAddressChoice .radio-inline {
  padding-left: 0; }

#billingAddressChoice label {
  flex-wrap: wrap; }
  #billingAddressChoice label > span,
  #billingAddressChoice label > strong {
    margin-right: 5px; }

.auth3d-area {
  border: 0; }

.submit-3d {
  width: 80%;
  border: 0; }

#stripeCvcWhere,
#cvvWhereLink {
  padding: 0; }

#newBillingAddress {
  padding-left: 30px; }

#frmRemoteCardProcess {
  width: 100%; }

.payment-form.payment-btn-container > div {
  max-width: unset !important; }

.payment-form.payment-btn-container button,
.payment-form.payment-btn-container input[type="button"],
.payment-form.payment-btn-container input[type="submit"],
.payment-form.payment-btn-container .btn {
  width: 100%; }

#paypal-button-container > div {
  min-width: unset !important; }

.payment-btn-container {
  position: relative; }

/*
*******************************************
Error
*******************************************
*/
.error-page {
  display: flex;
  align-items: center;
  background: var(--error-page-bg);
  padding: var(--banner-content-padding-v) 0; }
  .error-page .container {
    flex-direction: column;
    display: flex;
    justify-content: center;
    align-items: center; }
  .error-page-title {
    font-size: 152px;
    line-height: 178px;
    font-weight: var(--font-weight-bold);
    color: #fff; }
    @media (max-width: 991.98px) {
      .error-page-title {
        font-size: 128px;
        line-height: 150px; } }
  .error-page h2 {
    margin-top: -5px;
    color: #fff;
    margin-bottom: 34px;
    text-align: center; }
  .error-page p {
    color: rgba(255, 255, 255, 0.48); }
  .error-page-actions {
    display: flex; }
    .error-page-actions .btn + .btn {
      margin-left: var(--spacing-1x); }

@media (max-width: 349px) {
  .error-page-actions .btn {
    padding-left: var(--ui-block-padding-base);
    padding-right: var(--ui-block-padding-base); } }

.page-clientareahome .tiles {
  margin-bottom: 0 !important; }
  .page-clientareahome .tiles .swiper-pagination {
    margin-top: calc(-1 * var(--ui-block-spacing-lg));
    margin-bottom: var(--ui-block-spacing-lg); }

.page-clientareahome .tile {
  margin-bottom: var(--ui-block-spacing-xlg); }

/*
*******************************************
Dashboard - Panels
*******************************************
*/
.client-home-panels .panel-heading .panel-title {
  display: flex;
  justify-content: space-between;
  align-items: center; }
  .client-home-panels .panel-heading .panel-title .btn-default {
    color: var(--btn-primary-faded-color);
    background: var(--btn-primary-faded-bg);
    border-color: var(--btn-primary-faded-border); }
    .client-home-panels .panel-heading .panel-title .btn-default:focus, .client-home-panels .panel-heading .panel-title .btn-default:focus-visible, .client-home-panels .panel-heading .panel-title .btn-default.focus {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-heading .panel-title .btn-default:hover {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled):active, .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).active,
    .open > .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).dropdown-toggle {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-active-bg);
      border-color: var(--btn-primary-faded-active-border); }
      .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled):active:hover, .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled):active:focus, .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled):active:focus-visible, .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled):active.focus, .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).active:hover, .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).active:focus, .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).active:focus-visible, .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).active.focus,
      .open > .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).dropdown-toggle:hover,
      .open > .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).dropdown-toggle:focus,
      .open > .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
      .open > .client-home-panels .panel-heading .panel-title .btn-default:not(:disabled):not(.disabled).dropdown-toggle.focus {
        color: var(--btn-primary-faded-hover-color);
        background-color: var(--btn-primary-faded-hover-bg);
        border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline) {
      color: var(--btn-primary-faded-color);
      background-color: transparent;
      border-color: transparent; }
      .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):focus, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):focus-visible, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline).focus {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
      .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):hover {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
      .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
        .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .client-home-panels .panel-heading .panel-title .btn-default.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
          color: var(--btn-primary-faded-hover-color);
          background-color: transparent;
          border-color: transparent; }
    .client-home-panels .panel-heading .panel-title .btn-default:active, .client-home-panels .panel-heading .panel-title .btn-default.active,
    .open > .client-home-panels .panel-heading .panel-title .btn-default.dropdown-toggle {
      background-image: none; }
    .client-home-panels .panel-heading .panel-title .btn-default.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .client-home-panels .panel-heading .panel-title .btn-default[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
    fieldset[disabled] .client-home-panels .panel-heading .panel-title .btn-default {
      opacity: var(--btn-disabled-opacity);
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border);
      cursor: not-allowed; }
      .client-home-panels .panel-heading .panel-title .btn-default.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .client-home-panels .panel-heading .panel-title .btn-default[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
      fieldset[disabled] .client-home-panels .panel-heading .panel-title .btn-default .loader .spinner > div {
        background: var(--btn-disabled-color); }
    .client-home-panels .panel-heading .panel-title .btn-default.disabled:not(.btn-primary):not(.btn-default), .client-home-panels .panel-heading .panel-title .btn-default[disabled]:not(.btn-primary):not(.btn-default) {
      cursor: not-allowed;
      opacity: 0.6; }
    .client-home-panels .panel-heading .panel-title .btn-default .badge {
      color: var(--btn-primary-faded-bg);
      background-color: var(--btn-primary-faded-color); }
  .client-home-panels .panel-heading .panel-title > i {
    order: 2;
    color: var(--decoration-icons); }
  .client-home-panels .panel-heading .panel-title > .fas {
    font-size: var(--ui-icon-size-small); }
  .client-home-panels .panel-heading .panel-title .pull-right {
    order: 1;
    margin-left: auto;
    margin-right: var(--ui-block-padding-base); }

.client-home-panels .panel-body {
  max-height: 323px; }
  .client-home-panels .panel-body .input-group .input-group-btn .btn {
    color: var(--btn-primary-faded-color);
    background: var(--btn-primary-faded-bg);
    border-color: var(--btn-primary-faded-border); }
    .client-home-panels .panel-body .input-group .input-group-btn .btn:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn.focus {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-body .input-group .input-group-btn .btn:hover {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled):active, .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).active,
    .open > .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).dropdown-toggle {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-active-bg);
      border-color: var(--btn-primary-faded-active-border); }
      .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled):active:hover, .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled):active:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled):active:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled):active.focus, .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).active:hover, .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).active:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).active:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).active.focus,
      .open > .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).dropdown-toggle:hover,
      .open > .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).dropdown-toggle:focus,
      .open > .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
      .open > .client-home-panels .panel-body .input-group .input-group-btn .btn:not(:disabled):not(.disabled).dropdown-toggle.focus {
        color: var(--btn-primary-faded-hover-color);
        background-color: var(--btn-primary-faded-hover-bg);
        border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline) {
      color: var(--btn-primary-faded-color);
      background-color: transparent;
      border-color: transparent; }
      .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):focus, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline).focus {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
      .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):hover {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
      .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
        .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
          color: var(--btn-primary-faded-hover-color);
          background-color: transparent;
          border-color: transparent; }
    .client-home-panels .panel-body .input-group .input-group-btn .btn:active, .client-home-panels .panel-body .input-group .input-group-btn .btn.active,
    .open > .client-home-panels .panel-body .input-group .input-group-btn .btn.dropdown-toggle {
      background-image: none; }
    .client-home-panels .panel-body .input-group .input-group-btn .btn.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .client-home-panels .panel-body .input-group .input-group-btn .btn[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
    fieldset[disabled] .client-home-panels .panel-body .input-group .input-group-btn .btn {
      opacity: var(--btn-disabled-opacity);
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border);
      cursor: not-allowed; }
      .client-home-panels .panel-body .input-group .input-group-btn .btn.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .client-home-panels .panel-body .input-group .input-group-btn .btn[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
      fieldset[disabled] .client-home-panels .panel-body .input-group .input-group-btn .btn .loader .spinner > div {
        background: var(--btn-disabled-color); }
    .client-home-panels .panel-body .input-group .input-group-btn .btn.disabled:not(.btn-primary):not(.btn-default), .client-home-panels .panel-body .input-group .input-group-btn .btn[disabled]:not(.btn-primary):not(.btn-default) {
      cursor: not-allowed;
      opacity: 0.6; }
    .client-home-panels .panel-body .input-group .input-group-btn .btn .badge {
      color: var(--btn-primary-faded-bg);
      background-color: var(--btn-primary-faded-color); }
    .client-home-panels .panel-body .input-group .input-group-btn .btn-success {
      color: var(--btn-primary-color);
      background: var(--btn-primary-bg);
      border-color: var(--btn-primary-border); }
      .client-home-panels .panel-body .input-group .input-group-btn .btn-success:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.focus {
        color: var(--btn-primary-hover-color);
        background-color: var(--btn-primary-hover-bg);
        border-color: var(--btn-primary-hover-border); }
      .client-home-panels .panel-body .input-group .input-group-btn .btn-success:hover {
        color: var(--btn-primary-hover-color);
        background-color: var(--btn-primary-hover-bg);
        border-color: var(--btn-primary-hover-border); }
      .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled):active, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).active,
      .open > .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).dropdown-toggle {
        color: var(--btn-primary-hover-color);
        background-color: var(--btn-primary-active-bg);
        border-color: var(--btn-primary-active-border); }
        .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled):active:hover, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled):active:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled):active:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled):active.focus, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).active:hover, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).active:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).active:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).active.focus,
        .open > .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).dropdown-toggle:hover,
        .open > .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).dropdown-toggle:focus,
        .open > .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
        .open > .client-home-panels .panel-body .input-group .input-group-btn .btn-success:not(:disabled):not(.disabled).dropdown-toggle.focus {
          color: var(--btn-primary-hover-color);
          background-color: var(--btn-primary-hover-bg);
          border-color: var(--btn-primary-hover-border); }
      .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline) {
        color: var(--btn-primary-color);
        background-color: transparent;
        border-color: transparent; }
        .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):focus, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline).focus {
          color: var(--btn-primary-hover-color);
          background-color: transparent;
          border-color: transparent; }
        .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):hover {
          color: var(--btn-primary-hover-color);
          background-color: transparent;
          border-color: transparent; }
        .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
          color: var(--btn-primary-hover-color);
          background-color: transparent;
          border-color: transparent; }
          .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
            color: var(--btn-primary-hover-color);
            background-color: transparent;
            border-color: transparent; }
      .client-home-panels .panel-body .input-group .input-group-btn .btn-success:active, .client-home-panels .panel-body .input-group .input-group-btn .btn-success.active,
      .open > .client-home-panels .panel-body .input-group .input-group-btn .btn-success.dropdown-toggle {
        background-image: none; }
      .client-home-panels .panel-body .input-group .input-group-btn .btn-success.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .client-home-panels .panel-body .input-group .input-group-btn .btn-success[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
      fieldset[disabled] .client-home-panels .panel-body .input-group .input-group-btn .btn-success {
        opacity: var(--btn-disabled-opacity);
        color: var(--btn-disabled-color);
        background-color: var(--btn-disabled-bg);
        border-color: var(--btn-disabled-border);
        cursor: not-allowed; }
        .client-home-panels .panel-body .input-group .input-group-btn .btn-success.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .client-home-panels .panel-body .input-group .input-group-btn .btn-success[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
        fieldset[disabled] .client-home-panels .panel-body .input-group .input-group-btn .btn-success .loader .spinner > div {
          background: var(--btn-disabled-color); }
      .client-home-panels .panel-body .input-group .input-group-btn .btn-success.disabled:not(.btn-primary):not(.btn-default), .client-home-panels .panel-body .input-group .input-group-btn .btn-success[disabled]:not(.btn-primary):not(.btn-default) {
        cursor: not-allowed;
        opacity: 0.6; }
      .client-home-panels .panel-body .input-group .input-group-btn .btn-success .badge {
        color: var(--btn-primary-bg);
        background-color: var(--btn-primary-color); }
  .client-home-panels .panel-body p {
    margin: 0; }
  .client-home-panels .panel-body .no-data {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 48px 24px 36px; }
    .client-home-panels .panel-body .no-data-icon {
      width: 64px;
      height: 64px;
      margin-bottom: 20px; }
      .client-home-panels .panel-body .no-data-icon img {
        width: 100%; }

.client-home-panels .panel-footer {
  border-top-width: 1px; }

.client-home-panels .panel .panel-mc-sso .row form {
  color: var(--text-body-color); }

.client-home-panels .panel .panel-mc-sso .row > .col-sm-6 {
  flex: unset;
  max-width: unset; }

.client-home-panels {
  /* Panel: Support Ticket List */
  /* Panel: Services List */
  /* Panel: Domain Register */ }
  .client-home-panels .panel .list-group .list-group-item {
    padding-top: var(--ui-block-padding-sm);
    padding-bottom: var(--ui-block-padding-sm); }
    .client-home-panels .panel .list-group .list-group-item.hide-expire-status .status-expiry {
      display: none; }
    .client-home-panels .panel .list-group .list-group-item.hide-product-group-name .list-group-item-group {
      display: none; }
    .client-home-panels .panel .list-group .list-group-item.hide-product-group-name .list-group-item-fullname {
      font-weight: var(--font-weight-bold); }
  .client-home-panels .panel-support-tickets .status {
    display: inline-block;
    margin: 0 0 0 4px; }
  .client-home-panels .panel-support-tickets br {
    display: none; }
  .client-home-panels .panel-active-services .list-group .list-group-item {
    padding: 0;
    transition: background var(--transition-base); }
    .client-home-panels .panel-active-services .list-group .list-group-item:last-child {
      border-bottom: none !important; }
    .client-home-panels .panel-active-services .list-group .list-group-item:hover {
      cursor: pointer;
      background: var(--table-bg-hover); }
    .client-home-panels .panel-active-services .list-group .list-group-item:not(.has-graphic) .graphic-item {
      display: none; }
    .client-home-panels .panel-active-services .list-group .list-group-item:not(.has-graphic) .list-group-item-content .list-group-item-name {
      padding-left: 0; }
    @media (max-width: 619px) {
      .client-home-panels .panel-active-services .list-group .list-group-item.has-graphic .graphic-item {
        margin-bottom: 4px; } }
  .client-home-panels .panel-active-services .list-group .list-group-item-content {
    display: flex;
    align-items: center;
    padding: var(--list-group-item-padding);
    padding-top: var(--ui-block-padding-sm);
    padding-bottom: var(--ui-block-padding-sm); }
    @media (min-width: 620px) {
      .client-home-panels .panel-active-services .list-group .list-group-item-content > div + div {
        padding-left: var(--spacing-3x); } }
    @media (max-width: 619px) {
      .client-home-panels .panel-active-services .list-group .list-group-item-content {
        flex-direction: column;
        align-items: flex-start;
        padding-right: 100px; }
        .client-home-panels .panel-active-services .list-group .list-group-item-content .list-group-item-status .label {
          position: absolute;
          top: var(--spacing-2x);
          right: var(--spacing-2x); }
        .client-home-panels .panel-active-services .list-group .list-group-item-content .list-group-item-status .status-expiry {
          margin-top: 8px;
          margin-bottom: 0; }
        .client-home-panels .panel-active-services .list-group .list-group-item-content .list-group-item-actions {
          margin-top: 8px; } }
  .client-home-panels .panel-active-services .list-group .list-group-item-name {
    display: flex;
    flex-direction: column;
    margin-right: auto; }
  .client-home-panels .panel-active-services .list-group .list-group-item-status {
    display: flex;
    align-items: center;
    white-space: nowrap;
    flex-wrap: nowrap; }
    @media (min-width: 992px) and (max-width: 1319.98px) {
      .client-home-panels .panel-active-services .list-group .list-group-item-status {
        flex-direction: column;
        align-items: flex-end; }
        .client-home-panels .panel-active-services .list-group .list-group-item-status .status-expiry {
          margin-right: 0;
          margin-bottom: 4px; } }
    @media (max-width: 767.98px) {
      .client-home-panels .panel-active-services .list-group .list-group-item-status {
        flex-direction: column;
        align-items: flex-end; }
        .client-home-panels .panel-active-services .list-group .list-group-item-status .status-expiry {
          margin-right: 0;
          margin-bottom: 4px; } }
  .client-home-panels .panel-active-services .list-group .list-group-item-actions .btn {
    min-width: 106px; }
  .client-home-panels .panel-active-services .list-group .dropdown-menu {
    display: none; }
  .client-home-panels .panel-active-services .list-group .dropdown-item {
    cursor: pointer;
    transition: color var(--transition-base), background var(--transition-base), border var(--transition-base), padding var(--transition-base); }
    .client-home-panels .panel-active-services .list-group .dropdown-item .loading {
      margin-left: auto; }
  .client-home-panels .panel-active-services .list-group-item.hide-expire-status .status-expiry {
    display: none; }
  .client-home-panels .panel-active-services .status-expiry {
    font-size: var(--font-size-sm);
    margin-right: var(--ui-block-spacing-sm); }
    .client-home-panels .panel-active-services .status-expiry i {
      margin-left: var(--ui-block-spacing-xs);
      margin-right: 0;
      margin-right: 0; }
  .client-home-panels .panel-active-services .text-domain {
    color: var(--text-lighter-color);
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    word-break: break-all; }
  .client-home-panels .panel-domain-register {
    overflow: hidden;
    position: relative;
    background: var(--panel-home-domain-bg);
    border: var(--panel-home-domain-border);
    box-shadow: var(--ui-block-shadow);
    padding: var(--ui-block-padding-xlg); }
    .client-home-panels .panel-domain-register small {
      display: none; }
    .client-home-panels .panel-domain-register p {
      margin-top: 10px;
      padding: 0 !important;
      color: var(--panel-home-domain-text-color);
      font-size: var(--font-size-xs);
      line-height: var(--line-height-xs);
      text-align: center; }
    .client-home-panels .panel-domain-register input[name="domain"] {
      min-width: 100%;
      flex-basis: 100%;
      width: 100%;
      text-align: center; }
    .client-home-panels .panel-domain-register input[name="domain"] {
      height: var(--ui-height-lg);
      padding: var(--ui-padding-base-v) var(--ui-padding-lg-h);
      font-size: var(--input-lg-font-size);
      line-height: var(--input-lg-line-height);
      border-radius: var(--input-lg-border-radius); }
      .client-home-panels .panel-domain-register input[name="domain"] select {
        height: var(--ui-height-lg);
        line-height: var(--ui-height-lg); }
      .client-home-panels .panel-domain-register input[name="domain"] textarea,
      .client-home-panels .panel-domain-register input[name="domain"] select[multiple] {
        height: auto; }
    .client-home-panels .panel-domain-register .panel-heading {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 0;
      background: none;
      border: 0; }
      .client-home-panels .panel-domain-register .panel-heading .panel-title {
        color: var(--panel-home-domain-title-color);
        font-size: var(--product-details-title-font-size);
        line-height: var(--product-details-title-line-height);
        font-weight: var(--product-details-title-font-weight);
        margin-bottom: var(--ui-block-spacing-lg);
        display: flex;
        justify-content: center;
        text-align: center; }
    .client-home-panels .panel-domain-register .input-wrapper {
      padding: var(--ui-block-padding-base); }
    .client-home-panels .panel-domain-register .input-actions {
      display: flex;
      margin-top: 10px; }
      .client-home-panels .panel-domain-register .input-actions .btn {
        flex: 1; }
        .client-home-panels .panel-domain-register .input-actions .btn:first-child {
          margin-right: var(--spacing-1x); }
        .client-home-panels .panel-domain-register .input-actions .btn .btn-default {
          color: var(--text-primary-color); }
    .client-home-panels .panel-domain-register .panel-body {
      padding: 0; }
      .client-home-panels .panel-domain-register .panel-body .input-group.margin-10 {
        flex-wrap: wrap;
        margin: 0; }
        .client-home-panels .panel-domain-register .panel-body .input-group.margin-10.px-2.pb-2 {
          padding: 0 !important; }
        .client-home-panels .panel-domain-register .panel-body .input-group.margin-10 .input-group-btn {
          margin-top: var(--ui-block-spacing-lg);
          display: flex;
          align-items: center;
          justify-content: center;
          width: 100%;
          flex-direction: row-reverse; }
          .client-home-panels .panel-domain-register .panel-body .input-group.margin-10 .input-group-btn .btn {
            flex: 1;
            height: var(--ui-height-lg);
            padding: var(--ui-padding-base-v) var(--ui-padding-lg-h);
            font-size: var(--btn-lg-font-size);
            line-height: var(--btn-lg-line-height);
            border-radius: var(--btn-lg-border-radius);
            margin-left: var(--spacing-2x); }
            .client-home-panels .panel-domain-register .panel-body .input-group.margin-10 .input-group-btn .btn:last-child {
              margin-left: 0; }
      .client-home-panels .panel-domain-register .panel-body > p {
        display: none; }
    .client-home-panels .panel-domain-register .panel-footer {
      margin-bottom: -40px;
      margin-top: var(--ui-block-spacing-xxlg);
      border-top: 1px solid rgba(255, 255, 255, 0.1);
      color: var(--panel-home-domain-text-color); }
  .client-home-panels .text-last-updated,
  .client-home-panels small {
    display: block;
    font-size: var(--font-size-sm);
    color: var(--text-lighter-color); }
  .client-home-panels .list-group {
    max-height: 323px;
    overflow-y: auto;
    overflow-x: hidden;
    position: relative; }
    .client-home-panels .list-group .list-group-item {
      color: var(--text-heading-color); }
    .client-home-panels .list-group.has-checkboxes .list-group-item {
      position: relative;
      padding-left: 48px; }
      .client-home-panels .list-group.has-checkboxes .list-group-item .checkbox-styled {
        position: absolute;
        top: 18px;
        left: 16px; }
  .client-home-panels .panel-sitejet-builder .panel-body {
    max-height: unset; }

.client-home-alerts {
  box-shadow: var(--ui-block-shadow); }
  .client-home-alerts a.alert:hover .alert-actions .btn:first-child {
    opacity: 1; }
  .client-home-alerts.alert-group {
    margin-bottom: 0; }
    .client-home-alerts.alert-group .alert:last-child {
      margin-bottom: var(--spacing-3x); }

.page-clientareahome [data-service-id] .dropdown-item {
  cursor: pointer;
  transition: color var(--transition-base), background var(--transition-base), border var(--transition-base), transform var(--transition-base), padding var(--transition-base); }
  .page-clientareahome [data-service-id] .dropdown-item .loading {
    margin-left: auto; }
  .page-clientareahome [data-service-id] .dropdown-item.disabled {
    opacity: 0.5;
    cursor: not-allowed; }
    .page-clientareahome [data-service-id] .dropdown-item.disabled:hover {
      padding: var(--dropdown-link-padding-v) var(--dropdown-link-padding-h); }

/*
*******************************************
4. Home Page - Others
*******************************************
*/
div.home-twitter {
  margin-top: 20px;
  margin-bottom: var(--ui-block-spacing-xxlg); }

div.tweet > i {
  color: #2BABCF;
  float: left;
  margin-right: 15px; }

div.tweet span {
  font-size: var(--ui-icon-size-small);
  color: #ccc; }

/*
*******************************************
Knowledgebase categories section
*******************************************
*/
.section--kbcategories {
  margin-top: 56px; }

.section--kbarticles {
  margin-top: var(--ca-section-spacing);
  margin-bottom: var(--spacing-10x); }
  @media (max-width: 1319.98px) {
    .section--kbarticles {
      margin-bottom: var(--ca-section-spacing); } }

/*
*******************************************
Knowledgebase categories
*******************************************
*/
.kb-categories .list-group--boxes {
  flex-direction: row;
  gap: 24px;
  box-shadow: none;
  background: none;
  border: none; }
  .kb-categories .list-group--boxes .list-group-item {
    align-items: center;
    justify-content: center;
    flex-direction: column;
    height: 170px;
    max-width: calc(33.33% - 16px);
    width: calc(33.33% - 16px);
    text-align: center;
    padding: 32px;
    border-radius: var(--border-radius-sm);
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.12), 0px 8px 40px rgba(0, 0, 0, 0.08);
    border: unset; }
    .kb-categories .list-group--boxes .list-group-item-body {
      margin-top: var(--spacing-3x); }
      .kb-categories .list-group--boxes .list-group-item-body .list-group-item-heading {
        font-size: var(--font-size-lg);
        line-height: var(--line-height-lg);
        color: var(--text-heading-color); }
    .kb-categories .list-group--boxes .list-group-item svg {
      min-height: 64px;
      min-width: 64px; }
    @media (max-width: 991.98px) {
      .kb-categories .list-group--boxes .list-group-item {
        min-width: unset;
        width: 210px; } }
  @media (max-width: 767.98px) {
    .kb-categories .list-group--boxes {
      display: grid;
      grid-auto-rows: auto; }
      .kb-categories .list-group--boxes .list-group-item {
        min-width: 210px;
        width: unset; } }

.kbarticles .list-group {
  border-radius: var(--border-radius-sm); }
  .kbarticles .list-group-item:first-of-type {
    border-top-left-radius: var(--border-radius-sm);
    border-top-right-radius: var(--border-radius-sm); }
  .kbarticles .list-group-item p {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm); }

.kbdownloads-panels {
  background: var(--card-bg);
  box-shadow: var(--panel-box-shadow);
  border-radius: var(--card-border-radius); }

.kbdownloads-panel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px;
  border-bottom: 1px solid var(--gray-lighter-4); }
  .kbdownloads-panel h6 {
    margin-bottom: var(--spacing-1x); }
  .kbdownloads-panel p {
    margin-bottom: 0;
    color: var(--text-body-color); }
  .kbdownloads-panel .btn {
    width: 50px;
    height: 50px;
    border-radius: var(--border-radius-base); }
    @media (max-width: 767px) {
      .kbdownloads-panel .btn {
        width: 30px;
        height: 30px; } }
    .kbdownloads-panel .btn i {
      margin-right: 0; }

/*
*******************************************
 Login - General
*******************************************
*/
.login {
  width: 100%;
  max-width: var(--login-width); }
  .login .logo {
    display: block;
    height: var(--login-logo-height); }
    .login .logo > img {
      max-height: 100%; }
  .login-icon {
    margin-bottom: var(--ui-block-spacing-lg);
    display: flex;
    justify-content: center;
    align-items: center; }
  .login-header {
    text-align: center;
    margin-bottom: var(--login-header-margin-bottom); }
  .login-title {
    display: block;
    color: var(--login-title-color);
    font-size: var(--login-title-font-size);
    font-weight: var(--login-title-font-weight);
    line-height: var(--login-title-line-height);
    text-align: center;
    padding-bottom: var(--ui-block-padding-base); }
  .login-desc {
    display: block;
    margin: -8px 0 24px 0;
    color: var(--login-desc-color);
    font-size: var(--login-desc-font-size);
    font-weight: var(--login-desc-font-weight);
    text-align: center; }
  .login-body {
    padding: var(--login-padding); }
    .login-body.invite {
      padding: var(--login-invite-padding); }
    .login-body .captchaimage.input-group .input-group-addon {
      height: var(--ui-height-base); }
    .login-body .captchaimage.input-group #inputCaptcha {
      height: var(--ui-height-base); }
    .login-body.register .login-social .social-signin-btns {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap; }
    .login-body.register .login-social .btn.btn-social {
      min-width: 47%;
      margin: 0 0 3%; }
      .login-body.register .login-social .btn.btn-social:first-of-type {
        margin-right: 3%; }
    @media (max-width: 767.98px) {
      .login-body.register .login-social .btn.btn-social {
        margin: 0 0 8px; }
        .login-body.register .login-social .btn.btn-social:first-of-type {
          margin-right: 0; } }
  .login-wrapper {
    border: var(--login-border);
    border-radius: var(--login-border-radius);
    background: var(--login-bg);
    box-shadow: var(--login-box-shadow); }
  .login-footer {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: var(--ui-block-padding-base) 0 var(--ui-block-padding-xs) 0;
    background: var(--login-footer-bg);
    border-radius: 0 0 var(--login-border-radius) var(--login-border-radius); }
  .login-social {
    margin: calc(-1 * var(--spacing-1x)) 0 calc(2 * var(--spacing-1x)); }
  .login-divider {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    margin: calc(2 * var(--spacing-1x)) 0;
    color: var(--text-lighter-color);
    text-align: center;
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm); }
    .login-divider span:first-child,
    .login-divider span:last-child {
      display: block;
      flex: 1;
      height: 1px;
      background: var(--ui-block-divider-color); }
    .login-divider span {
      padding: 0 var(--spacing-1x);
      position: relative;
      text-transform: lowercase; }
  .login-form + .login-divider + .login-social {
    margin-bottom: 0;
    margin-top: 12px; }
    .login-form + .login-divider + .login-social .social-signin-btns {
      padding: 0; }
  .login-captcha :has(div) {
    margin-bottom: var(--ui-block-spacing-lg); }
  .login-language {
    border-top: 1px solid var(--ui-block-divider-color);
    padding: var(--ui-block-padding-sm);
    text-align: center; }
  .login-footer a,
  .login-language a {
    color: var(--login-link-color); }
  .login .login-form > .form-group:last-of-type {
    margin-bottom: 0; }
  .login .loginForm [align="center"] input[type="submit"] {
    display: none; }
  .login .message {
    box-shadow: none;
    border: none; }
  .login .social-signin-btns {
    margin-top: calc(2 * var(--spacing-1x)); }

.login-lg {
  max-width: var(--login-lg-width); }

@media (max-width: 767.98px) {
  .login-body {
    padding: var(--login-mob-padding); }
    .login-body.invite {
      padding: var(--login-invite-mob-padding); } }

/*
*******************************************
 Login - Page
*******************************************
*/
.page-login .main-body:not(.main-body-has-sidebar):not(.main-body-has-sidebar-illustration):not(.main-body-has-bottom-illustration),
.page-login .main-body:not(.main-body-has-sidebar) .container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }

.page-login .form-group .checkbox-styled {
  margin-right: 8px; }

.page-login-primary .main-body {
  background: var(--primary-block-bg) !important; }

.page-login-secondary .main-body {
  background: var(--secondary-block-bg) !important; }

/*
*******************************************
Login Page - Sidebar
*******************************************
*/
.page-login .main-body-sidebar {
  z-index: 1;
  box-shadow: var(--login-sidebar-box-shadow); }
  .page-login .main-body-sidebar .sidebar-logo .logo {
    display: block;
    height: var(--login-logo-height); }
    .page-login .main-body-sidebar .sidebar-logo .logo > img {
      max-height: 100%; }
  .page-login .main-body-sidebar .sidebar-news-desc,
  .page-login .main-body-sidebar .sidebar-news-desc p {
    font-size: var(--login-sidebar-desc-font-size);
    font-weight: var(--login-sidebar-desc-font-weight);
    line-height: var(--login-sidebar-desc-line-height); }
  .page-login .main-body-sidebar .swiper-container {
    flex-direction: row; }
    .page-login .main-body-sidebar .swiper-container .swiper-wrapper {
      align-items: flex-start;
      position: relative;
      display: flex;
      flex-direction: row; }
      .page-login .main-body-sidebar .swiper-container .swiper-wrapper .swiper-slide {
        min-width: 100%;
        padding-right: var(--main-body-sidebar-padding-h); }
    .page-login .main-body-sidebar .swiper-container .swiper-pagination {
      display: flex;
      margin-top: var(--ui-block-spacing-lg); }
      .page-login .main-body-sidebar .swiper-container .swiper-pagination-bullet {
        width: 14px;
        height: 14px;
        margin-right: 18px;
        border-radius: 50%;
        display: block; }

.page-login .main-body-content {
  background-color: var(--main-body-sidebar-content-bg); }
  .page-login .main-body-content .login {
    margin: auto; }

/* Login Page Siebar - Styles */
.main-body-sidebar-primary {
  background: var(--primary-block-bg); }
  .main-body-sidebar-primary .sidebar-title {
    color: var(--primary-block-title-color); }
  .main-body-sidebar-primary .sidebar-news-date {
    color: var(--primary-block-text-faded-color); }
  .main-body-sidebar-primary .sidebar-news-title {
    color: var(--primary-block-title-color); }
  .main-body-sidebar-primary .sidebar-news-desc,
  .main-body-sidebar-primary .sidebar-news-desc p {
    color: var(--primary-block-text-color); }
  .main-body-sidebar-primary .swiper-container .swiper-pagination-bullet {
    background-color: var(--primary-block-dot-nav-bg); }
    .main-body-sidebar-primary .swiper-container .swiper-pagination-bullet:active, .main-body-sidebar-primary .swiper-container .swiper-pagination-bullet:hover, .main-body-sidebar-primary .swiper-container .swiper-pagination-bullet:focus {
      background-color: var(--primary-block-dot-nav-hover-bg); }
    .main-body-sidebar-primary .swiper-container .swiper-pagination-bullet-active {
      background-color: var(--primary-block-dot-nav-active-bg); }

.main-body-sidebar-secondary {
  background: var(--secondary-block-bg); }
  .main-body-sidebar-secondary .sidebar-title {
    color: var(--secondary-block-title-color); }
  .main-body-sidebar-secondary .sidebar-news-date {
    color: var(--secondary-block-text-faded-color); }
  .main-body-sidebar-secondary .sidebar-news-title {
    color: var(--secondary-block-title-color); }
  .main-body-sidebar-secondary .sidebar-news-desc,
  .main-body-sidebar-secondary .sidebar-news-desc p {
    color: var(--secondary-block-text-color); }
  .main-body-sidebar-secondary .swiper-container .swiper-pagination-bullet {
    background-color: var(--secondary-block-dot-nav-bg); }
    .main-body-sidebar-secondary .swiper-container .swiper-pagination-bullet:active, .main-body-sidebar-secondary .swiper-container .swiper-pagination-bullet:hover, .main-body-sidebar-secondary .swiper-container .swiper-pagination-bullet:focus {
      background-color: var(--secondary-block-dot-nav-hover-bg); }
    .main-body-sidebar-secondary .swiper-container .swiper-pagination-bullet-active {
      background-color: var(--secondary-block-dot-nav-active-bg); }

.page-password-reset-container .main-body-has-sidebar .main-body-content .login {
  margin-top: auto;
  margin-bottom: auto; }

.page-password-reset-container .loginForm .form-group {
  margin-bottom: 16px; }

@media (min-width: 1320px) {
  .page-login.register-page .main-body-content .login-header {
    display: none; } }

@media (min-width: 992px) {
  .page-login:not(.register-page) .main-body:not(.main-body-has-bottom-illustration):not(.main-body-has-sidebar-illustration) .main-body-content .login-header {
    display: none; } }

@media (max-width: 1319.98px) {
  .page-login.register-page .main-body-has-sidebar .main-body-sidebar {
    display: none; }
  .page-login.register-page .main-body-has-sidebar .main-body-content {
    min-height: 100vh;
    max-height: 100vh;
    width: 100%; }
    .page-login.register-page .main-body-has-sidebar .main-body-content::-webkit-scrollbar {
      background-color: transparent; } }

@media (max-width: 991.98px) {
  .page-login:not(.register-page) .main-body-has-sidebar .main-body-sidebar {
    display: none; }
  .page-login:not(.register-page) .main-body-has-sidebar .main-body-content {
    min-height: 100%;
    max-height: 100%;
    width: 100%; }
    .page-login:not(.register-page) .main-body-has-sidebar .main-body-content::-webkit-scrollbar {
      background-color: transparent; } }

@media (min-width: 768px) {
  .page-clientregister .social-signin-btns {
    flex-wrap: nowrap; } }

@media (max-width: 479.98px) {
  .page-login .social-signin-btns .btn-social {
    margin-left: 0;
    margin-right: 0; } }

.social-media .row {
  top: 6px !important; }

.page-login .main-body-has-sidebar-illustration {
  display: flex;
  justify-content: center;
  align-items: stretch;
  padding: 0; }
  .page-login .main-body-has-sidebar-illustration .main-body-content {
    display: flex;
    justify-content: center;
    padding: var(--ui-block-padding-xlg) var(--ui-block-padding-base); }
    .page-login .main-body-has-sidebar-illustration .main-body-content .login {
      z-index: 1;
      margin: unset; }
  .page-login .main-body-has-sidebar-illustration .main-body-content,
  .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration {
    width: 100%; }
  .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration {
    position: relative;
    overflow: hidden; }
    .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration > div {
      position: relative; }
    .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration .side-illustration-bg {
      position: absolute;
      top: 0;
      opacity: 0.5; }
  @media (min-width: 1320px) {
    .page-login .main-body-has-sidebar-illustration .main-body-content {
      align-items: center; }
    .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration {
      display: flex;
      align-items: center;
      justify-content: center; }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration::before {
        content: '';
        width: 100%;
        position: absolute;
        top: 0;
        height: 248px; }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration::after {
        content: '';
        width: 100%;
        position: absolute;
        bottom: 0;
        height: 248px; }
    .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-default {
      background: var(--gray-gradient-v); }
    .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-primary {
      background: var(--brand-primary-gradient-v); }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-primary::before {
        background: linear-gradient(180deg, var(--brand-primary-darker) 0%, transparent 100%); }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-primary::after {
        background: linear-gradient(360deg, var(--brand-primary-gradient-end) 0%, transparent 100%); }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-primary .side-illustration-bg {
        mix-blend-mode: overlay; }
    .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-secondary {
      background: var(--brand-secondary-gradient-v); }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-secondary::before {
        background: linear-gradient(180deg, var(--brand-secondary-gradient-start) 0%, transparent 100%); }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-secondary::after {
        background: linear-gradient(360deg, var(--brand-secondary-gradient-end) 0%, transparent 100%); }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-secondary .side-illustration-bg {
        mix-blend-mode: overlay; }
    .page-login .main-body-has-sidebar-illustration .bottom-side-illustration {
      display: none; }
    .page-login .main-body-has-sidebar-illustration .side-illustration-bg {
      mix-blend-mode: overlay; } }
  @media (max-width: 1319.98px) {
    .page-login .main-body-has-sidebar-illustration {
      align-items: flex-start; }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration > div {
        flex-wrap: nowrap;
        width: 100%; }
        .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration > div::before {
          content: '';
          width: 100%;
          position: absolute;
          bottom: 0;
          height: 248px;
          background: linear-gradient(360deg, var(---gray-gradient-end) 0%, transparent 100%); }
        .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration > div .side-illustration {
          display: none; }
        .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration > div .bottom-side-illustration {
          display: block;
          min-width: max-content; }
          .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration > div .bottom-side-illustration-right {
            margin-left: auto; }
          .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration > div .bottom-side-illustration-left {
            margin-right: auto; }
      .page-login .main-body-has-sidebar-illustration .main-body {
        width: 100%; }
        .page-login .main-body-has-sidebar-illustration .main-body .login {
          position: relative;
          z-index: 1; }
      .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration {
        position: absolute;
        width: 100%;
        bottom: 0;
        max-height: max-content; } }

.page-login:not(.lagom-futuristic) .main-body-sidebar-illustration-default .side-illustration-bg {
  mix-blend-mode: unset; }

@media (min-width: 1320px) {
  .page-login:not(.lagom-futuristic) .main-body-sidebar-illustration-default::before {
    background: linear-gradient(180deg, var(--gray-gradient-end) 0%, transparent 100%); }
  .page-login:not(.lagom-futuristic) .main-body-sidebar-illustration-default::after {
    background: linear-gradient(360deg, var(--gray-gradient-end) 0%, transparent 100%); } }

.lagom-dark-mode .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-default .side-illustration-bg {
  opacity: 0.3; }

.lagom-dark-mode .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-secondary .side-illustration-bg, .lagom-dark-mode .page-login .main-body-has-sidebar-illustration .main-body-sidebar-illustration-primary .side-illustration-bg {
  opacity: 0.75; }

.page-login .main-body-has-bottom-illustration {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative; }
  .page-login .main-body-has-bottom-illustration .login {
    z-index: 1;
    position: relative; }
  @media (max-width: 991.98px) {
    .page-login .main-body-has-bottom-illustration {
      align-items: flex-start;
      padding: 64px 0 72px 0; } }

.page-login .main-body-bottom-illustration {
  position: absolute;
  bottom: 0;
  width: 100%;
  overflow: hidden; }
  .page-login .main-body-bottom-illustration > div {
    flex-wrap: nowrap;
    width: 100%;
    align-items: flex-end;
    position: relative; }
    .page-login .main-body-bottom-illustration > div::before {
      content: '';
      width: 100%;
      position: absolute;
      bottom: 0;
      height: 227px; }
    .page-login .main-body-bottom-illustration > div .bottom-illustration {
      min-width: max-content; }
      .page-login .main-body-bottom-illustration > div .bottom-illustration-left {
        margin-right: auto; }
      .page-login .main-body-bottom-illustration > div .bottom-illustration-right {
        margin-left: auto; }

.page-login-default .main-body-bottom-illustration > div::before {
  background: linear-gradient(360deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); }

.page-login-primary .main-body-bottom-illustration > div::before {
  background: linear-gradient(360deg, var(--brand-primary-gradient-end) 0%, transparent 100%); }

.page-login-secondary .main-body-bottom-illustration > div::before {
  background: linear-gradient(360deg, var(--brand-secondary-gradient-end) 0%, transparent 100%); }

.page-login .main-body-bottom-illustration [data-animation-cube],
.page-login .main-body-sidebar-illustration [data-animation-cube] {
  opacity: 0; }

.page-login .main-body-bottom-illustration[data-animation-css]:not(.is-animated) [data-bg-element-animation],
.page-login .main-body-bottom-illustration[data-animation-css]:not(.is-animated) [data-animation-path],
.page-login .main-body-bottom-illustration[data-animation-css]:not(.is-animated) [data-server-animation-top],
.page-login .main-body-sidebar-illustration[data-animation-css]:not(.is-animated) [data-bg-element-animation],
.page-login .main-body-sidebar-illustration[data-animation-css]:not(.is-animated) [data-animation-path],
.page-login .main-body-sidebar-illustration[data-animation-css]:not(.is-animated) [data-server-animation-top] {
  animation: unset !important; }

.page-login .main-body-bottom-illustration[data-animation-css].is-paused [data-animation-cube],
.page-login .main-body-bottom-illustration[data-animation-css].is-paused [data-animation-coin],
.page-login .main-body-bottom-illustration[data-animation-css].is-paused [data-animation-vertical-loop-sm],
.page-login .main-body-bottom-illustration[data-animation-css].is-paused [data-animation-vertical-loop],
.page-login .main-body-bottom-illustration[data-animation-css].is-paused [data-animation-up-down],
.page-login .main-body-bottom-illustration[data-animation-css].is-paused [data-animation-down-up],
.page-login .main-body-sidebar-illustration[data-animation-css].is-paused [data-animation-cube],
.page-login .main-body-sidebar-illustration[data-animation-css].is-paused [data-animation-coin],
.page-login .main-body-sidebar-illustration[data-animation-css].is-paused [data-animation-vertical-loop-sm],
.page-login .main-body-sidebar-illustration[data-animation-css].is-paused [data-animation-vertical-loop],
.page-login .main-body-sidebar-illustration[data-animation-css].is-paused [data-animation-up-down],
.page-login .main-body-sidebar-illustration[data-animation-css].is-paused [data-animation-down-up] {
  animation-play-state: paused; }

.page-login .main-body-bottom-illustration[data-animation-css] [data-bg-element-animation],
.page-login .main-body-bottom-illustration[data-animation-css] [data-top-left-animation],
.page-login .main-body-bottom-illustration[data-animation-css] [data-top-right-animation],
.page-login .main-body-bottom-illustration[data-animation-css] [data-server-animation-top],
.page-login .main-body-sidebar-illustration[data-animation-css] [data-bg-element-animation],
.page-login .main-body-sidebar-illustration[data-animation-css] [data-top-left-animation],
.page-login .main-body-sidebar-illustration[data-animation-css] [data-top-right-animation],
.page-login .main-body-sidebar-illustration[data-animation-css] [data-server-animation-top] {
  opacity: 0; }

.page-login .main-body-bottom-illustration.is-animated [data-animation-path],
.page-login .main-body-sidebar-illustration.is-animated [data-animation-path] {
  will-change: transform, opacity;
  animation-timing-function: linear;
  animation-fill-mode: forwards; }
  .page-login .main-body-bottom-illustration.is-animated [data-animation-path][data-animation-path-1],
  .page-login .main-body-sidebar-illustration.is-animated [data-animation-path][data-animation-path-1] {
    animation-name: pathAnimation1-bottom-login;
    animation-duration: 2s;
    animation-delay: 1.08s; }

.page-login .main-body-bottom-illustration.is-animated [data-bg-element-animation],
.page-login .main-body-sidebar-illustration.is-animated [data-bg-element-animation] {
  animation-name: sectionBackgroundFadeTop0-bottom-login;
  animation-duration: 1s;
  animation-delay: 0s;
  animation-timing-function: ease-in;
  animation-fill-mode: forwards; }
  .page-login .main-body-bottom-illustration.is-animated [data-bg-element-animation][data-animation-type-1],
  .page-login .main-body-sidebar-illustration.is-animated [data-bg-element-animation][data-animation-type-1] {
    animation-name: sectionBackgroundFadeTop1-bottom-login; }
  .page-login .main-body-bottom-illustration.is-animated [data-bg-element-animation][data-animation-type-2],
  .page-login .main-body-sidebar-illustration.is-animated [data-bg-element-animation][data-animation-type-2] {
    animation-name: sectionBackgroundFadeTop2-bottom-login; }
  .page-login .main-body-bottom-illustration.is-animated [data-bg-element-animation][data-animation-type-3],
  .page-login .main-body-sidebar-illustration.is-animated [data-bg-element-animation][data-animation-type-3] {
    animation-name: sectionBackgroundFadeTop3-bottom-login; }

.page-login .main-body-bottom-illustration.is-animated [data-animation-cube],
.page-login .main-body-sidebar-illustration.is-animated [data-animation-cube] {
  will-change: transform, opacity;
  animation-name: cubeLoop-bottom-login;
  animation-duration: 2.20s;
  animation-delay: 1.08s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-fill-mode: forwards; }
  .page-login .main-body-bottom-illustration.is-animated [data-animation-cube]:nth-child(1),
  .page-login .main-body-sidebar-illustration.is-animated [data-animation-cube]:nth-child(1) {
    animation-delay: 0.32s; }
  .page-login .main-body-bottom-illustration.is-animated [data-animation-cube]:nth-child(2),
  .page-login .main-body-sidebar-illustration.is-animated [data-animation-cube]:nth-child(2) {
    animation-delay: 0.96s; }
  .page-login .main-body-bottom-illustration.is-animated [data-animation-cube]:nth-child(3),
  .page-login .main-body-sidebar-illustration.is-animated [data-animation-cube]:nth-child(3) {
    animation-delay: 1.24s; }
  .page-login .main-body-bottom-illustration.is-animated [data-animation-cube][data-animation-cube-1],
  .page-login .main-body-sidebar-illustration.is-animated [data-animation-cube][data-animation-cube-1] {
    --cubeStart: 60px;
    --cubeGap: -50px; }
  .page-login .main-body-bottom-illustration.is-animated [data-animation-cube][data-animation-cube-2],
  .page-login .main-body-sidebar-illustration.is-animated [data-animation-cube][data-animation-cube-2] {
    --cubeStart: 40px;
    --cubeGap: -70px; }
  .page-login .main-body-bottom-illustration.is-animated [data-animation-cube][data-animation-cube-3],
  .page-login .main-body-sidebar-illustration.is-animated [data-animation-cube][data-animation-cube-3] {
    --cubeStart: 20px;
    --cubeGap: -70px; }

.page-login .main-body-bottom-illustration.is-animated [data-server-animation],
.page-login .main-body-sidebar-illustration.is-animated [data-server-animation] {
  animation-duration: 1s;
  animation-delay: 0s;
  animation-timing-function: cubic-bezier(0.16, 0, 0, 1);
  animation-fill-mode: forwards; }
  .page-login .main-body-bottom-illustration.is-animated [data-server-animation][data-server-animation-top],
  .page-login .main-body-sidebar-illustration.is-animated [data-server-animation][data-server-animation-top] {
    animation-name: serverAnimationTop-bottom-login; }

.page-login .main-body-bottom-illustration.is-animated [data-animation-vertical-loop],
.page-login .main-body-sidebar-illustration.is-animated [data-animation-vertical-loop] {
  animation-name: elementLoopVertical;
  animation-duration: 3.5s;
  animation-delay: 0s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out; }

@keyframes pathAnimation1-bottom-login {
  from {
    stroke-dashoffset: 800; }
  to {
    stroke-dashoffset: 0; } }

@keyframes sectionBackgroundFadeTop0-bottom-login {
  0% {
    transform: translate3d(0px, 0, 0px);
    opacity: 0; }
  48% {
    opacity: 1; }
  100% {
    transform: translate3d(0px, 0, 0px);
    opacity: 1; } }

@keyframes sectionBackgroundFadeTop1-bottom-login {
  0% {
    transform: translate3d(0px, 16px, 0px);
    opacity: 0; }
  48% {
    opacity: 1; }
  100% {
    transform: translate3d(0px, 0, 0px);
    opacity: 1; } }

@keyframes sectionBackgroundFadeTop2-bottom-login {
  0% {
    transform: translate3d(0px, 32px, 0px);
    opacity: 0; }
  48% {
    opacity: 1; }
  100% {
    transform: translate3d(0px, 0, 0px);
    opacity: 1; } }

@keyframes sectionBackgroundFadeTop3-bottom-login {
  0% {
    transform: translate3d(0px, 48px, 0px);
    opacity: 0; }
  48% {
    opacity: 1; }
  100% {
    transform: translate3d(0px, 0, 0px);
    opacity: 1; } }

@keyframes sectionBackgroundFadeTop4-bottom-login {
  0% {
    transform: translate3d(0px, 56px, 0px);
    opacity: 0; }
  48% {
    opacity: 1; }
  100% {
    transform: translate3d(0px, 0, 0px);
    opacity: 1; } }

@keyframes cubeLoop-bottom-login {
  0% {
    transform: translate3d(0px, var(--cubeStart), 0px);
    opacity: 0; }
  10%, 60% {
    opacity: 1; }
  to {
    transform: translate3d(0px, var(--cubeGap), 0px);
    opacity: 0; } }

@keyframes serverAnimationTop-bottom-login {
  0% {
    transform: translate3d(0px, 32px, 0px);
    opacity: 0; }
  48% {
    opacity: 1; }
  100% {
    transform: translate3d(0px, 0, 0px);
    opacity: 1; } }

@keyframes elementLoopVertical {
  0% {
    transform: translate3d(0px, 0px, 0px); }
  50% {
    transform: translate3d(0px, -15px, 0px); }
  100% {
    transform: translate3d(0px, 0px, 0px); } }

.page-login.lagom-futuristic .main-body-has-bottom-illustration .login-wrapper,
.page-login.lagom-futuristic .main-body-has-sidebar-illustration .login-wrapper {
  position: relative; }
  .page-login.lagom-futuristic .main-body-has-bottom-illustration .login-wrapper::before,
  .page-login.lagom-futuristic .main-body-has-sidebar-illustration .login-wrapper::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: var(--login-bg);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    z-index: -1; }

.page-login-default.lagom-futuristic .main-body-bottom-illustration > div::before {
  background: linear-gradient(360deg, var(--body-bg) 0%, transparent 100%); }

.page-login.lagom-futuristic .main-body-sidebar-illustration-default {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }
  .page-login.lagom-futuristic .main-body-sidebar-illustration-default .side-illustration.side-illustration-bg {
    mix-blend-mode: color-burn; }

@media (max-width: 1319.98px) {
  .page-login.lagom-futuristic .main-body-has-sidebar-illustration .main-body-sidebar-illustration > div::before {
    background: linear-gradient(360deg, var(--body-bg) 0%, transparent 100%); } }

/*
*******************************************
 Network Status
*******************************************
*/
.network-status {
  border: var(--ui-block-border);
  box-shadow: var(--ui-block-shadow);
  background: var(--ui-block-bg);
  border-radius: var(--border-radius-base); }
  .network-status-top {
    background: var(--ui-block-header-bg);
    padding: 16px;
    border-bottom: 1px solid var(--ui-block-divider-color);
    display: flex;
    align-items: center;
    justify-content: space-between; }
    .network-status-top label {
      font-size: var(--font-size-sm);
      color: var(--text-lighter-color);
      margin-right: var(--spacing-1x);
      margin-bottom: 0; }
    .network-status-top .form-control {
      display: inline;
      width: auto; }
    .network-status-top > .d-flex {
      align-items: center; }
  .network-status-body > .panel:not(:last-of-type) {
    border: 1px solid var(--gray-lighter-4);
    border-width: 0 0 1px 0; }
  .network-status-body .panel {
    border-width: 0;
    margin-bottom: 0;
    box-shadow: none; }
    .network-status-body .panel:not(:last-child) {
      border-radius: 0; }
    .network-status-body .panel-heading {
      background: none;
      border: 0;
      font-size: var(--font-size-lg);
      line-height: var(--line-height-lg);
      padding-left: var(--spacing-3x); }
    .network-status-body .panel-title {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .network-status-body .panel-title span {
        font-size: var(--font-size-md);
        color: var(--text-body-color);
        font-weight: var(--font-weight-base); }
        .network-status-body .panel-title span i {
          color: var(--gray-icons);
          margin-right: var(--spacing-1x); }
      @media (max-width: 479.98px) {
        .network-status-body .panel-title {
          flex-direction: column; }
          .network-status-body .panel-title span {
            margin-top: var(--spacing-1x); } }
    .network-status-body .panel-body {
      padding: 0 var(--spacing-3x); }
      .network-status-body .panel-body > p:last-child {
        margin-bottom: var(--spacing-1x); }
    .network-status-body .panel-footer {
      display: flex;
      border: 0;
      padding-left: var(--spacing-3x); }
      .network-status-body .panel-footer > * + * {
        margin-left: var(--spacing-3x); }
      .network-status-body .panel-footer div {
        color: var(--text-lighter-color); }
        .network-status-body .panel-footer div i {
          font-size: var(--ui-icon-size-small);
          margin-right: var(--spacing-1x); }
      @media (max-width: 767.98px) {
        .network-status-body .panel-footer {
          flex-direction: column; }
          .network-status-body .panel-footer div + div {
            margin: var(--spacing-1x) 0 0 0; } }
  .network-status-body .priority {
    color: var(--text-body-color);
    position: relative;
    margin-bottom: var(--spacing-3x);
    display: flex;
    flex-wrap: wrap; }
    .network-status-body .priority:before {
      position: absolute;
      font-family: var(--font-family-icons-small);
      content: "\e91f";
      top: 5px;
      left: 0;
      font-size: var(--ui-icon-size-small);
      height: 12px;
      width: 12px;
      display: block;
      line-height: 1; }
    .network-status-body .priority-text {
      padding: 0 8px 0 18px; }
    .network-status-body .priority-affecting {
      color: var(--text-lighter-color); }
    .network-status-body .priority-medium:before,
    .network-status-body .priority-medium .priority-text {
      color: var(--text-warning-color); }
    .network-status-body .priority-high:before,
    .network-status-body .priority-high .priority-text {
      color: #ff7849; }
    .network-status-body .priority-critical:before,
    .network-status-body .priority-critical .priority-text {
      color: var(--text-danger-color); }
    @media (max-width: 767.98px) {
      .network-status-body .priority {
        flex-direction: column;
        margin-bottom: var(--spacing-1x); } }
  .network-status-body .message {
    border: none;
    box-shadow: none;
    padding: 0; }
  @media (min-width: 480px) {
    .network-status-body .alert {
      text-align: center; } }
  .network-status-pagination {
    border-radius: 0;
    border-width: 1px 0 0; }

.lagom-default .network-status-top label {
  color: var(--text-body-color); }

.lagom-default .network-status-body .panel {
  border-color: var(--gray-lighter-4); }
  .lagom-default .network-status-body .panel .panel-footer {
    background: transparent; }

/*
*******************************************
 Product Details - General
*******************************************
*/
.product-details {
  margin: 0 0 var(--ca-section-spacing) 0; }
  .product-details .product-icon {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 364px; }
    .product-details .product-icon:not(.panel-default) {
      background: var(--product-details-bg);
      border-radius: var(--ui-block-border-radius);
      box-shadow: var(--ui-block-shadow); }
    .product-details .product-icon.product-icon-sm {
      min-height: 250px; }
    @media (max-width: 767.98px) {
      .product-details .product-icon {
        margin-bottom: calc(2 * var(--spacing-1x)); } }
    .product-details .product-icon:not(.panel-default) .product-status {
      color: var(--product-details-title-color); }
    .product-details .product-icon:not(.panel-default) .product-image {
      width: 80px;
      height: 80px; }
      .product-details .product-icon:not(.panel-default) .product-image:has(.graphic-item) {
        width: 48px;
        height: 48px; }
      .product-details .product-icon:not(.panel-default) .product-image .graphic-item-bg {
        background: #FFFFFF33; }
        .product-details .product-icon:not(.panel-default) .product-image .graphic-item-bg i {
          color: #fff; }
    .product-details .product-icon:not(.panel-default) .product-name {
      color: var(--product-details-title-color); }
      .product-details .product-icon:not(.panel-default) .product-name > a {
        color: var(--product-details-text-color); }
    .product-details .product-icon:not(.panel-default) .product-footer {
      text-align: center;
      color: var(--product-details-title-color);
      border-top: 1px solid var(--ui-block-secondary-divider-border-color); }
      .product-details .product-icon:not(.panel-default) .product-footer:hover, .product-details .product-icon:not(.panel-default) .product-footer:focus-visible {
        color: var(--text-secondary-lighter-color); }
    .product-details .product-icon:not(.panel-default) span.product-footer:hover, .product-details .product-icon:not(.panel-default) span.product-footer:focus-visible {
      color: var(--product-details-title-color); }
    @media (min-width: 768px) {
      .product-details .product-icon.panel-default {
        margin-bottom: 0; } }
    .product-details .product-icon.panel-default .product-content {
      width: 100%; }
    .product-details .product-icon.panel-default .product-name {
      display: flex;
      align-items: center;
      line-height: var(--line-height-xxlg); }
      .product-details .product-icon.panel-default .product-name .label {
        margin-left: var(--spacing-1x); }
    .product-details .product-icon.panel-default .product-image img {
      border-radius: var(--panel-border-radius);
      border-color: var(--panel-default-border) !important; }
    .product-details .product-icon.panel-default .product-footer {
      border-top: 1px solid var(--panel-border-divider-color);
      display: flex;
      justify-content: space-between;
      align-items: center; }
    .product-details .product-icon.panel-default .product-progress .bg-success {
      background-color: var(--brand-success-lighter) !important; }
    .product-details .product-icon.panel-default .product-progress .bg-danger {
      background-color: var(--brand-danger-lighter) !important; }
    .product-details .product-icon.panel-default .product-progress-text {
      background: none; }
    .product-details .product-icon.panel-default .product #sitejetEditBtn {
      height: auto;
      white-space: normal;
      text-align: right;
      padding-right: 0; }
    .product-details .product-icon .product-content {
      display: flex;
      flex-direction: column;
      flex: 1;
      justify-content: center;
      align-items: center; }
    .product-details .product-icon .product-status {
      display: flex;
      align-items: center; }
      .product-details .product-icon .product-status .label {
        margin-left: var(--spacing-1x); }
    .product-details .product-icon .product-image {
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 0 auto calc(3 * var(--spacing-1x)); }
    .product-details .product-icon .product-name {
      margin-bottom: var(--ui-block-spacing-xs);
      text-align: center;
      font-weight: var(--font-weight-bold) !important; }
      .product-details .product-icon .product-name + span {
        display: block;
        margin-top: 12px; }
    .product-details .product-icon .product-footer {
      width: 100%;
      padding: 4px calc(3 * var(--spacing-1x));
      font-size: var(--font-size-sm); }
    .product-details .product-icon > span {
      color: var(--text-lighter-color); }
  .product-details .product-info {
    display: flex;
    flex-direction: column;
    padding: var(--ui-block-padding-lg);
    min-height: 364px;
    background: var(--ui-block-bg);
    border: var(--ui-block-border);
    box-shadow: var(--ui-block-shadow);
    border-radius: var(--ui-block-border-radius); }
  .product-details-tab-container {
    margin: 0;
    border-radius: 0 0 var(--border-radius-base) var(--border-radius-base);
    border: 1px solid var(--ui-block-border-color);
    border-top: 0; }

.tab-content.details-box-hidden .product-details > .row .col-md-6:first-child {
  flex: 0 0 100%;
  max-width: 100%; }

.tab-content.details-box-hidden .product-details > .row .col-md-6:nth-child(2) {
  display: none; }

.tab-content.domain-url-removed .product-details .product-icon .product-footer {
  pointer-events: none; }

.tab-content.product-group-hidden .product-details .product-icon .product-group-name {
  display: none; }

.panel-product-details {
  position: static; }

.module-client-area {
  padding: 15px; }
  .module-client-area input.button {
    color: var(--btn-primary-color);
    background: var(--btn-primary-bg);
    border-color: var(--btn-primary-border); }
    .module-client-area input.button:focus, .module-client-area input.button:focus-visible, .module-client-area input.button.focus {
      color: var(--btn-primary-hover-color);
      background-color: var(--btn-primary-hover-bg);
      border-color: var(--btn-primary-hover-border); }
    .module-client-area input.button:hover {
      color: var(--btn-primary-hover-color);
      background-color: var(--btn-primary-hover-bg);
      border-color: var(--btn-primary-hover-border); }
    .module-client-area input.button:not(:disabled):not(.disabled):active, .module-client-area input.button:not(:disabled):not(.disabled).active,
    .open > .module-client-area input.button:not(:disabled):not(.disabled).dropdown-toggle {
      color: var(--btn-primary-hover-color);
      background-color: var(--btn-primary-active-bg);
      border-color: var(--btn-primary-active-border); }
      .module-client-area input.button:not(:disabled):not(.disabled):active:hover, .module-client-area input.button:not(:disabled):not(.disabled):active:focus, .module-client-area input.button:not(:disabled):not(.disabled):active:focus-visible, .module-client-area input.button:not(:disabled):not(.disabled):active.focus, .module-client-area input.button:not(:disabled):not(.disabled).active:hover, .module-client-area input.button:not(:disabled):not(.disabled).active:focus, .module-client-area input.button:not(:disabled):not(.disabled).active:focus-visible, .module-client-area input.button:not(:disabled):not(.disabled).active.focus,
      .open > .module-client-area input.button:not(:disabled):not(.disabled).dropdown-toggle:hover,
      .open > .module-client-area input.button:not(:disabled):not(.disabled).dropdown-toggle:focus,
      .open > .module-client-area input.button:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
      .open > .module-client-area input.button:not(:disabled):not(.disabled).dropdown-toggle.focus {
        color: var(--btn-primary-hover-color);
        background-color: var(--btn-primary-hover-bg);
        border-color: var(--btn-primary-hover-border); }
    .module-client-area input.button.btn-link:not(.btn-outline) {
      color: var(--btn-primary-color);
      background-color: transparent;
      border-color: transparent; }
      .module-client-area input.button.btn-link:not(.btn-outline):focus, .module-client-area input.button.btn-link:not(.btn-outline):focus-visible, .module-client-area input.button.btn-link:not(.btn-outline).focus {
        color: var(--btn-primary-hover-color);
        background-color: transparent;
        border-color: transparent; }
      .module-client-area input.button.btn-link:not(.btn-outline):hover {
        color: var(--btn-primary-hover-color);
        background-color: transparent;
        border-color: transparent; }
      .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
        color: var(--btn-primary-hover-color);
        background-color: transparent;
        border-color: transparent; }
        .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .module-client-area input.button.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
          color: var(--btn-primary-hover-color);
          background-color: transparent;
          border-color: transparent; }
    .module-client-area input.button:active, .module-client-area input.button.active,
    .open > .module-client-area input.button.dropdown-toggle {
      background-image: none; }
    .module-client-area input.button.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .module-client-area input.button[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
    fieldset[disabled] .module-client-area input.button {
      opacity: var(--btn-disabled-opacity);
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border);
      cursor: not-allowed; }
      .module-client-area input.button.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .module-client-area input.button[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
      fieldset[disabled] .module-client-area input.button .loader .spinner > div {
        background: var(--btn-disabled-color); }
    .module-client-area input.button.disabled:not(.btn-primary):not(.btn-default), .module-client-area input.button[disabled]:not(.btn-primary):not(.btn-default) {
      cursor: not-allowed;
      opacity: 0.6; }
    .module-client-area input.button .badge {
      color: var(--btn-primary-bg);
      background-color: var(--btn-primary-color); }

#hostingRenewalLabelStatus h4 {
  font-size: var(--font-size-md);
  color: var(--text-body-color);
  line-height: var(--line-height-base);
  margin-bottom: 0; }

/*
*******************************************
Product Details - Product Upgrade
*******************************************
*/
.upgrade-config-option > h3 {
  margin-bottom: var(--ui-block-spacing-sm); }

.upgrade-config-option + .upgrade-config-option {
  margin-top: var(--ui-block-spacing-lg); }

.upgrade-config-option .panel h6 {
  color: #acb0b8;
  font-size: var(--ui-icon-size-small);
  font-weight: 400;
  line-height: 16px; }

.upgrade-config-option .panel .panel-body > :last-child {
  margin: 0; }

.upgrade-config-option .upgrade-current {
  padding-right: 24px; }
  .upgrade-config-option .upgrade-current:after {
    position: absolute;
    right: -8px;
    bottom: 50%;
    display: block;
    content: "\e908";
    margin-bottom: var(--ui-block-spacing-xs);
    font-family: var(--font-family-icons-small) !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: var(--ui-icon-size-small);
    -webkit-font-smoothing: antialiased; }

.upgrade-config-option .upgrade-new {
  padding-left: 24px; }

.upgrade-summary .upgrade-current {
  position: relative;
  display: inline-block;
  padding-right: 32px;
  color: var(--text-lighter-color); }
  .upgrade-summary .upgrade-current:after {
    position: absolute;
    right: var(--spacing-1x);
    bottom: 0%;
    display: block;
    content: "\e908";
    margin-bottom: var(--ui-block-spacing-xs);
    font-family: var(--font-family-icons-small) !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: var(--ui-icon-size-small);
    -webkit-font-smoothing: antialiased; }

.upgrade-summary .upgrade-new {
  font-weight: 500; }

/*
**********************************************
Product Details - cPanel Quick Shortcuts
**********************************************
*/
.cpanel-feature-row {
  margin-top: 0;
  margin-bottom: 0; }
  .cpanel-feature-row .btn-link {
    padding-left: 0;
    padding-right: 0;
    align-items: flex-start;
    justify-content: flex-start; }
  .cpanel-feature-row .btn:not(:disabled):not(.disabled):active {
    color: var(--link-color);
    background-color: unset;
    border-color: transparent; }

.cpanel-actions-btn .btn + .btn {
  margin-left: 6px; }

.page-clientareaproductdetails #Overview .product-details .product-info .list-info h4 {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-base);
  line-height: var(--line-height-base);
  color: var(--text-lighter-color);
  margin-top: var(--ui-block-spacing-sm);
  margin-bottom: 4px;
  display: flex;
  position: relative;
  width: 100%;
  height: 24px; }

.billingOverview {
  font-size: var(--font-size-md); }
  .billingOverview [class*='col-'] > .row {
    margin-bottom: var(--ui-block-spacing-sm); }
  .billingOverview .row > h4 {
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-base);
    line-height: var(--line-height-base);
    color: var(--text-body-color);
    margin: 0;
    display: flex;
    position: relative;
    padding-left: 12px;
    height: 24px; }
  .billingOverview .row #auto_renewal_config_off,
  .billingOverview .row #auto_renewal_config_on {
    height: 24px;
    margin-right: 12px;
    margin-left: 12px; }

#pleskWordPress #wordPressInstallResultRow .alert.success > a {
  margin: 0 5px; }
  #pleskWordPress #wordPressInstallResultRow .alert.success > a:last-of-type {
    margin-right: 0; }

@media (max-width: 767.98px) {
  .billingOverview .row #auto_renewal_config_off,
  .billingOverview .row #auto_renewal_config_on {
    margin-right: auto; } }

/*
**********************************************
Product Details - Knob Dials
**********************************************
*/
.cpanel-usage-stats {
  display: flex;
  flex-direction: column;
  background: var(--ui-block-bg-form);
  margin-bottom: 0;
  padding: 0;
  text-align: center; }
  .cpanel-usage-stats .panel-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    align-items: stretch;
    justify-content: center; }
    .cpanel-usage-stats .panel-body .row {
      flex: 1; }
  .cpanel-usage-stats .panel-footer {
    padding: 4px;
    color: var(--text-lighter-color);
    font-size: var(--font-size-xs); }

.usage-stats {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 100%; }
  .usage-stats > div {
    position: relative; }
  .usage-stats span {
    display: block;
    color: var(--text-lighter-color); }
    .usage-stats span:first-of-type {
      margin-bottom: var(--ui-block-spacing-sm); }
    .usage-stats span:last-of-type {
      margin-top: var(--ui-block-padding-base);
      font-size: 11px; }
  .usage-stats .knob-dial {
    position: relative;
    width: 104px;
    height: 80px; }

.usage-dial {
  top: 50%;
  left: 50% !important;
  width: 60px !important;
  vertical-align: middle;
  margin-left: -30px !important;
  margin-top: -8px !important;
  border: 0px;
  background: none;
  color: var(--text-heading-color) !important;
  font-family: var(--font-family-base) !important;
  font-size: var(--font-size-h4) !important;
  font-weight: var(--font-weight-h4) !important;
  text-align: center; }

.section-hook-output.no-float-banner .carousel-item {
  float: unset; }

.section-hook-output .promo-banner-slim,
.section-hook-output .promotions-slider {
  margin: 0 !important; }

.section-hook-output > br {
  display: none; }

.section-hook-output #promotions-slider {
  border-radius: var(--border-radius-base);
  box-shadow: var(--ui-block-shadow); }

/*
*******************************************
Panel Ticket Reply && Tabs Styles
*******************************************
*/
@media (min-width: 992px) {
  .page-viewticket:has(.panel-tabs) .main-grid {
    flex-direction: row-reverse;
    column-gap: var(--main-sidebar-spacing-h); }
  .page-viewticket:has(.panel-tabs) .main-sidebar {
    margin: 0; } }

@media (max-width: 991.98px) {
  .page-viewticket:has(.panel-tabs) .main-grid {
    flex-direction: column-reverse; }
  .page-viewticket:has(.panel-tabs) .main-sidebar {
    margin-top: 0; } }

.ticket-creator {
  display: flex;
  column-gap: var(--spacing-2x);
  padding: var(--ui-block-padding-sm-v) var(--ui-block-padding-sm);
  background-color: var(--gray-faded);
  border-radius: var(--border-radius-base);
  flex-grow: 1; }
  @media (max-width: 767.98px) {
    .ticket-creator .client-avatar {
      display: flex;
      align-items: center; }
      .ticket-creator .client-avatar img {
        width: 40px;
        height: 40px; } }
  .ticket-creator .creator-details {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-grow: 1; }
    @media (max-width: 479.98px) {
      .ticket-creator .creator-details {
        flex-direction: column;
        row-gap: var(--spacing-1x); } }
    .ticket-creator .creator-details-container {
      display: flex;
      flex-direction: column;
      justify-content: center;
      width: 100%; }
    .ticket-creator .creator-details-name {
      font-weight: var(--font-weight-medium);
      color: var(--text-heading-color);
      display: flex;
      align-items: center;
      justify-content: space-between;
      column-gap: var(--ui-block-spacing-base); }
    .ticket-creator .creator-details-email {
      color: var(--text-lighter-color); }
  .ticket-creator-guest {
    display: flex;
    gap: var(--ui-block-spacing-base); }
    @media (max-width: 767.98px) {
      .ticket-creator-guest {
        flex-direction: column; } }
    .ticket-creator-guest > div {
      display: flex;
      flex-direction: column;
      row-gap: var(--spacing-1x);
      flex-grow: 1; }

.panel-ticket-reply .creator-details,
.panel-ticket-reply .department-dropdown,
.open-ticket-information .creator-details,
.open-ticket-information .department-dropdown {
  flex-grow: 1; }

.panel-ticket-reply {
  margin-bottom: var(--ca-section-sm-spacing); }
  .panel-ticket-reply .panel-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* Internet Explorer 10+ */ }
    .panel-ticket-reply .panel-tabs::-webkit-scrollbar {
      display: none; }
    .panel-ticket-reply .panel-tabs a {
      display: flex;
      align-items: center;
      column-gap: var(--ui-block-spacing-sm);
      white-space: nowrap; }
  .panel-ticket-reply .tab-recipients .tab-details {
    display: flex;
    flex-direction: column;
    row-gap: 8px; }
  .panel-ticket-reply .tab-recipients .cc-actions {
    display: flex;
    gap: var(--spacing-2x); }
    @media (max-width: 479.98px) {
      .panel-ticket-reply .tab-recipients .cc-actions {
        flex-direction: column; }
        .panel-ticket-reply .tab-recipients .cc-actions .btn.btn-primary {
          width: 100%; } }
    .panel-ticket-reply .tab-recipients .cc-actions .input-group-preicon input {
      min-width: 296px; }
    @media (max-width: 767.98px) {
      .panel-ticket-reply .tab-recipients .cc-actions .input-group-preicon {
        flex-grow: 1; }
        .panel-ticket-reply .tab-recipients .cc-actions .input-group-preicon input {
          text-overflow: ellipsis;
          min-width: unset; } }
    @media (max-width: 479.98px) {
      .panel-ticket-reply .tab-recipients .cc-actions .input-group-preicon {
        width: 100%; }
        .panel-ticket-reply .tab-recipients .cc-actions .input-group-preicon input {
          text-overflow: ellipsis;
          min-width: unset; } }
  .panel-ticket-reply .tab-recipients:has(.alert-danger) .input-group-preicon {
    border-color: var(--brand-danger) !important; }
    .panel-ticket-reply .tab-recipients:has(.alert-danger) .input-group-preicon i {
      color: var(--brand-danger) !important; }
  .panel-ticket-reply .tab-attachements .tab-details {
    display: flex;
    flex-direction: column;
    row-gap: var(--spacing-1x); }
  .panel-ticket-reply .tab-attachements .attachment-name {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all; }
  .panel-ticket-reply .tab-additional-information .tab-details {
    display: flex;
    flex-direction: column;
    row-gap: var(--spacing-2x); }
  .panel-ticket-reply .tab-additional-information .information {
    display: flex;
    row-gap: var(--spacing-1x);
    flex-direction: column; }
    .panel-ticket-reply .tab-additional-information .information-title {
      color: var(--text-body-color); }
    .panel-ticket-reply .tab-additional-information .information-value {
      display: flex;
      column-gap: var(--spacing-1x);
      align-items: center;
      padding: var(--spacing-1x) var(--spacing-2x) var(--spacing-1x) 12px;
      color: var(--text-heading-color);
      background-color: var(--gray-faded);
      border: 1px solid var(--gray-lighter-4);
      border-radius: var(--border-radius-sm); }
      .panel-ticket-reply .tab-additional-information .information-value i {
        display: flex;
        align-items: center;
        color: var(--gray-icons);
        font-size: 12px; }
  .panel-ticket-reply .tab-sensitive #updateData {
    position: relative; }
    .panel-ticket-reply .tab-sensitive #updateData svg {
      position: absolute;
      bottom: 42px;
      right: 10px; }
  .panel-ticket-reply .input-group-preicon {
    display: flex;
    align-items: center;
    border: 1px solid var(--input-border-color);
    border-radius: var(--border-radius-base);
    transition: all var(--transition-base); }
    .panel-ticket-reply .input-group-preicon .input-group-prepend {
      padding: 10px 0 10px 10px; }
      .panel-ticket-reply .input-group-preicon .input-group-prepend i {
        transition: color var(--transition-base);
        color: var(--gray-icons); }
    .panel-ticket-reply .input-group-preicon input {
      border: none;
      background: transparent; }
      .panel-ticket-reply .input-group-preicon input::placeholder {
        color: var(--input-color-placeholder); }
    .panel-ticket-reply .input-group-preicon:hover {
      border-color: var(--input-hover-border-color);
      color: var(--input-hover-color); }
      .panel-ticket-reply .input-group-preicon:hover input::placeholder {
        color: var(--input-hover-placeholder-color); }
    .panel-ticket-reply .input-group-preicon:has(input:focus, input:active) {
      border-color: var(--input-focus-border-color);
      color: var(--input-focus-color); }
      .panel-ticket-reply .input-group-preicon:has(input:focus, input:active) .input-group-prepend input::placeholder {
        color: var(--input-focus-placeholder-color); }
      .panel-ticket-reply .input-group-preicon:has(input:focus, input:active) .input-group-prepend i {
        color: var(--input-focus-border-color); }
  .panel-ticket-reply .input-group-icons {
    display: flex;
    align-items: center;
    border: 1px solid var(--input-border-color);
    border-radius: var(border-radius-xs);
    max-width: max-content; }
    .panel-ticket-reply .input-group-icons .input-group-prepend {
      background-color: transparent;
      border-radius: var(--input-border-radius); }
      .panel-ticket-reply .input-group-icons .input-group-prepend i {
        color: var(--gray-icons); }
    .panel-ticket-reply .input-group-icons .input-group-append {
      background-color: var(--gray-faded);
      border-radius: var(--input-border-radius); }
      .panel-ticket-reply .input-group-icons .input-group-append button {
        padding: 0;
        border: none;
        background: transparent; }
        .panel-ticket-reply .input-group-icons .input-group-append button i {
          transition: var(--transition-base);
          color: var(--brand-primary); }
        .panel-ticket-reply .input-group-icons .input-group-append button:hover i {
          color: var(--brand-primary-lighter); }
      .panel-ticket-reply .input-group-icons .input-group-append-danger button i {
        color: var(--state-danger-text); }
      .panel-ticket-reply .input-group-icons .input-group-append-danger button:hover i {
        color: var(--brand-danger-lighter); }
    .panel-ticket-reply .input-group-icons .input-group-append,
    .panel-ticket-reply .input-group-icons .input-group-prepend {
      align-items: center;
      justify-content: center;
      height: 30px;
      width: 30px;
      min-width: 30px; }
      .panel-ticket-reply .input-group-icons .input-group-append a, .panel-ticket-reply .input-group-icons .input-group-append button,
      .panel-ticket-reply .input-group-icons .input-group-prepend a,
      .panel-ticket-reply .input-group-icons .input-group-prepend button {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center; }
        .panel-ticket-reply .input-group-icons .input-group-append a i, .panel-ticket-reply .input-group-icons .input-group-append button i,
        .panel-ticket-reply .input-group-icons .input-group-prepend a i,
        .panel-ticket-reply .input-group-icons .input-group-prepend button i {
          width: 100%;
          height: 100%;
          display: flex;
          align-items: center;
          justify-content: center; }
    .panel-ticket-reply .input-group-icons .form-control {
      display: flex;
      align-items: center;
      border: none;
      background: transparent;
      max-width: max-content;
      color: var(--text-body-color);
      background-color: var(--gray-faded); }
  .panel-ticket-reply .tab-container {
    display: flex;
    flex-direction: column;
    row-gap: var(--ui-block-spacing-base);
    padding: var(--ui-block-padding-base); }
  .panel-ticket-reply .tab-actions {
    display: flex;
    column-gap: var(--ui-block-spacing-base);
    padding: 0 var(--ui-block-padding-base) var(--ui-block-padding-base) var(--ui-block-padding-base); }
  .panel-ticket-reply .tab-desc {
    color: var(--text-body-color); }
    .panel-ticket-reply .tab-desc strong {
      font-weight: var(--font-weight-medium);
      color: var(--text-heading-color); }
  .panel-ticket-reply .tab-no-data {
    padding: var(--spacing-2x);
    border-radius: var(--border-radius-base);
    background: var(--gray-faded);
    border: 1px solid var(--gray-lighter-4);
    color: var(--text-body-color); }

/*
*******************************************
Attachements Styles
*******************************************
*/
.attachements-container .add {
  display: flex;
  align-items: center;
  column-gap: 10px;
  border: 1px solid var(--input-border-color);
  background: var(--input-bg);
  border-radius: var(--input-border-radius);
  padding: 11px var(--spacing-2x);
  color: var(--text-body-color);
  font-weight: var(--font-weight-base);
  width: 100%;
  justify-content: flex-start;
  transition: var(--transition-base);
  cursor: pointer; }
  .attachements-container .add path {
    transition: var(--transition-base); }
  .attachements-container .add:hover, .attachements-container .add:focus-visible {
    border-color: var(--input-focus-border-color);
    color: var(--brand-primary); }
    .attachements-container .add:hover path, .attachements-container .add:focus-visible path {
      fill: var(--brand-primary); }

.attachements-uploads {
  border: 1px solid var(--input-border-color);
  border-radius: var(--input-border-radius);
  padding: 8px var(--spacing-2x);
  background: var(--input-bg);
  display: flex;
  flex-wrap: wrap;
  gap: 8px; }
  .attachements-uploads i {
    display: flex;
    align-items: center; }
  .attachements-uploads > .btn {
    order: 2;
    font-weight: var(--font-weight-medium);
    padding: 6px 12px; }
  .attachements-uploads .file-input {
    width: max-content;
    height: var(--ui-height-xs);
    background-color: var(--gray-faded);
    color: var(--text-body-color);
    margin-top: 0;
    align-items: center;
    border-radius: var(--border-radius-xs); }
    .attachements-uploads .file-input-text {
      padding: 0 var(--spacing-1x);
      font-size: 11px;
      line-height: 18px;
      font-weight: 400;
      transition: var(--transition-base);
      max-width: 300px;
      display: -webkit-box;
      -webkit-line-clamp: 1;
      -webkit-box-orient: vertical;
      overflow: hidden;
      text-overflow: ellipsis; }
    .attachements-uploads .file-input-remove {
      color: var(--brand-danger);
      width: var(--ui-height-xs);
      height: var(--ui-height-xs);
      transition: var(--transition-base); }
      .attachements-uploads .file-input-remove:hover, .attachements-uploads .file-input-remove:focus-visible {
        color: var(--brand-danger-lighter);
        outline: none; }

.ticket-attachments-message {
  margin: var(--spacing-1x) 0 0 0;
  color: var(--text-heading-color);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm); }

.open-ticket-form .ticket-attachments-message,
.section-form .ticket-attachments-message,
.panel-ticket-reply .ticket-attachments-message {
  display: flex;
  align-items: center;
  column-gap: 6px;
  color: var(--text-lighter-color); }
  .open-ticket-form .ticket-attachments-message i,
  .section-form .ticket-attachments-message i,
  .panel-ticket-reply .ticket-attachments-message i {
    display: flex;
    width: 18px;
    height: 18px;
    align-items: center;
    justify-content: center; }

/*
*******************************************
Panel Ticket Information Style
*******************************************
*/
.panel > .list-group .ticket-details-children {
  flex-direction: column;
  align-items: flex-start;
  color: var(--text-heading-color);
  display: block !important; }
  .panel > .list-group .ticket-details-children br {
    display: none; }
  .panel > .list-group .ticket-details-children .title {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    color: var(--text-body-color);
    display: block; }

.panel.panel-sidebar .list-group-item {
  word-break: break-word; }

@media (max-width: 991.98px) {
  .panel-ticket-information {
    display: none; } }

.panel-ticket-information .list-group-item:not(.ticket-details-children) {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: var(--ui-block-padding-sm) var(--ui-block-padding-base); }
  .panel-ticket-information .list-group-item:not(.ticket-details-children) i:not(.ls-caret) {
    margin-right: 12px !important;
    font-size: 12px;
    color: var(--gray-icons); }

.panel-ticket-information .list-group-item-content {
  display: flex;
  flex-direction: column;
  color: var(--text-heading-color); }
  .panel-ticket-information .list-group-item-content .title {
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs);
    color: var(--text-lighter-color);
    display: inline-block; }
  .panel-ticket-information .list-group-item-content .flex-container {
    display: flex;
    column-gap: 4px;
    align-items: center;
    flex-wrap: wrap; }

.panel-ticket-information-mobile {
  display: none; }
  @media (max-width: 991.98px) {
    .panel-ticket-information-mobile {
      display: block; } }
  .panel-ticket-information-mobile .list-group-item .list-group-item-content {
    flex-direction: row;
    gap: var(--spacing-1x); }
    .panel-ticket-information-mobile .list-group-item .list-group-item-content .title {
      display: flex;
      align-items: center;
      font-size: var(--font-size-sm);
      line-height: var(--line-height-sm); }
  .panel-ticket-information-mobile .list-group-item:has(.ls-caret) .ls-caret {
    color: var(--brand-primary);
    transform: rotate(180deg); }
  .panel-ticket-information-mobile .list-group-item.collapsed:has(.ls-caret) {
    border-bottom: 0; }
    .panel-ticket-information-mobile .list-group-item.collapsed:has(.ls-caret) .ls-caret {
      color: var(--gray-icons);
      transform: rotate(0deg); }
  .panel-ticket-information-mobile .list-group-item:not(:first-child) .list-group-item-content,
  .panel-ticket-information-mobile .list-group-item:not(:first-child) .ticket-requestor-name {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm); }

.panel.panel-sidebar .list-group-item {
  word-break: break-word; }

/*
*******************************************
View Ticket Page - Reply
*******************************************
*/
.ticket-reply {
  background: var(--gray-faded);
  margin-bottom: var(--ui-block-spacing-lg);
  border: 1px solid var(--gray-lighter-3);
  border-left: none;
  border-radius: var(--ui-block-border-radius-lg);
  overflow: hidden;
  position: relative; }
  .ticket-reply:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 4px;
    background: var(--gray-lighter-3); }
  .ticket-reply:last-child {
    margin-bottom: 0; }
  .ticket-reply-top {
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--ui-block-divider-color);
    background: var(--ui-block-header-bg);
    padding: var(--ui-block-padding-base-v) var(--ui-block-padding-base); }
    .ticket-reply-top .client-avatar + .user {
      padding-left: var(--ui-block-spacing-sm); }
    .ticket-reply-top .user {
      flex: 1;
      display: flex;
      column-gap: var(--spacing-1x); }
      .ticket-reply-top .user-info {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        align-items: start; }
      .ticket-reply-top .user .type-name {
        color: var(--text-body-color);
        font-size: var(--font-size-sm);
        line-height: var(line-height-sm); }
      .ticket-reply-top .user-label {
        padding-top: 2px;
        text-align: end; }
    .ticket-reply-top .name {
      color: var(--text-heading-color);
      font-weight: var(--font-weight-medium); }
      .ticket-reply-top .name > i {
        margin-right: var(--spacing-1x);
        color: var(--gray-icons); }
    .ticket-reply-top .date {
      color: var(--text-lighter-color);
      font-size: var(--font-size-sm);
      line-height: var(--line-height-xs); }
  .ticket-reply-message {
    padding: var(--ui-block-padding-base);
    color: var(--text-heading-color);
    word-break: break-word; }
    .ticket-reply-message > *:last-child:not(pre) {
      margin-bottom: 0;
      padding-bottom: 0; }
    .ticket-reply-message img {
      max-width: 100%; }
  .ticket-reply-attachments {
    margin: 0;
    padding: 12px var(--spacing-3x) 18px;
    border-top: 1px solid var(--ui-block-divider-color);
    background: var(--ui-block-header-bg);
    color: var(--text-heading-color);
    font-size: var(--font-size-xs);
    line-height: var(--line-height-sm);
    word-break: break-word; }
    .ticket-reply-attachments strong {
      font-size: var(--font-size-base);
      line-height: var(--line-height-md); }
    .ticket-reply-attachments ul {
      display: flex;
      column-gap: 12px;
      margin: 12px 0 0;
      padding: 0;
      list-style: none; }
      .ticket-reply-attachments ul li a {
        display: flex;
        flex-direction: column;
        align-items: center;
        border: 1px solid var(--ui-block-divider-color);
        width: 100px;
        background-color: var(--panel-bg);
        border-radius: var(--border-radius-sm);
        transition: var(--transition-base);
        overflow: hidden; }
        .ticket-reply-attachments ul li a:hover, .ticket-reply-attachments ul li a:focus-visible {
          border-color: var(--brand-primary); }
          .ticket-reply-attachments ul li a:hover i, .ticket-reply-attachments ul li a:focus-visible i {
            color: var(--text-primary-color); }
          .ticket-reply-attachments ul li a:hover .attachment-container, .ticket-reply-attachments ul li a:focus-visible .attachment-container {
            background-color: var(--brand-primary-lighter-4);
            border-color: var(--brand-primary-lighter-3); }
            .ticket-reply-attachments ul li a:hover .attachment-container .attachment-extension,
            .ticket-reply-attachments ul li a:hover .attachment-container .attachment-name, .ticket-reply-attachments ul li a:focus-visible .attachment-container .attachment-extension,
            .ticket-reply-attachments ul li a:focus-visible .attachment-container .attachment-name {
              color: var(--text-primary-color); }
        .ticket-reply-attachments ul li a i {
          padding-block: 10px;
          color: var(--gray-icons);
          transition: 0.3s; }
        .ticket-reply-attachments ul li a .attachment-container {
          display: flex;
          width: 100%;
          padding: 4px 8px;
          background-color: var(--gray-faded);
          border-top: 1px solid var(--gray-lighter-4);
          transition: 0.3s; }
          .ticket-reply-attachments ul li a .attachment-container .attachment-extension,
          .ticket-reply-attachments ul li a .attachment-container .attachment-name {
            display: block;
            font-size: 11px;
            line-height: 18px;
            white-space: nowrap;
            color: var(--text-body-color);
            transition: 0.3s; }
          .ticket-reply-attachments ul li a .attachment-container .attachment-name {
            overflow: hidden;
            text-overflow: ellipsis; }
  .ticket-reply.staff {
    background: var(--panel-bg); }
    .ticket-reply.staff:before {
      background: var(--brand-primary); }
    .ticket-reply.staff .ticket-reply-top .staff-reply {
      bottom: 0;
      right: 0;
      width: 18px;
      height: 18px; }
    .ticket-reply.staff .ticket-reply-avatar {
      border-color: var(--brand-info-lighter-2); }
      .ticket-reply.staff .ticket-reply-avatar i {
        color: var(--text-primary-color); }
  .ticket-reply .rating,
  .ticket-reply .rating-done {
    display: flex;
    flex-direction: row-reverse;
    gap: 3px;
    font-size: 13px;
    line-height: 20px; }
    .ticket-reply .rating span.star,
    .ticket-reply .rating-done span.star {
      font-family: "Font Awesome 6 Pro";
      font-weight: normal;
      font-style: normal;
      display: inline-block; }
      .ticket-reply .rating span.star:hover,
      .ticket-reply .rating-done span.star:hover {
        cursor: pointer; }
        .ticket-reply .rating span.star:hover ~ span.star:before, .ticket-reply .rating span.star:hover:before,
        .ticket-reply .rating-done span.star:hover ~ span.star:before,
        .ticket-reply .rating-done span.star:hover:before {
          color: #F9BB57;
          font-weight: 900; }
      .ticket-reply .rating span.star:before,
      .ticket-reply .rating-done span.star:before {
        content: '\f005';
        color: var(--ui-icon-color); }
  .ticket-reply .rating-done .rated {
    display: inline-block;
    font-size: var(--font-size-sm); }
  .ticket-reply .rating-done span.star {
    pointer-events: none; }
    .ticket-reply .rating-done span.star.active:before {
      color: #F9BB57;
      font-weight: 900; }

#ticketReplyBox.collapse.show,
#customFieldsBox.collapse.show,
#sp-add-comment.collapse.show {
  border-top: 1px solid var(--ui-block-divider-color); }

#ticketReplyBox.collapsing,
#customFieldsBox.collapsing,
#sp-add-comment.collapsing {
  border-top: 1px solid var(--ui-block-divider-color); }

#ticketReply .collapse-icon,
#customFields .collapse-icon {
  color: var(--gray-icons); }

#customFieldsBox .form-customfields:last-child {
  margin-bottom: 0 !important; }

#customFieldsBox .form-customfields .form-group .radio,
#customFieldsBox .form-customfields .form-group .checkbox {
  margin-bottom: 0;
  margin-top: var(--spacing-1x); }
  #customFieldsBox .form-customfields .form-group .radio:first-of-type,
  #customFieldsBox .form-customfields .form-group .checkbox:first-of-type {
    margin-top: 0 !important; }
  #customFieldsBox .form-customfields .form-group .radio + .help-block,
  #customFieldsBox .form-customfields .form-group .checkbox + .help-block {
    margin-left: 0; }

#customFieldsBox .form-customfields .form-group .ticket-attachments-message {
  color: var(--gray); }

#customFieldsBox .form-customfields .form-group .help-block {
  color: var(--text-lighter-color); }

#customFieldsBox .form-customfields select.selectMultiple {
  padding-top: var(--spacing-2x); }

/*
*******************************************
Integration - Premium Support Tickets 
*******************************************
*/
.panel-support .support-title {
  display: flex;
  align-items: center; }
  .panel-support .support-title > i, .panel-support .support-title > span {
    color: var(--text-primary-color);
    margin-right: var(--spacing-2x); }

.panel-support .support-desc {
  margin-bottom: 0; }

.panel-support.panel-department-box {
  display: flex;
  flex-direction: column; }
  .panel-support.panel-department-box > .panel-body {
    height: 100%; }
  .panel-support.panel-department-box > .panel-footer {
    border: 0;
    padding: 0 var(--panel-body-padding) var(--panel-body-padding);
    background: transparent; }

/*
*******************************************
Ticket Step Two - Suggested  KB articles
*******************************************
*/
#autoAnswerSuggestions {
  display: none; }

/*
*******************************************
Tickets Table
*******************************************
*/
.table tbody tr td {
  word-break: break-word; }

/*
*******************************************
Open Ticket StepTwo Panel Styles
*******************************************
*/
.open-ticket-information .panel-body .department-dropdown .dropdown-toggle-content {
  display: flex;
  flex-direction: column;
  flex-grow: 1; }
  .open-ticket-information .panel-body .department-dropdown .dropdown-toggle-content > div {
    display: flex;
    justify-content: space-between;
    width: 100%; }
  .open-ticket-information .panel-body .department-dropdown .dropdown-toggle-content > p {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis; }

.open-ticket-information .panel-body .department-dropdown.show .dropdown-toggle {
  border-color: var(--input-focus-border-color); }
  .open-ticket-information .panel-body .department-dropdown.show .dropdown-toggle .dropdown-caret i {
    color: var(--gray-icons-hover); }

.open-ticket-information .panel-body .related-product-dropdown .related-item {
  word-break: break-all;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  flex-grow: 1; }

.open-ticket-information .panel-body .related-product-dropdown .dropdown-content {
  flex-grow: 1; }

.open-ticket-information .panel-body .related-product-dropdown .dropdown-list-item .related-item {
  -webkit-line-clamp: 2; }
  .open-ticket-information .panel-body .related-product-dropdown .dropdown-list-item .related-item-name span {
    color: var(--text-lighter-color); }

.open-ticket-information .panel-body .related-product-dropdown .dropdown-list-item:hover .related-item-group,
.open-ticket-information .panel-body .related-product-dropdown .dropdown-list-item:hover .related-item-name {
  color: var(--dropdown-link-hover-color); }

.open-ticket-information .panel-body .ticket-priority-dropdown {
  flex-grow: 1; }
  .open-ticket-information .panel-body .ticket-priority-dropdown .dropdown-toggle {
    height: 100%; }
  .open-ticket-information .panel-body .ticket-priority-dropdown .dropdown-list-item:hover, .open-ticket-information .panel-body .ticket-priority-dropdown .dropdown-list-item:focus-visible {
    color: var(--dropdown-link-hover-color) !important; }

.open-ticket-information .ticket-priority {
  display: flex;
  flex-direction: column; }

.open-ticket-form .ticket-content {
  display: flex;
  flex-direction: column;
  row-gap: 10px; }
  .open-ticket-form .ticket-content .nav-tabs {
    border-bottom: unset;
    padding: 0;
    column-gap: var(--ui-block-spacing-base);
    background: transparent; }
    .open-ticket-form .ticket-content .nav-tabs a {
      padding: 0; }
      .open-ticket-form .ticket-content .nav-tabs a::after {
        left: 0;
        right: 0; }
  .open-ticket-form .ticket-content .tab-message .alert {
    display: flex;
    align-items: center;
    column-gap: 10px;
    margin-bottom: 10px; }
  .open-ticket-form .ticket-content .tab-message.active {
    display: flex;
    flex-direction: column;
    gap: var(--ui-block-spacing-base); }

.open-ticket-form .tab-sensitive .alert {
  display: flex;
  column-gap: 10px;
  align-items: center;
  margin-bottom: 10px; }

.open-ticket-form textarea {
  min-height: 328px; }

.panel-customfield .help-block i {
  display: none; }

.section-custom-fields {
  display: none; }
  .section-custom-fields:has(.form-group) {
    display: block; }
  .section-custom-fields .panel-customfield .help-block {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-block: 0; }
    .section-custom-fields .panel-customfield .help-block i {
      display: block; }

.panel-form-action {
  margin-top: var(--ui-block-padding-lg); }

/*
*******************************************
KB Suggestion Form
*******************************************
*/
.kb-suggestion-form {
  background: var(--panel-sidebar-list-group-bg);
  border: var(--panel-sidebar-list-group-border);
  box-shadow: var(--panel-sidebar-list-group-box-shadow);
  border-radius: var(--panel-sidebar-list-group-border-radius);
  padding: var(--ui-block-padding-base);
  display: flex;
  flex-direction: column;
  gap: var(--ui-block-spacing-base); }
  .kb-suggestion-form .icon, .kb-suggestion-form .desc {
    display: flex;
    justify-content: center;
    align-items: center; }
  .kb-suggestion-form .icon svg {
    width: 40px;
    height: 40px; }
  .kb-suggestion-form .search-field .form-control {
    padding-left: calc(12px + 2 * var(--spacing-2x)); }
  .kb-suggestion-form .search-field-icon {
    display: flex;
    align-items: center;
    width: 12px;
    height: 12px;
    top: 50%;
    transform: translateY(-50%); }
  .kb-suggestion-form .dropdown-list .list-group-item .kb-suggestion-dropdown-heading {
    display: flex; }
    .kb-suggestion-form .dropdown-list .list-group-item .kb-suggestion-dropdown-heading p {
      font-size: 12px;
      line-height: 16px; }

/**
 * -------------------------
 * @section Two Factor Authentication
 * -------------------------
 */
div#twofaactivation {
  margin: 0 auto;
  padding: 15px 30px;
  width: 85%;
  background-color: #efefef;
  border-radius: 10px; }

div#twofaactivation .errorbox {
  margin: 0 0 20px 0;
  padding: 10px 20px;
  background-color: #FF4F4F;
  text-shadow: none;
  color: #fff;
  text-align: center;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px; }

div#twofaactivation p {
  margin: 15px 0; }

/*
*******************************************
 Payment Gateways Charge
*******************************************
*/
#mg-charge-table {
  margin-top: var(--ca-section-spacing);
  margin-bottom: var(--ca-section-spacing); }
  #mg-charge-table .sub-heading {
    color: var(--text-heading-color);
    font-size: var(--ca-section-title-font-size);
    font-weight: var(--ca-section-title-font-weight);
    line-height: var(--ca-section-title-line-height);
    margin-bottom: var(--headings-margin-bottom); }
  #mg-charge-table .table {
    border-radius: var(--panel-border-radius);
    box-shadow: var(--panel-box-shadow);
    border: var(--panel-border);
    background: var(--panel-bg);
    margin: 0; }
    #mg-charge-table .table thead tr th:first-of-type {
      border-radius: var(--border-radius-base) 0 0 0; }
    #mg-charge-table .table thead tr th:last-of-type {
      border-radius: 0 var(--border-radius-base) 0 0; }
    #mg-charge-table .table tbody tr {
      background: none; }
      #mg-charge-table .table tbody tr:last-of-type td:first-of-type {
        border-radius: 0 0 0 var(--border-radius-base); }
      #mg-charge-table .table tbody tr:last-of-type td:last-of-type {
        border-radius: 0 0 var(--border-radius-base) 0; }

/*
*******************************************
 SMS Center
*******************************************
*/
.page-user-security .modal.twofa-setup table {
  margin-bottom: 0; }
  .page-user-security .modal.twofa-setup table > tbody > tr > td:first-child {
    padding-left: var(--ui-padding-base-v); }
  .page-user-security .modal.twofa-setup table > tbody > tr > td:last-child {
    padding-right: var(--ui-padding-base-v); }
  .page-user-security .modal.twofa-setup table tr td + td {
    display: flex;
    align-items: center;
    height: auto; }
    .page-user-security .modal.twofa-setup table tr td + td input {
      display: inline-block; }
  .page-user-security .modal.twofa-setup table + p[align="center"] {
    margin-bottom: 0; }

.page-user-security .modal.twofa-setup #country_code {
  margin-left: 4px;
  width: 45px !important;
  padding: var(--ui-padding-base-v); }

/*
*******************************************
Order - Main Grid
*******************************************
*/
.main-content #creditCardInputFields .panel-body .list-info.list-info-v {
  margin-bottom: 18px; }

.main-content .stripe #creditCardInputFields > .nav-tabs + .panel-body {
  padding-top: 15px;
  padding-bottom: 15px; }

.main-content .stripe #creditCardInputFields #newCardInfo {
  display: none !important; }

.main-content .stripe #creditCardInputFields #stripeElements {
  display: block !important;
  opacity: 0; }

.main-content .stripe .panel-collapse.in #creditCardInputFields #stripeElements {
  opacity: 1; }

.main-content .text-divider span {
  background-color: var(--ui-block-bg-form); }

/*
*******************************************
Order - Promotion Code Box
*******************************************
*/
.promo-code {
  margin-bottom: 0;
  display: flex; }
  .promo-code-description {
    display: flex;
    align-items: center;
    color: var(--text-primary-color);
    font-size: var(--font-size-md);
    font-weight: var(--font-weight-medium); }
    .promo-code-description span {
      margin-left: var(--spacing-1x); }

.border-primary {
  border-color: var(--btn-primary-bg); }

/*
*******************************************
Order - Payment Method
*******************************************
*/
.panel-payment-method .panel-body .radio,
.panel-collapse-custom .panel-body .radio {
  padding-top: var(--spacing-1x);
  padding-bottom: 6px;
  margin-top: 0;
  margin-bottom: 0; }

.panel-payment-method .panel-body .radio-styled,
.panel-collapse-custom .panel-body .radio-styled {
  margin-right: var(--ui-block-padding-base); }
  .panel-payment-method .panel-body .radio-styled.checked + span,
  .panel-collapse-custom .panel-body .radio-styled.checked + span {
    color: #000; }

.panel-payment-method .panel-body + .panel-body,
.panel-collapse-custom .panel-body + .panel-body {
  border-top: 1px solid rgba(0, 0, 0, 0.1); }

[data-collapse] .progress {
  background-color: #e6e8ec; }

[data-collapse] .panel-body.is-active {
  background-color: #f6f7f8;
  border: 1px solid var(--btn-primary-bg); }

@media (max-width: 991.98px) {
  .categories-collapsed {
    margin-bottom: var(--ui-gutter-base); }
    .categories-collapsed .dropdown-menu {
      max-height: 288px; }
    .categories-collapsed .categories-sidebar {
      margin-bottom: var(--ui-block-spacing-xs); }
      .categories-collapsed .categories-sidebar .dropdown .btn i,
      .categories-collapsed .categories-sidebar .dropdown .btn .ls {
        margin-left: var(--btn-base-icon-spacing);
        margin-right: 0; } }

@media (max-width: 479.98px) {
  .row.addon-products {
    padding-left: 0 !important; }
  .promo-box-content {
    text-align: center;
    flex-direction: column; }
    .promo-box-content .promo-box-icon {
      margin-right: 0; }
    .promo-box-content + .promo-box-content {
      margin-top: var(--ui-block-padding-base); }
  .categories-collapsed {
    display: flex !important;
    flex-direction: column; }
    .categories-collapsed .categories-sidebar {
      margin-bottom: 0; }
    .categories-collapsed .form-control,
    .categories-collapsed .dropdown {
      margin-bottom: var(--ui-block-spacing-xs); }
      .categories-collapsed .form-control .btn,
      .categories-collapsed .form-control .dropdown-menu,
      .categories-collapsed .dropdown .btn,
      .categories-collapsed .dropdown .dropdown-menu {
        width: 100%; } }

/*
*******************************************
Order - Bottom Actions
*******************************************
*/
:root {
  --bottom-action-sticky-height: calc(var(--ui-height-lg) + 2 * var(--ui-block-padding-sm)); }

.bottom-action-sticky {
  width: auto !important;
  align-items: center;
  justify-content: center;
  background: var(--ui-block-bg);
  border: var(--ui-block-border);
  border-radius: var(--ui-block-border-radius);
  box-shadow: var(--ui-block-shadow);
  padding: var(--ui-block-padding-base);
  margin-top: var(--ca-section-spacing); }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .bottom-action-sticky {
      justify-content: flex-start; } }
  .bottom-action-sticky:not(.is-fixed) > .container {
    padding-left: 0;
    padding-right: 0; }
  .bottom-action-sticky.is-fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: var(--zindex-navbar-fixed);
    background: var(--ui-block-overlay-bg);
    border: none;
    box-shadow: var(--ui-block-overlay-shadow);
    height: var(--bottom-action-sticky-height);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-radius: 0;
    padding: var(--ui-block-padding-sm) 0; }

@-moz-document url-prefix() {
  .bottom-action-sticky.is-fixed {
    background: var(--ui-block-bg); } }
  .bottom-action-sticky > .container {
    display: flex;
    align-items: center;
    height: 100%; }
  .bottom-action-sticky .sticky-content {
    display: flex;
    align-items: center; }
  .bottom-action-sticky .sticky-dropdown {
    display: none; }
    .bottom-action-sticky .sticky-dropdown .dropdown-menu {
      bottom: 100%;
      top: auto; }
  .bottom-action-sticky .sticky-actions {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-end;
    margin-left: auto;
    margin-left: auto;
    margin-right: 0; }
    .bottom-action-sticky .sticky-actions .btn-link:last-child {
      margin-right: calc(-1 * var(--ui-padding-base-h)); }

.bottom-action-anchor {
  margin-top: var(--ca-section-spacing);
  margin-bottom: calc(var(--ca-section-spacing)*-1); }
  .bottom-action-anchor + .bottom-action-sticky {
    margin-top: calc(var(--ca-section-spacing)*2); }

/*
*******************************************
Page View Cart
*******************************************
*/
.social-signin-btns {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-right: calc(-1 * var(--spacing-2x)); }
  @media (max-width: 479.98px) {
    .social-signin-btns {
      margin: 0; } }
  .social-signin-btns .btn-social {
    max-width: 350px; }
    @media (min-width: 480px) {
      .social-signin-btns .btn-social {
        margin-right: var(--spacing-2x); } }

/*
*******************************************
Panel Cart
*******************************************
*/
.panel-cart {
  /* Main Table Elements */ }
  .panel-cart .cart-heading {
    display: flex;
    align-items: center;
    padding: var(--ui-block-padding-base-v) var(--ui-block-padding-base);
    column-gap: var(--ui-block-spacing-lg);
    color: var(--table-th-font-color);
    font-size: var(--table-th-font-size);
    font-weight: var(--table-th-font-weight);
    border-color: var(--ui-block-divider-color); }
  .panel-cart .panel-body {
    padding: 0; }
  .panel-cart .cart-item {
    padding: var(--ui-block-padding-base-v) var(--ui-block-padding-base);
    display: flex;
    column-gap: var(--ui-block-spacing-lg);
    align-items: center; }
    .panel-cart .cart-item:not(:last-child) {
      border-bottom: 1px solid var(--ui-block-divider-color); }
    .panel-cart .cart-item:has(.cart-item-config) {
      flex-wrap: wrap; }
    .panel-cart .cart-item .renewal,
    .panel-cart .cart-item .setup-fee {
      display: block;
      text-wrap: nowrap;
      color: var(--text-lighter-color);
      line-height: var(--line-height-base);
      font-size: var(--font-size-base);
      font-weight: var(--font-weight-base); }
    .panel-cart .cart-item .renewal > span {
      direction: ltr; }
  .panel-cart .panel-footer .btn {
    gap: var(--btn-sm-icon-spacing); }
    .panel-cart .panel-footer .btn i {
      margin-right: 0;
      color: var(--ui-icon-color); }

/*
*******************************************
Panel Cart - Columns
*******************************************
*/
.panel-cart .prod-desc {
  width: 100%; }
  .panel-cart .prod-desc > .content {
    width: 100%; }

.panel-cart .prod-actions {
  padding-right: 0; }

/*
*******************************************
Panel Cart - Column Items
*******************************************
*/
.panel-cart .cart-item-title {
  display: flex;
  flex-grow: 1;
  overflow: hidden; }
  .panel-cart .cart-item-title div:has(> .cart-item-title-main) {
    width: 100%; }
  .panel-cart .cart-item-title-main {
    display: block;
    color: var(--text-heading-color);
    font-size: var(--font-size-h7);
    font-weight: var(--font-weight-h7);
    line-height: var(--line-height-h7);
    font-weight: var(--font-weight-medium);
    margin-bottom: 0;
    max-width: 100%; }
  .panel-cart .cart-item-title-small {
    display: block;
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    color: var(--text-faded-color);
    max-width: 100%;
    text-overflow: ellipsis;
    overflow: hidden; }
  .panel-cart .cart-item-title:has(.graphic-item) {
    align-items: center; }
    .panel-cart .cart-item-title:has(.graphic-item) .cart-item-title-main,
    .panel-cart .cart-item-title:has(.graphic-item) .cart-item-title-small {
      max-width: calc(100% - (32px + var(--spacing-2x))); }

.panel-cart .cart-item-qty {
  width: 62px;
  min-width: 62px; }

.panel-cart .cart-item-pricing {
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg);
  font-weight: var(--font-weight-medium);
  color: var(--text-heading-color); }

.panel-cart .cart-item-pricing-dropdown {
  width: 100%; }
  .panel-cart .cart-item-pricing-dropdown .btn {
    display: flex;
    max-width: 100%;
    min-height: var(--ui-height-sm);
    overflow: hidden;
    text-overflow: ellipsis; }
    .panel-cart .cart-item-pricing-dropdown .btn span:first-child {
      display: block;
      overflow: hidden;
      text-overflow: ellipsis; }
    .panel-cart .cart-item-pricing-dropdown .btn .caret {
      margin-left: var(--spacing-1x); }
    .panel-cart .cart-item-pricing-dropdown .btn .dropdown-price {
      word-break: normal; }
    .panel-cart .cart-item-pricing-dropdown .btn .price-setup-fee {
      display: block; }
  .panel-cart .cart-item-pricing-dropdown .discount_center-base_cart_order_domain_price,
  .panel-cart .cart-item-pricing-dropdown .discount_center-base_cart_order_product_price {
    color: var(--price-savings-color) !important;
    font-size: var(--price-savings-font-size) !important;
    line-height: var(--price-savings-line-height);
    font-weight: var(--price-savings-font-weight);
    text-align: left; }

.panel-cart .cart-item-price {
  width: 140px;
  display: block;
  text-align: left; }
  .panel-cart .cart-item-price-dropdown {
    padding: 0; }
  .panel-cart .cart-item-price [style*="font-size: 1.2em; text-decoration: line-through;"] {
    color: var(--text-lighter-color);
    font-size: var(--font-size-h6) !important;
    font-weight: var(--font-weight-light) !important; }
  .panel-cart .cart-item-price .discount_center-base_cart_order_addon_price {
    color: var(--price-savings-color) !important;
    font-size: var(--price-savings-font-size) !important;
    line-height: var(--price-savings-line-height);
    font-weight: var(--price-savings-font-weight);
    margin-right: var(--spacing-1x); }

.panel-cart .cart-item-qty-placeholder {
  padding: var(--ui-height-base)-var(--line-height-base)/2 0; }
  @media (max-width: 767.98px) {
    .panel-cart .cart-item-qty-placeholder {
      height: 100%;
      padding: 34px 0 0 16px;
      border-right: 1px solid var(--gray-lighter-4);
      border-top: 1px solid var(--gray-lighter-4); } }

.panel-cart .cart-item-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: nowrap; }

.panel-cart .cart-item-config {
  width: 100%;
  background: var(--dropdown-collapse-bg);
  padding: var(--ui-block-padding-sm-v) 0;
  margin-top: var(--ui-block-spacing-xs);
  border-radius: var(--border-radius-base); }

/*
*******************************************
Panel Cart - Config Options
*******************************************
*/
.cart-item-config .config-option {
  display: flex;
  align-items: center;
  column-gap: var(--ui-block-spacing-lg);
  padding: 2px 0; }
  .cart-item-config .config-option-title {
    flex-grow: 1;
    font-size: var(--font-size-xxs);
    line-height: var(--line-height-xxs);
    color: var(--text-faded-color);
    padding-left: var(--ui-block-padding-sm); }
    .cart-item-config .config-option-title .item-name {
      transition: color var(--transition-base);
      color: var(--text-faded-color); }
    .cart-item-config .config-option-title .item-value {
      transition: color var(--transition-base);
      color: var(--text-body-color); }
  .cart-item-config .config-option-qty {
    line-height: 20px; }
  .cart-item-config .config-option-price {
    font-size: var(--font-size-xs);
    line-height: var(--line-height-xs); }
  .cart-item-config .config-option-actions {
    display: flex;
    justify-content: flex-end;
    line-height: 20px; }
    .cart-item-config .config-option-actions > button {
      height: 20px; }
  .cart-item-config .config-option.hoverable .config-option-price {
    color: var(--text-primary-color);
    opacity: 0;
    transition: opacity var(--transition-base); }
  .cart-item-config .config-option.hoverable:hover .config-option-title .item-name,
  .cart-item-config .config-option.hoverable:hover .config-option-title .item-value {
    color: var(--text-primary-color); }
  .cart-item-config .config-option.hoverable:hover .config-option-price {
    opacity: 1; }

/*
*******************************************
Panel Cart - Columns Width Desktop
*******************************************
*/
@media (min-width: 768px) {
  .panel-cart .cart-heading .title-col {
    flex-grow: 1;
    min-width: 220px; }
  .panel-cart .cart-heading .qty-col {
    width: 62px;
    min-width: 62px; }
  .panel-cart .cart-heading .price-col {
    width: 140px;
    min-width: 140px; }
  .panel-cart .cart-heading .actions-col {
    width: 100px;
    min-width: 100px; }
  .panel-cart .cart-item-qty {
    width: 62px;
    min-width: 62px; }
  .panel-cart .cart-item-actions {
    width: 100px;
    min-width: 100px; }
  .panel-cart .cart-item-pricing {
    width: 140px;
    min-width: 140px; }
  .panel-cart .cart-item-config .config-option-qty {
    width: 62px;
    min-width: 62px; }
  .panel-cart .cart-item-config .config-option-price {
    width: 140px;
    min-width: 140px;
    white-space: nowrap; }
  .panel-cart .cart-item-config .config-option-actions {
    width: 100px;
    min-width: 100px; } }

/* Cart QTY Field */
.input-number {
  display: flex;
  justify-content: space-between;
  background: var(--input-bg);
  border: var(--input-border);
  transition: border-color 0.24s ease, box-shadow 0.24s ease;
  overflow: hidden;
  border-radius: var(--input-border-radius);
  font-size: var(--input-font-size);
  line-height: var(--input-line-height);
  height: var(--ui-height-base); }
  .input-number-actions {
    min-width: 22px;
    border: none;
    border-left: 1px solid var(--input-border-color); }
    .input-number-actions .plus {
      transform: rotate(180deg); }
    .input-number-actions .plus, .input-number-actions .minus {
      height: 50%;
      transition: all .4s;
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--decoration-icons); }
      .input-number-actions .plus:hover, .input-number-actions .minus:hover {
        cursor: pointer;
        background-color: var(--gray-lighter-4); }
  .input-number:has(input:focus) {
    border-color: var(--input-focus-border-color); }
    .input-number:has(input:focus) .input-number-actions {
      border-color: var(--input-focus-border-color); }
  .input-number:hover:not(.disabled) {
    border-color: var(--input-focus-border-color); }
    .input-number:hover:not(.disabled) .input-number-actions {
      border-color: var(--input-focus-border-color); }
  .input-number.disabled {
    border: none;
    background: var(--input-disabled-bg); }
    .input-number.disabled input {
      pointer-events: none; }
    .input-number.disabled .input-number-actions .plus:hover,
    .input-number.disabled .input-number-actions .minus:hover {
      cursor: not-allowed;
      background: none; }
  .input-number input {
    padding: var(--spacing-1x) 2px;
    border: none;
    box-shadow: none;
    background: none;
    max-width: 44px;
    text-align: center;
    color: var(--input-color);
    -moz-appearance: textfield; }
    .input-number input:focus {
      outline: 0; }
  .input-numberinput[type="number"]::-webkit-outer-spin-button, .input-number input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  .input-numberinput[type="number"] {
    -moz-appearance: textfield; }
  .input-number-sm {
    border-radius: var(--input-sm-border-radius);
    font-size: var(--input-sm-font-size);
    line-height: var(--input-sm-line-height);
    height: var(--ui-height-sm); }
    .input-number-sm input {
      max-width: 40px; }

/*
*******************************************
Panel Cart - Mobile
*******************************************
*/
@media (max-width: 767.98px) {
  .panel-cart {
    box-shadow: none;
    background: none;
    border: none;
    display: flex;
    flex-direction: column;
    gap: var(--ui-block-spacing-lg); }
    .panel-cart .cart-heading {
      display: none; }
    .panel-cart .cart-item {
      background: var(--ui-block-bg);
      column-gap: var(--ui-block-spacing-sm);
      flex-wrap: wrap; }
      .panel-cart .cart-item-title {
        max-width: 80%; }
      .panel-cart .cart-item-actions {
        flex-grow: 1;
        max-width: 20%; }
      .panel-cart .cart-item-pricing {
        order: 2;
        width: 100%;
        position: relative;
        margin-top: var(--spacing-5x); }
        .panel-cart .cart-item-pricing::after {
          content: '';
          position: absolute;
          top: -20px;
          left: calc(-1 * var(--ui-block-padding-base));
          width: calc(100% + var(--ui-block-padding-base) * 2);
          height: 1px;
          background: var(--ui-block-divider-color); }
        .panel-cart .cart-item-pricing > button {
          width: 100%; }
      .panel-cart .cart-item-qty {
        order: 1;
        width: 100%;
        position: relative;
        margin-top: var(--spacing-5x); }
        .panel-cart .cart-item-qty::after {
          content: '';
          position: absolute;
          top: -20px;
          left: calc(-1 * var(--ui-block-padding-base));
          width: calc(100% + var(--ui-block-padding-base) * 2);
          height: 1px;
          background: var(--ui-block-divider-color); }
      .panel-cart .cart-item-qty-empty {
        display: none; }
      .panel-cart .cart-item .config-option-price {
        display: none !important; }
    .panel-cart .panel-body {
      display: flex;
      flex-direction: column;
      gap: var(--ui-block-spacing-lg); }
    .panel-cart .cart-item,
    .panel-cart .panel-footer {
      border: var(--ui-block-border);
      border-radius: var(--border-radius-base);
      box-shadow: var(--ui-block-shadow); }
    .panel-cart .panel-footer {
      border: 1px solid var(--panel-default-border); }
      .panel-cart .panel-footer .content {
        display: flex;
        width: 100%; }
        .panel-cart .panel-footer .content .btn {
          margin-right: 4px;
          width: 50%; }
          .panel-cart .panel-footer .content .btn:last-child {
            margin-right: 0;
            margin-left: 4px; }
        .panel-cart .panel-footer .content:last-child .btn {
          width: 100%;
          margin-top: var(--ui-block-spacing-xs);
          margin-left: 0; } }

/*
*******************************************
Other
*******************************************
*/
@media (max-width: 767.98px) {
  .spotlight-tlds-container {
    flex-wrap: wrap; }
  .spotlight-tld-container {
    flex-basis: 50%;
    width: 50%;
    min-width: 50%; }
    .spotlight-tld-container .spotlight-tld {
      margin-bottom: var(--ui-block-spacing-xs); }
  .promo-box-content-between {
    flex-direction: column; }
  .promo-box-content .promo-description {
    width: 100%; }
    .promo-box-content .promo-description + .btn {
      margin-left: 0;
      margin-top: var(--ui-block-padding-base); } }

.address {
  margin-bottom: 0; }
  .address-heading {
    margin-bottom: var(--ui-block-spacing-xs); }

.credit-balance {
  margin-bottom: 0;
  padding: var(--ui-block-padding-sm);
  border: 1px solid var(--ui-block-divider-color);
  border-radius: var(--ui-block-border-radius);
  color: var(--text-heading-color);
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h3); }
  .credit-balance-title {
    margin-bottom: var(--ui-block-spacing-xs);
    font-size: var(--font-size-sm);
    line-height: var(--line-height-sm);
    color: var(--text-lighter-color); }
  .credit-balance span {
    font-weight: var(--font-weight-h2); }

.apply-credit-container span > span {
  font-weight: var(--font-weight-bold); }

/*
*******************************************
Domain Search Input
*******************************************
*/
.domain-search-input {
  width: 100%;
  max-width: var(--search-group-max-width);
  margin: 0 auto; }
  .domain-search-input.search-group-combined {
    border: none;
    box-shadow: var(--box-shadow-lg); }
  .domain-search-input .tooltip.left .tooltip-inner {
    background-color: var(--brand-danger-lighter-4);
    border-color: var(--brand-danger-lighter-4);
    color: var(--text-danger-color); }
  .domain-search-input .tooltip.left .tooltip-arrow {
    border-left-color: var(--brand-danger-lighter-4); }

.domain-search-auth {
  max-width: var(--search-group-max-width);
  margin: var(--ui-block-spacing-lg) auto 0;
  position: relative; }
  .domain-search-auth #transferUnavailable {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + var(--spacing-3x)); }

#default-captcha-domainchecker .captchaimage .input-group-addon {
  height: var(--ui-height-base); }

/*
*******************************************
Domain Search Captcha
*******************************************
*/
.domain-search-captcha {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: var(--search-group-max-width);
  border: 1px solid var(--ui-block-divider-color);
  border-radius: var(--ui-block-border-radius);
  margin: var(--ui-block-spacing-sm) auto 0;
  padding: var(--ui-block-padding-sm); }
  .domain-search-captcha:not(.rspage-modern) .captchatext {
    color: rgba(255, 255, 255, 0.64); }
  @media (max-width: 479.98px) {
    .domain-search-captcha:not(.rspage-modern) .input-group {
      flex-direction: column; }
      .domain-search-captcha:not(.rspage-modern) .input-group-addon {
        height: var(--ui-height-base);
        border-radius: var(--border-radius-sm) var(--border-radius-sm) 0 0; }
      .domain-search-captcha:not(.rspage-modern) .input-group .form-control {
        border-radius: 0 0 var(--border-radius-sm) var(--border-radius-sm);
        width: 100% !important;
        text-align: center;
        margin-left: 0;
        margin-right: 0; } }
  .domain-search-captcha .captcha {
    margin: 0; }
  .domain-search-captcha .captchatext {
    padding: 0;
    margin: -2px 0 16px; }
  .domain-search-captcha .tooltip .tooltip-inner {
    background-color: var(--brand-danger-lighter-4);
    border-color: var(--brand-danger-lighter-4);
    color: var(--text-danger-color); }
  .domain-search-captcha .tooltip .tooltip-arrow {
    border-right-color: var(--brand-danger-lighter-4); }

.banner-secondary .domain-search-captcha,
.search-box-primary .domain-search-captcha {
  border-color: var(--primary-block-divider-color); }

.banner-primary .domain-search-captcha,
.search-box-secondary .domain-search-captcha {
  border-color: var(--secondary-block-divider-color); }

/*
*******************************************
Domain Search - Domain Option
*******************************************
*/
.panel-choose-domain:not(.panel-choose-domain-boxed) .panel-domain-option {
  padding: var(--panel-body-padding) var(--ui-block-padding-xlg);
  display: flex;
  justify-content: center;
  flex-direction: column; }
  .panel-choose-domain:not(.panel-choose-domain-boxed) .panel-domain-option > .content {
    max-width: var(--max-width-lg);
    margin: 0 auto;
    width: 100%; }
  .panel-choose-domain:not(.panel-choose-domain-boxed) .panel-domain-option label.radio {
    margin-bottom: var(--ui-block-spacing-lg);
    font-size: var(--font-size-lg); }
  .panel-choose-domain:not(.panel-choose-domain-boxed) .panel-domain-option .radio + .radio {
    margin-top: -5px; }
  .panel-choose-domain:not(.panel-choose-domain-boxed) .panel-domain-option .radio .radio-styled {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0; }
  .panel-choose-domain:not(.panel-choose-domain-boxed) .panel-domain-option .radio > [type="radio"] {
    margin-right: 0;
    width: 0 !important; }
  .panel-choose-domain:not(.panel-choose-domain-boxed) .panel-domain-option .radio span {
    margin-left: var(--spacing-4x);
    display: inline-block; }

.panel-choose-domain:not(.panel-choose-domain-boxed) .recaptcha-container > .tooltip .tooltip-inner,
.panel-choose-domain:not(.panel-choose-domain-boxed) .inline-form-element > .tooltip .tooltip-inner,
.panel-choose-domain:not(.panel-choose-domain-boxed) .captchaimage > .tooltip .tooltip-inner,
.panel-choose-domain:not(.panel-choose-domain-boxed) .form-group > .tooltip .tooltip-inner {
  color: var(--text-danger-color);
  background: var(--brand-danger-lighter-4); }

.panel-choose-domain:not(.panel-choose-domain-boxed) .recaptcha-container > .tooltip .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .inline-form-element > .tooltip .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .captchaimage > .tooltip .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .form-group > .tooltip .tooltip-arrow {
  border-left-color: var(--brand-danger-lighter-4);
  border-right-color: var(--brand-danger-lighter-4); }

.panel-choose-domain:not(.panel-choose-domain-boxed) .recaptcha-container > .tooltip.top .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .inline-form-element > .tooltip.top .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .captchaimage > .tooltip.top .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .form-group > .tooltip.top .tooltip-arrow {
  border-top-color: var(--brand-danger-lighter-4);
  border-left-color: transparent;
  border-right-color: transparent; }

.panel-choose-domain:not(.panel-choose-domain-boxed) .recaptcha-container > .tooltip.bottom .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .inline-form-element > .tooltip.bottom .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .captchaimage > .tooltip.bottom .tooltip-arrow,
.panel-choose-domain:not(.panel-choose-domain-boxed) .form-group > .tooltip.bottom .tooltip-arrow {
  border-width: 0 5px 5px;
  border-color: transparent;
  border-bottom-color: var(--brand-danger-lighter-4);
  margin-left: -4px; }

.panel-choose-domain:not(.panel-choose-domain-boxed) .form-tooltip .form-control + .tooltip .tooltip-inner {
  color: var(--text-danger-color);
  background: var(--brand-danger-lighter-4); }

.panel-choose-domain:not(.panel-choose-domain-boxed) .form-tooltip .form-control + .tooltip .tooltip-arrow {
  border-left-color: var(--brand-danger-lighter-4);
  border-right-color: var(--brand-danger-lighter-4); }

.panel-choose-domain:not(.panel-choose-domain-boxed) .inline-form .inline-form-element:nth-child(2) {
  min-width: auto; }

.panel-choose-domain-boxed .panel-domain-option {
  padding: var(--spacing-4x);
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center; }
  .panel-choose-domain-boxed .panel-domain-option .content {
    display: flex;
    column-gap: var(--spacing-3x);
    width: 100%; }
    .panel-choose-domain-boxed .panel-domain-option .content-1 {
      width: 100%; }
    .panel-choose-domain-boxed .panel-domain-option .content-2 {
      width: 50%; }
    .panel-choose-domain-boxed .panel-domain-option .content-3 {
      width: 33.3%; }
    .panel-choose-domain-boxed .panel-domain-option .content-4 {
      width: 25%; }
    .panel-choose-domain-boxed .panel-domain-option .content-5 {
      width: 20%; }
  .panel-choose-domain-boxed .panel-domain-option .radio {
    margin-block: 0px;
    overflow: hidden;
    border-radius: var(--border-radius-sm); }
    .panel-choose-domain-boxed .panel-domain-option .radio .radio-styled {
      display: none;
      left: 0; }
    .panel-choose-domain-boxed .panel-domain-option .radio .radio-styled.checked + div {
      border-color: var(--brand-primary); }
      .panel-choose-domain-boxed .panel-domain-option .radio .radio-styled.checked + div::before {
        transition: .3s;
        position: absolute;
        top: -26px;
        right: -6px;
        background: var(--brand-primary);
        height: 60px;
        width: 32px;
        transform: rotate(-45deg);
        content: "";
        z-index: 1;
        opacity: 1;
        visibility: visible; }
      .panel-choose-domain-boxed .panel-domain-option .radio .radio-styled.checked + div::after {
        position: absolute;
        top: 3px;
        right: 4px;
        font: normal normal normal 15px/1 lagom-small-icons;
        content: "\e911";
        color: #fff;
        z-index: 2;
        opacity: 1;
        visibility: visible; }
    .panel-choose-domain-boxed .panel-domain-option .radio .box {
      display: flex;
      flex-direction: column;
      align-items: center;
      width: 100%;
      height: 100%;
      padding: var(--spacing-3x) var(--spacing-2x);
      border: 1px solid var(--gray-lighter-4);
      border-radius: var(--border-radius-sm);
      transition: var(--transition-base); }
      .panel-choose-domain-boxed .panel-domain-option .radio .box:hover, .panel-choose-domain-boxed .panel-domain-option .radio .box:focus-visible {
        border: 1px solid var(--brand-primary);
        outline: none !important; }
      .panel-choose-domain-boxed .panel-domain-option .radio .box-text {
        display: flex;
        flex-direction: column; }
        .panel-choose-domain-boxed .panel-domain-option .radio .box-text-title {
          font-size: var(--font-size-md);
          line-height: var(--line-height-md);
          font-weight: var(--font-weight-medium);
          margin-block: var(--spacing-2x) 6px;
          color: var(--text-heading-color); }
        .panel-choose-domain-boxed .panel-domain-option .radio .box-text-subtitle {
          color: var(--text-body-color);
          font-size: var(--font-size-sm);
          line-height: var(--line-height-sm);
          font-weight: 400; }
        .panel-choose-domain-boxed .panel-domain-option .radio .box-text-subtitle, .panel-choose-domain-boxed .panel-domain-option .radio .box-text-title {
          margin-left: 0px;
          text-align: center; }
      .panel-choose-domain-boxed .panel-domain-option .radio .box-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 64px;
        height: 64px;
        min-width: 64px; }
        .panel-choose-domain-boxed .panel-domain-option .radio .box-icon svg {
          width: 100%;
          height: 100%; }
        .panel-choose-domain-boxed .panel-domain-option .radio .box-icon img {
          max-width: 100%; }
        .panel-choose-domain-boxed .panel-domain-option .radio .box-icon .product-graphic-bg {
          width: 64px;
          height: 64px; }
          .panel-choose-domain-boxed .panel-domain-option .radio .box-icon .product-graphic-bg i {
            font-size: 32px; }

.panel-choose-domain-boxed .recaptcha-container > .tooltip .tooltip-inner,
.panel-choose-domain-boxed .inline-form-element > .tooltip .tooltip-inner,
.panel-choose-domain-boxed .captchaimage > .tooltip .tooltip-inner,
.panel-choose-domain-boxed .form-group > .tooltip .tooltip-inner {
  color: var(--text-danger-color);
  background: var(--brand-danger-lighter-4); }

.panel-choose-domain-boxed .recaptcha-container > .tooltip .tooltip-arrow,
.panel-choose-domain-boxed .inline-form-element > .tooltip .tooltip-arrow,
.panel-choose-domain-boxed .captchaimage > .tooltip .tooltip-arrow,
.panel-choose-domain-boxed .form-group > .tooltip .tooltip-arrow {
  border-left-color: var(--brand-danger-lighter-4);
  border-right-color: var(--brand-danger-lighter-4); }

.panel-choose-domain-boxed .recaptcha-container > .tooltip.top .tooltip-arrow,
.panel-choose-domain-boxed .inline-form-element > .tooltip.top .tooltip-arrow,
.panel-choose-domain-boxed .captchaimage > .tooltip.top .tooltip-arrow,
.panel-choose-domain-boxed .form-group > .tooltip.top .tooltip-arrow {
  border-top-color: var(--brand-danger-lighter-4);
  border-left-color: transparent;
  border-right-color: transparent; }

.panel-choose-domain-boxed .recaptcha-container > .tooltip.bottom .tooltip-arrow,
.panel-choose-domain-boxed .inline-form-element > .tooltip.bottom .tooltip-arrow,
.panel-choose-domain-boxed .captchaimage > .tooltip.bottom .tooltip-arrow,
.panel-choose-domain-boxed .form-group > .tooltip.bottom .tooltip-arrow {
  border-width: 0 5px 5px;
  border-color: transparent;
  border-bottom-color: var(--brand-danger-lighter-4);
  margin-left: -4px; }

.panel-choose-domain-boxed .form-tooltip .form-control + .tooltip .tooltip-inner {
  color: var(--text-danger-color);
  background: var(--brand-danger-lighter-4); }

.panel-choose-domain-boxed .form-tooltip .form-control + .tooltip .tooltip-arrow {
  border-left-color: var(--brand-danger-lighter-4);
  border-right-color: var(--brand-danger-lighter-4); }

.panel-choose-domain-boxed .inline-form .inline-form-element:nth-child(2) {
  min-width: auto; }

@media (max-width: 991.98px) {
  .panel-choose-domain-boxed .panel-domain-option {
    padding: var(--panel-body-padding); }
    .panel-choose-domain-boxed .panel-domain-option .content-wrap {
      flex-wrap: wrap; }
    .panel-choose-domain-boxed .panel-domain-option .content {
      row-gap: var(--spacing-2x); }
      .panel-choose-domain-boxed .panel-domain-option .content-4 {
        width: 100%; }
      .panel-choose-domain-boxed .panel-domain-option .content-5 {
        width: 100%; }
      .panel-choose-domain-boxed .panel-domain-option .content .box {
        flex-direction: row;
        column-gap: var(--spacing-3x);
        padding: var(--spacing-2x) var(--spacing-3x); }
        .panel-choose-domain-boxed .panel-domain-option .content .box-icon .svg-icon {
          width: 50px;
          height: 50px; }
        .panel-choose-domain-boxed .panel-domain-option .content .box-text {
          align-items: flex-start; }
          .panel-choose-domain-boxed .panel-domain-option .content .box-text-title {
            margin-block: 0px;
            text-align: left; }
          .panel-choose-domain-boxed .panel-domain-option .content .box-text-subtitle {
            text-align: left; } }

@media (max-width: 767.98px) {
  .panel-choose-domain-boxed .panel-domain-option .content-wrap {
    flex-wrap: wrap; }
  .panel-choose-domain-boxed .panel-domain-option .content {
    flex-wrap: wrap; }
    .panel-choose-domain-boxed .panel-domain-option .content-1, .panel-choose-domain-boxed .panel-domain-option .content-2, .panel-choose-domain-boxed .panel-domain-option .content-3, .panel-choose-domain-boxed .panel-domain-option .content-4, .panel-choose-domain-boxed .panel-domain-option .content-5 {
      width: 100%; } }

/*
*******************************************
Domain Search - Input Box
*******************************************
*/
.panel-domain-search {
  border-radius: 0 0 var(--panel-border-radius) var(--panel-border-radius);
  padding: var(--ui-block-padding-xlg);
  min-height: calc(2 * var(--ui-block-padding-xlg) + var(--ui-height-lg));
  /*#domainincart {
        #incartsld {
            background-position-x: 11px;
        }
    }*/ }
  .panel-domain-search:first-child {
    border-radius: var(--panel-border-radius); }
  .panel-domain-search form,
  .panel-domain-search .inline-form {
    max-width: var(--max-width-lg);
    margin: 0 auto;
    width: 100%; }
    .panel-domain-search form .inline-form-element .btn,
    .panel-domain-search .inline-form .inline-form-element .btn {
      width: 100%; }
  .panel-domain-search .dropdown:not(.dropdown-multi-level) {
    cursor: pointer; }
    .panel-domain-search .dropdown:not(.dropdown-multi-level) .tld-select {
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: var(--ui-height-lg);
      padding: var(--ui-padding-lg-v) var(--ui-padding-lg-h);
      color: var(--input-color);
      font-size: var(--input-lg-font-size);
      background: var(--input-bg);
      border: var(--input-border);
      border-radius: var(--input-lg-border-radius);
      transition: border-color var(--transition-base), box-shadow var(--transition-base), background var(--transition-base); }
      @media (prefers-reduced-motion: reduce) {
        .panel-domain-search .dropdown:not(.dropdown-multi-level) .tld-select {
          transition: none; } }
      .panel-domain-search .dropdown:not(.dropdown-multi-level) .tld-select:hover {
        background-color: var(--input-hover-bg);
        border-color: var(--input-hover-border-color);
        color: var(--input-hover-color); }
    .panel-domain-search .dropdown:not(.dropdown-multi-level) .tld-select:focus, .panel-domain-search .dropdown:not(.dropdown-multi-level):focus-visible, .panel-domain-search .dropdown:not(.dropdown-multi-level):hover,
    .panel-domain-search .dropdown:not(.dropdown-multi-level).show .tld-select {
      background-color: var(--input-focus-bg);
      border-color: var(--input-focus-border-color);
      color: var(--input-focus-color);
      border-radius: var(--input-lg-border-radius); }
    .panel-domain-search .dropdown:not(.dropdown-multi-level) .caret {
      color: var(--text-lighter-color);
      margin-left: 24px; }
    .panel-domain-search .dropdown:not(.dropdown-multi-level) .dropdown-menu-search {
      min-width: 192px;
      margin-top: 6px; }
  .panel-domain-search .default-captcha p {
    color: var(--secondary-block-text-color-faded);
    font-size: var(--font-size-xs);
    margin-bottom: 3px; }
  .panel-domain-search .captchaimage {
    margin-bottom: 0;
    float: none !important;
    width: 100%; }
    .panel-domain-search .captchaimage #inputCaptcha {
      width: 100%; }
  .panel-domain-search .captcha-container + .btn {
    width: 100%;
    margin-top: var(--ui-block-padding-base); }
    .panel-domain-search .captcha-container + .btn i {
      margin-right: 6px; }
  @media (max-width: 767.98px) {
    .panel-domain-search {
      padding: var(--ui-block-padding-base); }
      .panel-domain-search .captcha-container .captchaimage, .panel-domain-search .captcha-container #inputCaptcha {
        width: 100%; }
      .panel-domain-search .captcha-container + .btn {
        max-width: initial !important;
        width: 100% !important;
        margin-top: var(--ui-block-padding-base); } }

.inline-form-prefix {
  background-color: var(--gray-lighter-4);
  color: var(--gray-lighter);
  height: var(--ui-height-lg);
  padding: var(--spacing-2x);
  font-size: var(--input-lg-font-size);
  line-height: var(--input-lg-line-height);
  display: flex;
  justify-content: center;
  align-items: center;
  border-bottom-left-radius: var(--input-lg-border-radius);
  border-top-left-radius: var(--input-lg-border-radius); }
  .inline-form-prefix + .form-control,
  .inline-form-prefix + .search-field .form-control {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0; }
    .inline-form-prefix + .form-control:hover,
    .inline-form-prefix + .search-field .form-control:hover {
      border-color: var(--input-border-color); }
    .inline-form-prefix + .form-control:active, .inline-form-prefix + .form-control:focus, .inline-form-prefix + .form-control:active:focus,
    .inline-form-prefix + .search-field .form-control:active,
    .inline-form-prefix + .search-field .form-control:focus,
    .inline-form-prefix + .search-field .form-control:active:focus {
      border-color: var(--input-border-color); }

.page-configureproductdomain [domain-search-standard] {
  display: flex; }
  @media (max-width: 767.98px) {
    .page-configureproductdomain [domain-search-standard] {
      flex-direction: column; } }

.page-configureproductdomain .inline-form:has(.domain-search-advanced) {
  flex-direction: column; }

.page-domainregister .banner-primary:has(.dropdown-multi-level),
.page-domainregister .banner-secondary:has(.dropdown-multi-level) {
  overflow: visible; }

.domain-search-tabs {
  display: flex;
  align-items: center;
  gap: var(--ui-block-spacing-base);
  margin-bottom: var(--ui-block-spacing-lg); }
  @media (max-width: 767.98px) {
    .domain-search-tabs {
      flex-direction: column; } }
  .domain-search-tabs h3 {
    color: var(--text-heading-color);
    font-weight: var(--font-weight-medium) !important; }
  .domain-search-tabs-bottom {
    justify-content: center;
    margin-top: var(--ui-block-spacing-xlg); }
  .domain-search-tabs .btn-tab-group {
    display: flex;
    border: 1px solid var(--gray-lighter-3);
    padding: 6px;
    border-radius: 100px;
    gap: 4px; }
    .domain-search-tabs .btn-tab-group .btn {
      margin: 0;
      gap: var(--spacing-1x);
      border-radius: 100px;
      border: none;
      background: transparent;
      color: var(--text-heading-color);
      box-shadow: none; }
      .domain-search-tabs .btn-tab-group .btn:not(.active):hover {
        color: var(--text-primary-color); }
      .domain-search-tabs .btn-tab-group .btn.active:first-of-type {
        color: var(--btn-primary-color);
        background: var(--btn-primary-bg); }
      .domain-search-tabs .btn-tab-group .btn.active:last-of-type {
        color: var(--btn-primary-faded-color);
        background: var(--btn-primary-faded-bg); }

.page-domainregister .domain-search-tabs {
  margin-inline: auto;
  max-width: var(--search-group-max-width); }

.domain-search-advanced {
  display: flex;
  flex-wrap: nowrap;
  width: 100%; }
  @media (min-width: 768px) {
    .domain-search-advanced.search-group-lg .search-field .form-control {
      border-bottom-right-radius: 0;
      border-top-right-radius: 0;
      border-right: none; } }
  @media (max-width: 767.98px) {
    .domain-search-advanced.search-group-combined {
      padding: var(--ui-block-padding-base); }
      .domain-search-advanced.search-group-combined > .search-field, .domain-search-advanced.search-group-combined > .dropdown {
        border: 1px solid var(--input-border-color);
        border-radius: var(--border-radius-sm); }
      .domain-search-advanced.search-group-combined .dropdown,
      .domain-search-advanced.search-group-combined .search-group-btn {
        width: 100%; } }
  @media (max-width: 767.98px) {
    .domain-search-advanced {
      flex-direction: column;
      row-gap: var(--ui-block-spacing-base); }
      .domain-search-advanced * {
        margin-left: 0; } }
  .domain-search-advanced .search-field-icon svg path {
    fill: var(--brand-primary); }
  .domain-search-advanced .dropdown-multi-level {
    margin-left: 0; }
    .domain-search-advanced .dropdown-multi-level:has(.show) > .dropdown-toggle {
      color: var(--text-primary-color); }
    .domain-search-advanced .dropdown-multi-level > .dropdown-toggle {
      display: flex;
      align-items: center;
      gap: 10px;
      font-weight: 500; }
      .domain-search-advanced .dropdown-multi-level > .dropdown-toggle:hover, .domain-search-advanced .dropdown-multi-level > .dropdown-toggle:active, .domain-search-advanced .dropdown-multi-level > .dropdown-toggle:focus {
        background-color: var(--input-bg);
        color: var(--text-primary-color);
        border: var(--input-border); }
      .domain-search-advanced .dropdown-multi-level > .dropdown-toggle span {
        transition: color var(--transition-base); }
      @media (min-width: 768px) {
        .domain-search-advanced .dropdown-multi-level > .dropdown-toggle {
          border-left: none !important;
          border-bottom-left-radius: 0;
          border-top-left-radius: 0; } }
    .domain-search-advanced .dropdown-multi-level > .dropdown-menu {
      margin-top: var(--ui-block-spacing-xs); }
    @media (max-width: 767.98px) {
      .domain-search-advanced .dropdown-multi-level .dropdown-menu {
        width: 100%; } }
    .domain-search-advanced .dropdown-multi-level .dropdown .ls-down {
      display: none; }
    @media (max-width: 991.98px) {
      .domain-search-advanced .dropdown-multi-level .dropdown .ls-down {
        display: block; }
      .domain-search-advanced .dropdown-multi-level .dropdown .ls-right {
        display: none; } }
    @media (min-width: 768px) {
      .domain-search-advanced .dropdown-multi-level .dropdown > .dropdown-menu {
        width: auto;
        left: calc(100% + 4px); } }
    @media (min-width: 768px) {
      .domain-search-advanced .dropdown-multi-level .dropdown:not(.dropup) > .dropdown-menu {
        top: 0; } }
  @media (max-width: 767.98px) {
    .domain-search-advanced .search-group-btn .btn {
      width: 100%; } }
  .domain-search-advanced:has(#message:hover) .dropdown-multi-level > .dropdown-toggle {
    background-color: var(--input-hover-bg);
    border-color: var(--input-hover-border-color); }
  .domain-search-advanced:has(#message:focus) .dropdown-multi-level > .dropdown-toggle {
    background-color: var(--input-focus-bg);
    border-color: var(--input-focus-border-color); }
  .domain-search-advanced:has(.inline-form-prefix):has(#message:hover) .dropdown-multi-level > .dropdown-toggle {
    background-color: var(--input-hover-bg); }
  .domain-search-advanced:has(.inline-form-prefix):has(#message:focus) .dropdown-multi-level > .dropdown-toggle {
    background-color: var(--input-focus-bg); }

.domain-lookup-message {
  margin-top: var(--ca-section-spacing); }
  .domain-lookup-message .panel-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--ui-block-spacing-base); }
    .domain-lookup-message .panel-body h6 {
      font-weight: 400; }
    .domain-lookup-message .panel-body p {
      color: var(--text-body-color); }
    .domain-lookup-message .panel-body svg {
      width: 24px;
      height: 24px;
      color: var(--decoration-icons); }

.search-group .inline-form-prefix + .form-control {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  padding-left: var(--ui-padding-base-h); }

.search-group .inline-form-prefix + .form-control + .search-field-icon {
  display: none; }

.search-group-combined .search-field .inline-form-prefix + .search-field-icon {
  display: none; }
  .search-group-combined .search-field .inline-form-prefix + .search-field-icon + .form-control {
    padding-left: var(--ui-padding-base-h); }
    .search-group-combined .search-field .inline-form-prefix + .search-field-icon + .form-control:hover {
      border: 0; }
    .search-group-combined .search-field .inline-form-prefix + .search-field-icon + .form-control:active, .search-group-combined .search-field .inline-form-prefix + .search-field-icon + .form-control:focus, .search-group-combined .search-field .inline-form-prefix + .search-field-icon + .form-control:active:focus {
      border: 0; }

@media (min-width: 480px) {
  .search-group-combined:not(.domain-search-advanced) .search-field .inline-form-prefix {
    margin: calc(var(--spacing-1x) * -1) 0;
    height: calc(var(--ui-height-lg) + var(--spacing-1x) + var(--spacing-1x)); } }

@media (min-width: 768px) {
  .search-group-combined.domain-search-advanced .search-field .inline-form-prefix {
    margin: calc(var(--spacing-1x) * -1) 0;
    height: calc(var(--ui-height-lg) + var(--spacing-1x) + var(--spacing-1x)); } }

.search-box-secondary .inline-form-prefix + .form-control:hover {
  border-color: var(--secondary-block-input-border); }

.search-box-secondary .inline-form-prefix + .form-control:active, .search-box-secondary .inline-form-prefix + .form-control:focus, .search-box-secondary .inline-form-prefix + .form-control:active:focus {
  border-color: var(--secondary-block-input-border); }

.search-box-primary .inline-form-prefix + .form-control:hover {
  border-color: var(--primary-block-input-border); }

.search-box-primary .inline-form-prefix + .form-control:active, .search-box-primary .inline-form-prefix + .form-control:focus, .search-box-primary .inline-form-prefix + .form-control:active:focus {
  border-color: var(--primary-block-input-border); }

.lagom-futuristic .main-banner .search-group-combined .inline-form-prefix {
  color: var(--secondary-block-input-color);
  opacity: 0.4;
  background-color: var(--gray-lighter-2); }

/*
*******************************************
Domain Search - Input Box Styles
*******************************************
*/
.panel-domain-search-primary {
  background: var(--primary-block-bg-h); }

.panel-domain-search-secondary {
  background: var(--secondary-block-bg-h); }

html:not(.lagom-dark-mode) .panel-domain-search-primary .inline-form-element > .form-control::placeholder {
  color: var(--primary-block-input-placeholder-color); }

html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown-header .form-control {
  color: var(--input-color); }

html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown .tld-select, html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown .tld-select:hover, html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown .tld-select:focus,
html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown.show .tld-select,
html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown.show .tld-select:hover,
html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown.show .tld-select:focus {
  color: var(--primary-block-input-color);
  background: var(--primary-block-input-bg);
  border-color: var(--primary-block-input-border); }

html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown .tld-select .caret,
html:not(.lagom-dark-mode) .panel-domain-search-primary .dropdown.show .tld-select .caret {
  color: var(--primary-block-input-caret-color); }

html:not(.lagom-dark-mode) .panel-domain-search-secondary .form-control::placeholder {
  color: var(--secondary-block-input-placeholder-color); }

html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown-header .form-control {
  color: var(--input-color); }

html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown .tld-select, html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown .tld-select:hover, html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown .tld-select:focus,
html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown.show .tld-select,
html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown.show .tld-select:hover,
html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown.show .tld-select:focus {
  color: var(--secondary-block-input-color);
  background: var(--secondary-block-input-bg);
  border-color: var(--secondary-block-input-border); }

html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown .tld-select .caret,
html:not(.lagom-dark-mode) .panel-domain-search-secondary .dropdown.show .tld-select .caret {
  color: var(--secondary-block-input-caret-color); }

.panel-domain-search-primary .domain-search-tabs h3, .panel-domain-search-secondary .domain-search-tabs h3,
.search-box-primary .domain-search-tabs h3,
.search-box-secondary .domain-search-tabs h3 {
  color: var(--text-white-color); }

.panel-domain-search-primary .btn-tab-group, .panel-domain-search-secondary .btn-tab-group,
.search-box-primary .btn-tab-group,
.search-box-secondary .btn-tab-group,
.banner-primary .btn-tab-group,
.banner-secondary .btn-tab-group,
.section-primary .btn-tab-group,
.section-secondary .btn-tab-group {
  background: #FFFFFF0F;
  border-color: var(--ui-block-secondary-divider-border-color); }
  .panel-domain-search-primary .btn-tab-group .btn.btn-sm, .panel-domain-search-primary .btn-tab-group .btn-group-sm > .btn, .panel-domain-search-secondary .btn-tab-group .btn.btn-sm, .panel-domain-search-secondary .btn-tab-group .btn-group-sm > .btn,
  .search-box-primary .btn-tab-group .btn.btn-sm,
  .search-box-primary .btn-tab-group .btn-group-sm > .btn,
  .search-box-secondary .btn-tab-group .btn.btn-sm,
  .search-box-secondary .btn-tab-group .btn-group-sm > .btn,
  .banner-primary .btn-tab-group .btn.btn-sm,
  .banner-primary .btn-tab-group .btn-group-sm > .btn,
  .banner-secondary .btn-tab-group .btn.btn-sm,
  .banner-secondary .btn-tab-group .btn-group-sm > .btn,
  .section-primary .btn-tab-group .btn.btn-sm,
  .section-primary .btn-tab-group .btn-group-sm > .btn,
  .section-secondary .btn-tab-group .btn.btn-sm,
  .section-secondary .btn-tab-group .btn-group-sm > .btn {
    color: var(--text-white-color); }
    .panel-domain-search-primary .btn-tab-group .btn.btn-sm:hover, .panel-domain-search-primary .btn-tab-group .btn-group-sm > .btn:hover, .panel-domain-search-secondary .btn-tab-group .btn.btn-sm:hover, .panel-domain-search-secondary .btn-tab-group .btn-group-sm > .btn:hover,
    .search-box-primary .btn-tab-group .btn.btn-sm:hover,
    .search-box-primary .btn-tab-group .btn-group-sm > .btn:hover,
    .search-box-secondary .btn-tab-group .btn.btn-sm:hover,
    .search-box-secondary .btn-tab-group .btn-group-sm > .btn:hover,
    .banner-primary .btn-tab-group .btn.btn-sm:hover,
    .banner-primary .btn-tab-group .btn-group-sm > .btn:hover,
    .banner-secondary .btn-tab-group .btn.btn-sm:hover,
    .banner-secondary .btn-tab-group .btn-group-sm > .btn:hover,
    .section-primary .btn-tab-group .btn.btn-sm:hover,
    .section-primary .btn-tab-group .btn-group-sm > .btn:hover,
    .section-secondary .btn-tab-group .btn.btn-sm:hover,
    .section-secondary .btn-tab-group .btn-group-sm > .btn:hover {
      color: var(--text-white-color); }
    .panel-domain-search-primary .btn-tab-group .btn.btn-sm.active, .panel-domain-search-primary .btn-tab-group .btn-group-sm > .btn.active, .panel-domain-search-primary .btn-tab-group .btn.btn-sm:active, .panel-domain-search-primary .btn-tab-group .btn-group-sm > .btn:active, .panel-domain-search-secondary .btn-tab-group .btn.btn-sm.active, .panel-domain-search-secondary .btn-tab-group .btn-group-sm > .btn.active, .panel-domain-search-secondary .btn-tab-group .btn.btn-sm:active, .panel-domain-search-secondary .btn-tab-group .btn-group-sm > .btn:active,
    .search-box-primary .btn-tab-group .btn.btn-sm.active,
    .search-box-primary .btn-tab-group .btn-group-sm > .btn.active,
    .search-box-primary .btn-tab-group .btn.btn-sm:active,
    .search-box-primary .btn-tab-group .btn-group-sm > .btn:active,
    .search-box-secondary .btn-tab-group .btn.btn-sm.active,
    .search-box-secondary .btn-tab-group .btn-group-sm > .btn.active,
    .search-box-secondary .btn-tab-group .btn.btn-sm:active,
    .search-box-secondary .btn-tab-group .btn-group-sm > .btn:active,
    .banner-primary .btn-tab-group .btn.btn-sm.active,
    .banner-primary .btn-tab-group .btn-group-sm > .btn.active,
    .banner-primary .btn-tab-group .btn.btn-sm:active,
    .banner-primary .btn-tab-group .btn-group-sm > .btn:active,
    .banner-secondary .btn-tab-group .btn.btn-sm.active,
    .banner-secondary .btn-tab-group .btn-group-sm > .btn.active,
    .banner-secondary .btn-tab-group .btn.btn-sm:active,
    .banner-secondary .btn-tab-group .btn-group-sm > .btn:active,
    .section-primary .btn-tab-group .btn.btn-sm.active,
    .section-primary .btn-tab-group .btn-group-sm > .btn.active,
    .section-primary .btn-tab-group .btn.btn-sm:active,
    .section-primary .btn-tab-group .btn-group-sm > .btn:active,
    .section-secondary .btn-tab-group .btn.btn-sm.active,
    .section-secondary .btn-tab-group .btn-group-sm > .btn.active,
    .section-secondary .btn-tab-group .btn.btn-sm:active,
    .section-secondary .btn-tab-group .btn-group-sm > .btn:active {
      color: var(--btn-primary-faded-color);
      background: var(--btn-primary-faded-bg); }

@media (max-width: 991.98px) {
  .panel-choose-domain .recaptcha-container,
  .panel-choose-domain .inline-form-element,
  .panel-choose-domain .form-group {
    position: relative; }
    .panel-choose-domain .recaptcha-container > .tooltip:not(.bottom),
    .panel-choose-domain .inline-form-element > .tooltip:not(.bottom),
    .panel-choose-domain .form-group > .tooltip:not(.bottom) {
      width: auto;
      left: auto !important;
      right: -5px !important;
      top: -6px !important; }
      .panel-choose-domain .recaptcha-container > .tooltip:not(.bottom) .tooltip-arrow,
      .panel-choose-domain .inline-form-element > .tooltip:not(.bottom) .tooltip-arrow,
      .panel-choose-domain .form-group > .tooltip:not(.bottom) .tooltip-arrow {
        transform: rotate(90deg);
        top: auto !important;
        bottom: -7px !important;
        right: auto !important;
        left: 50% !important; }
      .panel-choose-domain .recaptcha-container > .tooltip:not(.bottom).top,
      .panel-choose-domain .inline-form-element > .tooltip:not(.bottom).top,
      .panel-choose-domain .form-group > .tooltip:not(.bottom).top {
        padding-bottom: 0; }
        .panel-choose-domain .recaptcha-container > .tooltip:not(.bottom).top .tooltip-arrow,
        .panel-choose-domain .inline-form-element > .tooltip:not(.bottom).top .tooltip-arrow,
        .panel-choose-domain .form-group > .tooltip:not(.bottom).top .tooltip-arrow {
          border-width: 5px 0 5px 5px;
          border-top-color: transparent;
          border-left-color: var(--brand-danger-lighter-4);
          border-right-color: var(--brand-danger-lighter-4);
          margin-left: 0; }
      .panel-choose-domain .recaptcha-container > .tooltip:not(.bottom).right .tooltip-arrow,
      .panel-choose-domain .inline-form-element > .tooltip:not(.bottom).right .tooltip-arrow,
      .panel-choose-domain .form-group > .tooltip:not(.bottom).right .tooltip-arrow {
        transform: rotate(-90deg); }
  .panel-choose-domain .inline-form-element > .tooltip {
    top: -30px !important; }
  .panel-choose-domain .form-tooltip {
    position: relative; }
    .panel-choose-domain .form-tooltip .form-control + .tooltip {
      top: -6px !important;
      left: auto !important;
      right: -5px !important; }
      .panel-choose-domain .form-tooltip .form-control + .tooltip .tooltip-arrow {
        transform: rotate(90deg);
        top: auto !important;
        bottom: 7px-!important;
        right: auto !important;
        left: 50% !important; } }

@media (max-width: 767.98px) {
  .panel-domain-search form {
    display: flex;
    flex-direction: column; }
    .panel-domain-search form-element {
      margin-right: 0;
      margin-bottom: var(--ui-block-spacing-sm); }
      .panel-domain-search form-element:last-child {
        margin-bottom: 0; }
      .panel-domain-search form-element .btn {
        width: 100%; }
  .panel-domain-search .search-group {
    display: flex;
    flex-direction: column; }
    .panel-domain-search .search-group .btn {
      margin-left: 0;
      width: 100%;
      margin-top: var(--ui-block-padding-base); }
  .panel-domain-search .inline-form {
    flex-direction: column; }
    .panel-domain-search .inline-form-element {
      margin-left: 0;
      width: 100%; }
      .panel-domain-search .inline-form-element > * {
        width: 100%; }
      .panel-domain-search .inline-form-element + .inline-form-element {
        margin-top: var(--ui-block-padding-base); }
      .panel-domain-search .inline-form-element .dropdown-menu {
        width: 100%; }
  .panel-domain-search select#subdomaintld {
    width: 100% !important; }
  .captchaimage {
    position: relative; }
    .captchaimage > .tooltip {
      width: auto;
      left: auto !important;
      right: -5px !important;
      top: -30px !important; }
      .captchaimage > .tooltip .tooltip-arrow {
        transform: rotate(90deg);
        top: auto !important;
        bottom: -7px !important;
        right: auto !important;
        left: 50% !important; }
      .captchaimage > .tooltip.right .tooltip-arrow {
        transform: rotate(-90deg); } }

#google-recaptcha-domainchecker {
  width: 304px;
  height: 78px;
  margin-top: 15px;
  margin-bottom: 15px; }

@media (max-width: 991.98px) {
  #google-recaptcha-domainchecker {
    padding-left: 2.5%; } }

@media (max-width: 736px) {
  #google-recaptcha-domainchecker {
    transform: scale(0.935);
    transform-origin: 0 0;
    -webkit-transform: scale(0.935);
    -webkit-transform-origin: 0 0; } }

@media (max-width: 384px) {
  #google-recaptcha-domainchecker {
    transform: scale(0.96);
    transform-origin: 0 0; } }

@media (max-width: 360px) {
  #google-recaptcha-domainchecker {
    transform: scale(0.89);
    transform-origin: 0 0; } }

@media (max-width: 320px) {
  #google-recaptcha-domainchecker {
    padding-left: 13.5%;
    transform: scale(0.83);
    transform-origin: 0 0;
    -webkit-transform: scale(0.785);
    -webkit-transform-origin: 0 0; } }

/*
*******************************************
Domain - Lookup
*******************************************
*/
.domain-lookup-result {
  margin-bottom: 0;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px; }
  .domain-lookup-result.list-group {
    overflow: hidden; }
    .domain-lookup-result.list-group .list-group-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      background-color: var(--list-group-bg); }
      .domain-lookup-result.list-group .list-group-item .content {
        display: flex;
        align-items: center;
        font-size: var(--font-size-h5);
        line-height: var(--font-size-h5); }
        .domain-lookup-result.list-group .list-group-item .content .label {
          display: inline-flex;
          margin-left: 8px !important; }
      .domain-lookup-result.list-group .list-group-item .domain {
        color: var(--text-lighter-color);
        font-weight: var(--font-weight-light); }
      .domain-lookup-result.list-group .list-group-item .extension {
        color: var(--text-heading-color);
        font-weight: var(--font-weight-medium); }
      .domain-lookup-result.list-group .list-group-item .actions {
        display: flex;
        align-items: center; }
        .domain-lookup-result.list-group .list-group-item .actions .form-control,
        .domain-lookup-result.list-group .list-group-item .actions .price {
          margin-right: var(--spacing-2x); }
  .domain-lookup-result .actions > .btn-group,
  .domain-lookup-result .actions > .btn-add-to-cart {
    min-width: 136px; }
  @media (max-width: 767.98px) {
    .domain-lookup-result-extended.list-group .list-group-item .actions {
      width: 100%; }
      .domain-lookup-result-extended.list-group .list-group-item .actions .form-control {
        margin: var(--spacing-2x) 0; }
      .domain-lookup-result-extended.list-group .list-group-item .actions > .btn-group,
      .domain-lookup-result-extended.list-group .list-group-item .actions .btn {
        width: 100%; } }

.btn-group-remove {
  border-radius: var(--btn-sm-border-radius);
  overflow: hidden; }
  .btn-group-remove .btn-remove-domain {
    flex-grow: 0;
    width: var(--ui-height-base);
    padding-left: 0;
    padding-right: 0; }
    .btn-group-remove .btn-remove-domain > i {
      margin: 0; }
    .btn-group-remove .btn-remove-domain.btn-sm, .btn-group-remove .btn-group-sm > .btn-remove-domain.btn {
      width: var(--ui-height-sm); }
    .btn-group-remove .btn-remove-domain.btn-lg, .btn-group-remove .btn-group-lg > .btn-remove-domain.btn {
      width: var(--ui-height-lg); }

.btn-group-loader {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  justify-content: center;
  align-items: center; }

.btn-group-remove.loading .btn-group-loader {
  display: flex; }

.btn-group-remove.loading .btn > span, .btn-group-remove.loading .btn i {
  visibility: hidden; }

/*
*******************************************
Domain - TLDs Suggestions
*******************************************
*/
.domain-suggestion-warning {
  font-size: var(--font-size-sm);
  margin-top: var(--ui-block-padding-base);
  color: var(--text-lighter-color);
  text-align: center; }

.domain-suggestion.added {
  background-color: var(--ui-block-active-bg); }

.domain-suggestion .actions-control {
  padding: 0 var(--ui-padding-sm-h);
  line-height: var(--ui-height-sm);
  border-radius: var(--input-sm-border-radius);
  background-color: var(--input-disabled-bg);
  border-color: var(--input-disabled-border-color);
  cursor: not-allowed; }

.lagom-futuristic .more-suggestions {
  clip-path: inset(1px -28px -29px -29px); }

.more-suggestions {
  background: var(--list-group-bg);
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: var(--list-group-border-radius);
  border-bottom-right-radius: var(--list-group-border-radius);
  box-shadow: var(--list-group-box-shadow);
  border: var(--list-group-border);
  border-top: none;
  text-align: center;
  height: 38px; }
  .more-suggestions a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-xs); }
    .more-suggestions a:hover {
      color: var(--link-hover-color); }
    .more-suggestions a i {
      position: relative;
      top: -4px;
      padding-left: var(--spacing-1x); }
  .more-suggestions .btn {
    min-width: 256px; }

@media (max-width: 767.98px) {
  .domain-lookup-result .domain-suggestion {
    flex-direction: column; }
    .domain-lookup-result .domain-suggestion .actions {
      flex-direction: column;
      margin-left: unset !important; }
      .domain-lookup-result .domain-suggestion .actions .price {
        margin: var(--spacing-1x) 0;
        margin-right: 0; } }

@media (max-width: 479.98px) {
  .domain-lookup-result .domain-suggestion .actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    flex-direction: column; }
    .domain-lookup-result .domain-suggestion .actions .price {
      margin-right: 0;
      margin-bottom: var(--ui-block-spacing-xs); } }

/*
*******************************************
Domain - Search Result Box
*******************************************
*/
.domain-checker-result-headline {
  margin-bottom: var(--ca-section-spacing); }
  .domain-checker-result-headline:not(:first-child) {
    margin-top: var(--ui-block-spacing-lg); }
  .domain-checker-result-headline .message {
    min-height: unset;
    margin-bottom: var(--ca-section-spacing);
    padding: var(--ui-block-padding-xlg); }
    .domain-checker-result-headline .message:has(.label-corner) {
      position: relative; }
      .domain-checker-result-headline .message:has(.label-corner) .primary-domain-header {
        width: 100px;
        height: 100px;
        overflow: hidden;
        top: 0;
        right: 0;
        position: absolute; }
      .domain-checker-result-headline .message:has(.label-corner) .label-corner {
        position: absolute;
        top: -15px;
        right: 15px;
        left: auto;
        width: 100px;
        transform: rotate(45deg) translateX(50%);
        color: var(--text-white-color);
        background: linear-gradient(135.46deg, var(--brand-primary-gradient-start) 8.6%, var(--brand-primary-gradient-end) 91.94%);
        display: flex;
        gap: 4px; }
        .domain-checker-result-headline .message:has(.label-corner) .label-corner svg {
          width: 12px;
          height: 12px; }
    .domain-checker-result-headline .message .message-icon {
      height: 80px;
      width: 80px;
      min-width: 80px;
      border: 0; }
      .domain-checker-result-headline .message .message-icon i {
        font-size: var(--font-size-xxlg);
        font-weight: var(--font-weight-bold); }
    .domain-checker-result-headline .message .message-title strong {
      word-break: break-word; }
    .domain-checker-result-headline .message .message-text {
      margin: 0 0 var(--spacing-1x) 0;
      text-align: left;
      font-size: var(--font-size-h4);
      font-weight: var(--font-weight-h4);
      line-height: var(--line-height-h4); }
      .domain-checker-result-headline .message .message-text strong {
        font-weight: var(--font-weight-bold); }
    .domain-checker-result-headline .message .message-title + .domain-price {
      margin-top: calc(-1 * (var(--ui-block-spacing-lg) / 2)); }
    .domain-checker-result-headline .message .domain-price .btn-price {
      display: flex;
      align-items: center;
      word-break: break-word;
      background-clip: padding-box;
      transition: border-color var(--transition-base), box-shadow var(--transition-base), background var(--transition-base); }
      .domain-checker-result-headline .message .domain-price .btn-price:not(.btn-readonly) {
        color: var(--input-color);
        background: var(--input-bg);
        height: var(--ui-height-lg);
        font-size: var(--font-size-h5);
        line-height: var(--font-size-h5);
        font-weight: var(--font-weight-medium);
        padding: var(--ui-padding-base-v) var(--ui-padding-base-h);
        border: var(--input-border);
        border-radius: var(--input-border-radius); }
      .domain-checker-result-headline .message .domain-price .btn-price .btn-icon {
        color: var(--ui-nav-link-icon-color);
        margin-left: var(--spacing-1x);
        transition: color var(--transition-base); }
      .domain-checker-result-headline .message .domain-price .btn-price.btn-readonly {
        pointer-events: none;
        font-size: var(--price-sm-font-size);
        line-height: var(--price-sm-line-height);
        font-weight: var(--price-sm-font-weight);
        color: var(--price-color); }
        .domain-checker-result-headline .message .domain-price .btn-price.btn-readonly .btn-icon {
          display: none; }
      .domain-checker-result-headline .message .domain-price .btn-price small {
        font-size: var(--font-size-h5);
        line-height: inherit;
        font-weight: var(--font-weight-light); }
      .domain-checker-result-headline .message .domain-price .btn-price:hover {
        background-color: var(--input-hover-bg);
        border-color: var(--input-hover-border-color);
        color: var(--input-hover-color); }
      .domain-checker-result-headline .message .domain-price .btn-price:focus {
        background-color: var(--input-focus-bg);
        border-color: var(--input-focus-border-color);
        color: var(--input-focus-color); }
    .domain-checker-result-headline .message .domain-price .dropdown-menu {
      top: calc(100% + var(--spacing-2x)); }

@media (max-width: 991.98px) {
  .page-domainregister .main-content {
    padding-left: 0 !important; }
  .domain-checker-result-headline .message .message-text,
  .domain-checker-result-headline .domain-price .price {
    text-align: center;
    align-items: center; }
  .domain-checker-result-headline .message .message-icon {
    margin: 0 auto var(--spacing-4x); } }

/*
*******************************************
Domain - Promoted Product Boxes
*******************************************
*/
.domain-promo-box {
  border: var(--ui-block-border);
  background: var(--ui-block-bg);
  box-shadow: var(--ui-block-shadow);
  border-radius: var(--ui-block-border-radius);
  padding: var(--spacing-5x) var(--spacing-3x) var(--spacing-3x);
  margin-bottom: var(--ui-block-spacing-sm); }
  .domain-promo-box .promo-box-body {
    display: flex;
    display: flex;
    flex-direction: column; }
  .domain-promo-box .promo-box-icon {
    margin-right: 24px; }
    .domain-promo-box .promo-box-icon img {
      width: 100%;
      max-width: 80px;
      max-height: 80px; }
  .domain-promo-box .promo-box-header h3 {
    margin-bottom: var(--ui-block-spacing-xs);
    font-size: var(--font-size-h6);
    font-weight: var(--font-weight-h6);
    line-height: var(--line-height-h6); }
  .domain-promo-box .promo-box-header .description {
    margin-bottom: 0;
    color: var(--text-lighter-color); }
  .domain-promo-box .promo-box-content {
    display: flex;
    text-align: unset; }
    .domain-promo-box .promo-box-content:first-of-type {
      flex-direction: row; }
    .domain-promo-box .promo-box-content-between {
      justify-content: space-between; }
    .domain-promo-box .promo-box-content .promo-description {
      font-size: var(--font-size-sm);
      color: var(--text-lighter-color);
      margin-bottom: 0;
      line-height: 18px;
      width: 50%;
      flex-basis: 50%; }
      .domain-promo-box .promo-box-content .promo-description + .btn {
        margin-left: 10px; }
    .domain-promo-box .promo-box-content + .promo-box-content {
      margin-top: 48px; }
    .domain-promo-box .promo-box-content .promo-box-icon {
      margin-right: var(--spacing-3x); }
    .domain-promo-box .promo-box-content .promo-box-header h5, .domain-promo-box .promo-box-content .promo-box-header h3 {
      margin-bottom: 0; }
    .domain-promo-box .promo-box-content .promo-description {
      width: 100%; }
      .domain-promo-box .promo-box-content .promo-description + .btn {
        margin-left: 0; }

@media (max-width: 991.98px) {
  .page-domain-renewals .main-grid .main-sidebar.main-sidebar-summary,
  .page-service-renewals .main-grid .main-sidebar.main-sidebar-summary {
    order: 1;
    margin-top: var(--spacing-2x); } }

.subheader-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacing-2x); }
  .subheader-container > div,
  .subheader-container > label {
    margin-bottom: 0px !important; }
  @media (max-width: 479.98px) {
    .subheader-container {
      flex-direction: column;
      align-items: flex-start; }
      .subheader-container > div {
        margin-bottom: var(--spacing-1x) !important; } }

.panel.panel-switch-show-renewable {
  background: none;
  padding: 0;
  border: none;
  box-shadow: none;
  width: max-content;
  margin-bottom: 12px;
  margin-left: auto; }
  .panel.panel-switch-show-renewable .panel-body {
    padding: 0;
    border: none;
    box-shadow: none;
    width: max-content; }
    .panel.panel-switch-show-renewable .panel-body .switch {
      margin-left: 12px; }
  @media (max-width: 479.98px) {
    .panel.panel-switch-show-renewable {
      margin-right: auto;
      margin-left: 0px; } }

.service-renewals .service-renewal:not(.domain-renewal-added) > .panel-body .btn-remove-renewal {
  display: none !important; }

.service-renewals .panel.domain-renewal-added .domain-renewal-actions {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px; }
  .service-renewals .panel.domain-renewal-added .domain-renewal-actions .btn-add-renewal-to-cart {
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px; }

@media (max-width: 479.98px) {
  .service-renewals .panel .panel-body {
    flex-direction: column;
    align-self: flex-start; }
    .service-renewals .panel .panel-body .domain-renewal-form {
      margin-top: var(--spacing-2x);
      margin-left: 0px;
      margin-right: auto; } }

.service-renewals .panel-body {
  display: flex; }

.service-renewals .domain-renewal-title {
  display: flex;
  align-items: center;
  font-size: var(--font-size-xxlg);
  line-height: var(--line-height-xlg); }
  .service-renewals .domain-renewal-title-right {
    display: flex;
    flex-direction: column; }
    .service-renewals .domain-renewal-title-right > div {
      display: flex;
      align-items: center; }
  .service-renewals .domain-renewal-title i[data-toggle="tooltip"] {
    margin-left: var(--spacing-1x);
    cursor: pointer;
    color: var(--gray-icons);
    transition: color var(--transition-base); }
    .service-renewals .domain-renewal-title i[data-toggle="tooltip"]:hover {
      color: var(--text-primary-color); }

.service-renewals .domain-renewal-url {
  font-size: var(--font-size-base);
  line-height: var(--line-height-base); }

.service-renewals .domain-renewal-status {
  margin-left: unset; }
  .service-renewals .domain-renewal-status .label {
    border-radius: 40px;
    text-transform: capitalize; }

.service-renewals .domain-renewal-periods {
  margin-top: 12px;
  width: 100%;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-sm);
  color: var(--text-body-color); }

.service-renewals .domain-renewal-next-due {
  display: flex;
  align-items: center;
  margin-bottom: 5px; }
  .service-renewals .domain-renewal-next-due .domain-renewal-status {
    margin-right: auto;
    margin-left: var(--spacing-1x); }

.service-renewals .domain-renewal-actions > button {
  margin-left: 0; }

.service-renewals .domain-renewal-form {
  align-self: flex-end; }
  .service-renewals .domain-renewal-form .btn-remove-renewal {
    display: none;
    margin-top: var(--ui-block-spacing-xs);
    margin-left: 0px;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    pointer-events: all;
    user-select: auto; }
    .service-renewals .domain-renewal-form .btn-remove-renewal > i {
      margin-left: 0;
      margin-right: 0; }
  .service-renewals .domain-renewal-form .btn-add-renewal-to-cart {
    min-width: 105px; }
    .service-renewals .domain-renewal-form .btn-add-renewal-to-cart.btn-primary:focus {
      color: var(--btn-primary-color);
      background-color: var(--btn-primary-bg);
      border-color: var(--btn-primary-border); }
    .service-renewals .domain-renewal-form .btn-add-renewal-to-cart.btn-primary-faded:focus {
      color: var(--btn-primary-faded-color);
      background-color: var(--btn-primary-faded-bg);
      border-color: var(--btn-primary-faded-border); }

.service-renewals .addon-renewals .service-renewals:not(.domain-renewal-added) > .panel-body .btn-remove-renewal {
  display: none !important; }

.service-renewals .addon-renewals-divider {
  height: 1px;
  background: var(--ui-block-divider-color);
  max-width: 100%;
  margin-top: var(--spacing-2x);
  margin-bottom: 20px; }

.service-renewals .addon-renewals .panel {
  background: none;
  box-shadow: none;
  border: none;
  margin-bottom: 0; }
  .service-renewals .addon-renewals .panel .panel-body {
    padding: 0; }
  .service-renewals .addon-renewals .panel[style="display: none;"] + .panel .addon-renewals-divider {
    display: none; }
  .service-renewals .addon-renewals .panel:first-child {
    padding-top: 4px; }
    .service-renewals .addon-renewals .panel:first-child .addon-renewals-divider {
      display: none; }

.service-renewals .addon-renewals-content {
  padding: 0 var(--panel-body-padding) var(--panel-body-padding) var(--panel-body-padding); }

.service-renewals .addon-renewals-title {
  display: flex;
  align-items: center;
  font-size: var(--font-size-md);
  line-height: var(--line-height-md);
  color: var(--text-body-color);
  padding: 0 var(--panel-body-padding);
  width: 100%; }
  .service-renewals .addon-renewals-title-line {
    height: 1px;
    width: 100%;
    background: var(--ui-block-divider-color);
    margin-left: var(--spacing-2x); }

.service-renewals .addon-renewals .domain-renewal-title {
  font-size: var(--font-size-lg);
  line-height: var(--line-height-lg); }
  .service-renewals .addon-renewals .domain-renewal-title i[data-toggle="tooltip"] {
    font-size: var(--font-size-xs); }

.service-renewals .addon-renewals .domain-renewal-periods {
  margin-top: 10px; }

.service-renewals .addon-renewals .domain-renewal-form .btn-add-renewal-to-cart {
  min-width: 83px; }

.domain-renewal-content,
.service-renewal-content {
  display: flex;
  flex-wrap: wrap; }
  .domain-renewal-content p,
  .service-renewal-content p {
    font-size: var(--font-size-sm);
    margin-bottom: 0;
    width: 100%;
    color: var(--text-lighter-color); }

.domain-renewal-tooltip,
.service-renewal-tooltip {
  cursor: pointer; }

.domain-renewal-title,
.service-renewal-title {
  margin: -8px 0 0 0;
  font-size: var(--font-size-h4);
  font-weight: var(--font-weight-h4);
  line-height: var(--line-height-h4); }

.domain-renewal-status,
.service-renewal-status {
  margin-left: auto; }

.domain-renewal-form,
.service-renewal-form {
  display: flex;
  margin-left: auto; }
  .domain-renewal-form .btn,
  .service-renewal-form .btn {
    margin-left: var(--spacing-1x); }

.domain-renewal-period,
.service-renewal-period {
  width: 100%; }

.domain-renewal-period, .domain-renewal-actions,
.service-renewal-period,
.service-renewal-actions {
  margin-top: var(--ui-block-spacing-xs); }

.domain-renewal .btn > *,
.service-renewal .btn > * {
  transition: var(--transition-base); }

.domain-renewal .btn .added,
.service-renewal .btn .added {
  display: none; }

.domain-renewal .btn .loader,
.service-renewal .btn .loader {
  display: none; }

.domain-renewal-added > .panel-body > .domain-renewal-form > .domain-renewal-actions .btn,
.service-renewal-added > .panel-body > .domain-renewal-form > .domain-renewal-actions .btn {
  user-select: none;
  pointer-events: none; }

/*
*******************************************
Domain - Featured TLDs Boxes
*******************************************
*/
.featured-tlds {
  margin-bottom: calc(-1 * var(--ui-block-spacing-lg)) !important; }
  .featured-tlds-container .featured-tld .img-container {
    height: 120px; }
  @media (max-width: 767.98px) {
    .featured-tlds-container .row {
      margin-left: 0;
      margin-right: 0; }
    .featured-tlds .swiper-slide {
      margin-bottom: var(--ui-block-spacing-sm); } }

.featured-tld {
  margin: 0 0 var(--ui-block-spacing-lg) 0;
  border: var(--ui-block-border);
  background: var(--ui-block-bg);
  box-shadow: var(--ui-block-shadow);
  border-radius: var(--ui-block-border-radius);
  overflow: hidden; }
  .featured-tld .img-container {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: var(--ui-block-padding-sm);
    height: 160px;
    overflow: hidden; }
    .featured-tld .img-container img {
      max-height: 60px;
      max-width: 80%; }
  .featured-tld-price {
    padding: 12px 16px;
    border-top: 1px solid var(--ui-block-divider-color);
    display: flex;
    justify-content: center;
    align-items: center; }
    .featured-tld-price > div {
      align-items: center;
      justify-content: space-between;
      width: 100%; }

@media (max-width: 767.98px) {
  .featured-tld .img-container {
    height: 80px; }
    .featured-tld .img-container img {
      height: 40px; } }

.tld-sale-group {
  padding: 1px 3px;
  color: #fff;
  font-size: 10px;
  text-transform: uppercase; }
  .tld-sale-group-hot {
    background-color: #f9615a; }
  .tld-sale-group-sale {
    background-color: #f7d458; }
  .tld-sale-group-new {
    background-color: #2ad588; }

.tld-mob-value {
  padding-top: 0;
  padding-bottom: 0; }

/*
*******************************************
TLD Pricing - Table
*******************************************
*/
.tld-table .tld-name {
  font-size: var(--font-size-xlg); }
  .tld-table .tld-name span {
    color: var(--text-primary-color); }

.tld-table .tld-label {
  display: block;
  color: var(--text-lighter-color);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-xs); }

.tld-table .tld-register {
  text-align: right; }

@media (min-width: 992px) {
  .tld-table .tld-label {
    display: none; }
  .tld-table small {
    color: var(--text-lighter-color); } }

@media (max-width: 991.98px) {
  .tld-table .table > thead {
    display: none; }
  .tld-table .table > tbody > tr {
    display: flex;
    flex-wrap: wrap;
    padding: var(--ui-block-padding-base);
    padding-bottom: calc(var(--ui-block-padding-base) - var(--ui-block-spacing-sm));
    padding-left: calc(var(--ui-block-padding-base) - var(--ui-block-spacing-sm)); }
    .tld-table .table > tbody > tr:not(:last-child) {
      border-bottom: 1px solid var(--table-border-color); }
    .tld-table .table > tbody > tr td {
      flex: 1;
      display: block;
      border: none;
      height: auto;
      min-width: 80px;
      padding: 0;
      margin-left: var(--ui-block-spacing-sm);
      margin-bottom: var(--ui-block-spacing-sm); }
      .tld-table .table > tbody > tr td:first-child {
        width: 100%;
        flex: 100%;
        margin-bottom: var; } }

@media (max-width: 767.98px) {
  .tld-table .table > thead {
    display: none; }
  .tld-table .table > tbody > tr td:first-child {
    margin-bottom: var(--spacing-2x); }
  .tld-table .table > tbody > tr td.tld-register {
    flex: 100%;
    width: 100%;
    margin-left: 0;
    margin-top: var(--spacing-1x); }
    .tld-table .table > tbody > tr td.tld-register .btn {
      width: 100%; } }

/*
*******************************************
TLD Pricing - Toolbar
*******************************************
*/
.tld-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-bottom: var(--ui-block-spacing-lg); }
  .tld-toolbar > * + * {
    margin-left: var(--spacing-2x); }
  .tld-toolbar .tld-categories {
    flex: 1; }
    .tld-toolbar .tld-categories select {
      opacity: 0;
      visibility: hidden; }
  .tld-toolbar .selectize-control.form-control {
    width: 100%; }
  .tld-toolbar .search-group input {
    min-width: 220px; }

.tld-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--ui-block-spacing-lg); }
  .tld-header .section-title {
    margin-bottom: 0; }

@media (max-width: 767.98px) {
  .tld-header {
    flex-direction: column;
    align-items: flex-start;
    width: 100%; }
    .tld-header .tld-search {
      margin: 0;
      width: 100%; }
  .tld-toolbar {
    align-items: flex-start;
    flex-direction: column;
    width: 100%; }
    .tld-toolbar .tld-categories,
    .tld-toolbar .tld-search {
      margin: 0;
      width: 100%; }
    .tld-toolbar .tld-categories + .tld-search {
      margin-top: var(--ui-block-spacing-lg); } }

/*
*******************************************
Domain - TLDs Spotlight Boxes
*******************************************
*/
.spotlights {
  display: flex;
  flex-wrap: wrap;
  margin-left: -8px;
  margin-right: -8px;
  margin-bottom: -16px; }
  .spotlights .spotlight-col {
    min-width: 156px;
    padding: 0 8px !important; }
  .spotlights-1 .spotlight-col {
    width: 100%; }
  .spotlights-2 .spotlight-col {
    width: 50%; }
  .spotlights-3 .spotlight-col {
    width: 33.3%; }
  .spotlights-4 .spotlight-col {
    width: 25%; }
  .spotlights-5 .spotlight-col {
    width: 20%; }
  .spotlights-6 .spotlight-col {
    width: 16.6%; }
  .spotlights-7 .spotlight-col {
    width: 14.28%; }
  .spotlights-8 .spotlight-col {
    width: 12.5%; }

.spotlight {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 0;
  height: auto;
  background: var(--ui-block-bg);
  box-shadow: var(--ui-block-shadow);
  border-radius: var(--ui-block-border-radius);
  border: var(--ui-block-border);
  text-align: center;
  margin-bottom: 16px; }
  .spotlight-loader {
    height: 132px;
    display: flex;
    align-items: center;
    justify-content: center; }
  .spotlight-content {
    position: relative;
    border-top: none;
    padding: 32px 0; }
    .spotlight-content .extension {
      color: var(--text-heading-color);
      font-size: var(--font-size-h3);
      font-weight: var(--font-weight-bold);
      line-height: var(--line-height-h4);
      margin: 0;
      display: flex;
      justify-content: center; }
      .spotlight-content .extension span {
        color: var(--text-primary-color); }
  .spotlight-footer {
    padding: 0 var(--spacing-1x) var(--spacing-1x);
    background: transparent; }
    .spotlight-footer_price {
      display: block;
      padding-block: 11px; }
      .spotlight-footer_price-bordered {
        padding-block: 0;
        margin-bottom: 11px;
        padding: 0 var(--ui-padding-sm-h);
        height: var(--ui-height-sm);
        font-size: var(--input-sm-font-size);
        line-height: var(--ui-height-sm);
        border-radius: var(--input-sm-border-radius);
        background-color: var(--input-disabled-bg);
        cursor: not-allowed;
        border: var(--input-border);
        border-color: var(--input-disabled-border-color);
        text-align: left; }
    .spotlight-footer_border {
      border-top: 1px solid var(--ui-block-divider-color); }
    .spotlight-footer .btn {
      margin: 0; }
    .spotlight-footer .btn-group {
      display: flex;
      width: 100%; }
  .spotlight .tld-label {
    position: absolute;
    top: 8px;
    left: -5px;
    max-width: 156px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden; }
  .spotlight.unavailable {
    box-shadow: none;
    border: 1px solid var(--gray-lighter-4);
    pointer-events: none; }
    .spotlight.unavailable .label.label-corner {
      background: var(--gray-lighter-4);
      color: var(--text-faded-color); }
    .spotlight.unavailable .spotlight-content .extension {
      color: var(--text-faded-color); }
      .spotlight.unavailable .spotlight-content .extension span {
        color: var(--text-faded-color); }
    .spotlight.unavailable .spotlight-price {
      color: var(--text-faded-color); }
    .spotlight.unavailable .spotlight-footer .form-control {
      text-align: center;
      color: var(--text-faded-color); }
    .spotlight.unavailable .spotlight-footer .btn-unavailable {
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border);
      cursor: not-allowed;
      opacity: 1; }

.spotlight-tld .results {
  display: none; }

@media (min-width: 992px) {
  .spotlights-1, .spotlights-2, .spotlights-3, .spotlights-4, .spotlights-5 {
    margin-left: -12px;
    margin-right: -12px; }
    .spotlights-1 .spotlight-col, .spotlights-2 .spotlight-col, .spotlights-3 .spotlight-col, .spotlights-4 .spotlight-col, .spotlights-5 .spotlight-col {
      padding: 0 12px !important; }
    .spotlights-1 .spotlight-footer, .spotlights-2 .spotlight-footer, .spotlights-3 .spotlight-footer, .spotlights-4 .spotlight-footer, .spotlights-5 .spotlight-footer {
      padding: 0 var(--spacing-2x) var(--spacing-2x); } }

@media (max-width: 991.98px) {
  .spotlights {
    flex-wrap: wrap; }
    .spotlights .spotlight-col {
      width: 25%; } }

@media (max-width: 767.98px) {
  .spotlights {
    flex-wrap: wrap; }
    .spotlights .spotlight-col {
      width: 50%; } }

@media (max-width: 479.98px) {
  .spotlights {
    flex-wrap: wrap; }
    .spotlights .spotlight-col {
      width: 100%; } }

.spotlight-tlds .world-loader {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.spotlight-tlds .section-body {
  position: relative; }

.message-free-domain {
  align-items: flex-start;
  margin-bottom: var(--spacing-3x); }
  .message-free-domain .message-title {
    display: flex;
    align-items: center;
    font-size: var(--font-size-md);
    line-height: var(--line-height-md);
    font-weight: var(--font-weight-medium);
    margin-bottom: calc(var(--spacing-3x)/2); }
    .message-free-domain .message-title > i {
      color: var(--text-primary-color);
      margin-right: 12px; }
  .message-free-domain .message-desc {
    text-align: left;
    padding-left: 0; }
    .message-free-domain .message-desc li {
      display: flex;
      flex-wrap: wrap;
      gap: var(--spacing-1x);
      position: relative;
      color: var(--text-body-color);
      padding-left: var(--spacing-2x); }
      .message-free-domain .message-desc li + li {
        margin-top: var(--spacing-1x); }
      .message-free-domain .message-desc li:before {
        content: '';
        width: 7px;
        min-width: 7px;
        height: 7px;
        background: var(--gray-lighter-3);
        position: absolute;
        top: 7px;
        border-radius: 100%;
        left: 0; }

.lagom-default .message-free-domain {
  background: var(--gray-faded); }
  .lagom-default .message-free-domain .message-desc .label-default {
    background: var(--gray-lighter-4); }

.page-configureproductdomain.lagom-futuristic .popover {
  background: var(--dropdown-bg);
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px); }

.page-configureproductdomain .more-tld {
  cursor: pointer; }

.page-configureproductdomain .popover {
  max-width: 380px; }
  @media (max-width: 767.98px) {
    .page-configureproductdomain .popover {
      max-width: 250px; } }
  .page-configureproductdomain .popover-body {
    padding: 12px; }
  .page-configureproductdomain .popover-tld-container {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    max-height: 200px;
    max-width: 380px;
    overflow-x: hidden;
    overflow-y: scroll; }
    .page-configureproductdomain .popover-tld-container::-webkit-scrollbar {
      width: var(--scrollbar-width); }
    .page-configureproductdomain .popover-tld-container::-webkit-scrollbar-track {
      background: var(--scrollbar-track-bg);
      border-radius: calc(var(--scrollbar-width) /2); }
    .page-configureproductdomain .popover-tld-container::-webkit-scrollbar-thumb {
      background: var(--scrollbar-thumb-bg);
      border-radius: calc(var(--scrollbar-width) /2); }
    .page-configureproductdomain .popover-tld-container::-webkit-scrollbar-thumb:hover {
      background: var(--scrollbar-thumb-hover-bg); }
  .page-configureproductdomain .popover-tld-title {
    width: 100%;
    color: var(--text-heading-color);
    font-weight: var(--font-weight-medium);
    margin-bottom: calc(var(--spacing-1x) / 2);
    text-align: left; }

/*
*******************************************
Doamin Configuration - Info Box
*******************************************
*/
.domain-info {
  display: flex; }
  .domain-info:not(:last-child) {
    margin-bottom: var(--ui-block-spacing-sm); }
  .domain-info-icon svg {
    height: 48px;
    width: 48px; }
  .domain-info-icon {
    padding-right: var(--ui-block-spacing-lg); }
  .domain-info-body {
    width: 100%; }
  .domain-info-top {
    display: flex; }
  .domain-info-title {
    margin-bottom: var(--ui-block-spacing-sm);
    padding-right: var(--ui-block-spacing-lg);
    color: var(--text-heading-color);
    font-size: var(--font-size-h4);
    line-height: var(--line-height-h4);
    word-break: break-word;
    width: 100%; }
  .domain-info .form-control {
    width: 156px;
    margin-right: 16px;
    margin-left: auto; }
  .domain-info .btn {
    min-width: 106px; }
  .domain-info-bottom {
    display: flex;
    justify-content: space-between; }
  .domain-info-hosting i {
    margin-right: var(--ui-block-spacing-xs); }
  .domain-info-period {
    display: block;
    color: var(--text-lighter-color); }
    .domain-info-period i {
      margin-right: var(--ui-block-spacing-xs); }
  .domain-info-addons {
    margin-top: var(--ui-block-spacing-lg);
    margin-bottom: calc(-1 * var(--ui-block-spacing-sm)); }
    .domain-info-addons .panel-check {
      margin-bottom: var(--ui-block-spacing-sm); }
      .domain-info-addons .panel-check .ls-info-circle {
        float: right; }
  .domain-info-additional .form-group:last-child {
    margin-bottom: 0; }
  .domain-info-additional .col-form-label blockquote {
    margin-bottom: 0;
    margin-top: 8px; }
  .domain-info-additional .col-form-label .form-control {
    margin-bottom: 4px; }

.panel-lg .domain-info-addons {
  margin-top: var(--ui-block-spacing-xlg); }
  @media (max-width: 767.98px) {
    .panel-lg .domain-info-addons {
      margin-top: var(--ui-block-spacing-lg); } }

.domain-info-addons-extended .panel .checkbox-styled {
  display: none; }

.domain-info-addons-extended .panel .check-content {
  margin-left: 0; }

.domain-info-addons-extended .panel .check > label {
  padding: var(--panel-body-padding);
  cursor: default;
  height: 100%;
  flex-direction: column; }

.domain-info-addons-extended .panel .check-subtitle {
  font-size: var(--font-size-xlg);
  line-height: var(--line-height-xlg);
  color: var(--text-heading-color);
  font-weight: var(--font-weight-medium);
  margin-bottom: var(--paragraph-margin-bottom);
  margin-left: 0; }
  .domain-info-addons-extended .panel .check-subtitle span {
    color: var(--text-lighter-color);
    font-weight: var(--font-weight-base);
    font-size: var(--font-size-lg); }

.domain-info-addons-extended .panel .check-desc {
  font-size: var(--font-size-base); }

.domain-info-addons-extended .panel .check-title .ls-info-circle {
  display: none; }

.domain-info-addons-extended .panel .btn {
  margin-top: auto; }
  .domain-info-addons-extended .panel .btn span:not(.to-add) {
    display: none; }
  .domain-info-addons-extended .panel .btn i.ls-trash {
    display: none;
    position: absolute;
    right: var(--ui-padding-sm-h); }

.domain-info-addons-extended .panel.checked {
  border-color: var(--panel-default-border) !important; }
  .domain-info-addons-extended .panel.checked .btn {
    color: var(--btn-primary-color);
    background: var(--btn-primary-bg);
    border-color: var(--btn-primary-border); }
    .domain-info-addons-extended .panel.checked .btn:hover {
      color: var(--btn-primary-hover-color);
      background-color: var(--btn-primary-hover-bg);
      border-color: var(--btn-primary-hover-border); }
    .domain-info-addons-extended .panel.checked .btn span {
      display: block; }
      .domain-info-addons-extended .panel.checked .btn span.to-add {
        display: none; }
    .domain-info-addons-extended .panel.checked .btn i.ls-trash {
      display: block; }

.domain-info-addons-extended .panel:hover {
  border-color: var(--panel-default-border);
  cursor: default; }

.domain-info-addons:not(.domain-info-addons-extended) label {
  flex-direction: column; }

.domain-info-addons:not(.domain-info-addons-extended) .check-subtitle {
  margin-left: calc(var(--icheck-size) + var(--ui-block-spacing-sm)); }

.domain-info-addons:not(.domain-info-addons-extended) .domain-addons-title {
  display: none; }

@media (min-width: 992px) {
  .panel-domain-info:has(.domain-info-icon) .domain-info-addons {
    padding-left: calc(48px + var(--ui-block-spacing-lg)); }
  .domain-info-additional {
    padding-left: calc(var(--panel-body-padding) + 48px + var(--ui-block-spacing-lg)); } }

@media (max-width: 767.98px) {
  .domain-info-icon svg {
    width: 32px;
    height: 32px; }
  .domain-info-title {
    order: 0;
    max-width: calc(100% - 36px);
    margin-bottom: 0; }
  .domain-info-top {
    flex-wrap: wrap; }
    .domain-info-top .btn {
      order: 1;
      margin-left: auto;
      min-width: unset;
      border: none;
      box-shadow: none;
      margin-right: calc(-1 * var(--ui-padding-sm-v));
      margin-right: calc(-1 * var(--ui-padding-sm-h)); }
      .domain-info-top .btn > i {
        margin: 0; }
      .domain-info-top .btn .btn-text {
        display: none; }
    .domain-info-top .form-group {
      margin-top: var(--spacing-3x);
      margin-bottom: calc(var(--spacing-1x));
      order: 3;
      display: flex;
      flex: 1 auto;
      margin-left: calc(-32px - var(--ui-block-spacing-lg)); }
      .domain-info-top .form-group .form-control {
        width: 100%;
        margin: unset; }
  .domain-info-bottom {
    flex-direction: column;
    margin-top: 4px; }
    .domain-info-bottom .domain-info-period {
      order: 1; }
    .domain-info-bottom .domain-info-hosting {
      margin-top: 4px;
      order: 2; }
      .domain-info-bottom .domain-info-hosting .label {
        width: 100%;
        justify-content: center; }
  .domain-info-additional .col-form-label {
    padding-top: 0; }
  .panel-domain-info:has(.domain-info-icon) .domain-info-bottom {
    margin-left: calc(-1 * (32px + var(--ui-block-spacing-lg))); } }

/*------------ Configure Product --------------*/
.product-info {
  list-style: none; }

.panel-range-slider .irs,
.slider-slide .irs {
  position: relative;
  display: block;
  min-height: var(--range-slider-handle-height); }
  .panel-range-slider .irs-min, .panel-range-slider .irs-max, .panel-range-slider .irs-from, .panel-range-slider .irs-to, .panel-range-slider .irs-edge, .panel-range-slider .irs-line-left, .panel-range-slider .irs-line-right, .panel-range-slider .irs-line-mid, .panel-range-slider .irs-bar-edge,
  .slider-slide .irs-min,
  .slider-slide .irs-max,
  .slider-slide .irs-from,
  .slider-slide .irs-to,
  .slider-slide .irs-edge,
  .slider-slide .irs-line-left,
  .slider-slide .irs-line-right,
  .slider-slide .irs-line-mid,
  .slider-slide .irs-bar-edge {
    display: none !important; }
  .panel-range-slider .irs-line,
  .slider-slide .irs-line {
    display: block;
    position: relative;
    top: var(--spacing-1x);
    height: var(--range-slider-height);
    background: var(--range-slider-bg);
    border-radius: var(--range-slider-border-radius);
    outline: none; }
  .panel-range-slider .irs-bar,
  .slider-slide .irs-bar {
    position: absolute;
    display: block;
    top: var(--spacing-1x);
    left: 0 !important;
    height: var(--range-slider-height);
    background: var(--range-slider-fill-bg);
    border-radius: var(--range-slider-border-radius);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .panel-range-slider .irs-slider,
  .slider-slide .irs-slider {
    display: block;
    position: absolute;
    top: 0;
    z-index: 1;
    height: var(--range-slider-handle-height);
    width: var(--range-slider-handle-width);
    box-shadow: var(--range-slider-handle-box-shadow);
    background: var(--range-slider-handle-bg);
    border: var(--range-slider-handle-border);
    border-radius: var(--range-slider-handle-border-radius);
    cursor: pointer;
    transition: background var(--transition-base); }
    .panel-range-slider .irs-slider .active, .panel-range-slider .irs-slider:active, .panel-range-slider .irs-slider:focus, .panel-range-slider .irs-slider:hover,
    .slider-slide .irs-slider .active,
    .slider-slide .irs-slider:active,
    .slider-slide .irs-slider:focus,
    .slider-slide .irs-slider:hover {
      box-shadow: var(--range-slider-handle-hover-shadow);
      background: var(--range-slider-handle-hover-bg);
      border: var(--range-slider-handle-hover-border); }
    .panel-range-slider .irs-slider:before,
    .slider-slide .irs-slider:before {
      content: '';
      position: absolute;
      height: 60%;
      width: 1px;
      top: 50%;
      left: 45%;
      transform: translateY(-50%);
      background-color: rgba(0, 0, 0, 0.1); }
    .panel-range-slider .irs-slider:after,
    .slider-slide .irs-slider:after {
      content: '';
      position: absolute;
      height: 60%;
      width: 1px;
      top: 49%;
      left: 55%;
      transform: translateY(-50%);
      background-color: rgba(0, 0, 0, 0.1); }
  .panel-range-slider .irs-grid-pol,
  .slider-slide .irs-grid-pol {
    background: var(--gray-faded); }
    .panel-range-slider .irs-grid-pol.small,
    .slider-slide .irs-grid-pol.small {
      display: none !important; }
  .panel-range-slider .irs-grid-text,
  .slider-slide .irs-grid-text {
    bottom: 0;
    color: var(--range-slider-value-sm-color);
    font-size: var(--range-slider-value-sm-font-size);
    line-height: var(--range-slider-value-sm-line-height); }
  .panel-range-slider .irs-from, .panel-range-slider .irs-to, .panel-range-slider .irs-single,
  .slider-slide .irs-from,
  .slider-slide .irs-to,
  .slider-slide .irs-single {
    position: absolute;
    top: calc(-1 * var(--range-slider-handle-height) - 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    height: var(--range-slider-handle-height);
    min-width: var(--range-slider-handle-width);
    padding: 0 8px;
    background: var(--range-slider-value-bg);
    border-radius: var(--range-slider-handle-border-radius);
    color: var(--range-slider-value-color);
    font-size: var(--range-slider-value-font-size); }
    .panel-range-slider .irs-from:after, .panel-range-slider .irs-to:after, .panel-range-slider .irs-single:after,
    .slider-slide .irs-from:after,
    .slider-slide .irs-to:after,
    .slider-slide .irs-single:after {
      border-top-color: var(--range-slider-value-bg); }

.overlay {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1001;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); }

.product-config-info .panel-body h2 {
  display: flex;
  align-items: center;
  font-size: var(--font-size-xxlg); }

.product-configurable-options .licenseOptionInfo {
  margin-left: var(--spacing-2x);
  cursor: pointer; }
  .product-configurable-options .licenseOptionInfo:hover {
    color: var(--link-hover-color); }

/* :root{
    @include media-breakpoint-down(sm){
        .modal {
            &-url,
            &-location {
                --font-size-h5:       var(--font-size-base);
                --line-height-h5:     var(--line-height-base);
            }
        }
    }
}
 */
:root {
  --modal-scale:                  1.08; }
  @media (max-width: 767.98px) {
    :root {
      --modal-scale:              1.04; } }

.store-choose-domain {
  margin-bottom: var(--ui-block-spacing-xlg); }
  .store-choose-domain .domain-validation {
    display: block;
    white-space: nowrap;
    padding: 12px 0 12px 32px; }
    .store-choose-domain .domain-validation > i {
      margin-right: var(--spacing-2x); }
  .store-choose-domain .store-domain-form {
    display: flex; }
  .store-choose-domain #sub-domain .store-domain-form > div {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    align-items: center; }
    .store-choose-domain #sub-domain .store-domain-form > div div:first-child, .store-choose-domain #sub-domain .store-domain-form > div div:last-child {
      width: 49%; }
  @media (max-width: 767.98px) {
    .store-choose-domain #sub-domain .store-domain-form > div {
      flex-direction: column; }
      .store-choose-domain #sub-domain .store-domain-form > div > div:first-child, .store-choose-domain #sub-domain .store-domain-form > div > div:last-child {
        width: 100%; }
      .store-choose-domain #sub-domain .store-domain-form > div > div:nth-child(2) {
        align-self: flex-start;
        padding-left: var(--spacing-3x);
        padding-bottom: 4px; } }

.store-actions {
  margin-bottom: var(--ca-section-spacing); }
  .store-actions .btn + .btn {
    margin-left: var(--ui-block-padding-base); }

@media (max-width: 479.98px) {
  .store-actions .btn {
    width: 100%;
    margin-left: 0 !important;
    margin-top: var(--ui-block-spacing-sm); } }

.store-order-container .promo-slider-actions form .btn {
  height: unset;
  min-height: var(--ui-height-lg); }
  .store-order-container .promo-slider-actions form .btn .span-upsell {
    white-space: normal; }

.store-order-container .payment-term {
  margin-top: var(--spacing-4x); }

@media (min-width: 768px) {
  #modalTestResults {
    padding: 0 var(--spacing-4x) !important; } }

#modalTestResults .modal-dialog {
  width: 1100px; }

#modalTestResults .modal-header {
  display: flex;
  align-items: center; }
  #modalTestResults .modal-header .close {
    margin-right: 0;
    padding: 0; }
  #modalTestResults .modal-header i {
    margin-right: var(--spacing-2x);
    color: var(--text-primary-color); }
    #modalTestResults .modal-header i.lm-close {
      margin-right: 0;
      color: var(--gray-icons); }

#modalTestResults .modal-url, #modalTestResults .modal-location {
  margin-bottom: 0;
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  color: var(--text-body-color); }
  @media (min-width: 768px) {
    #modalTestResults .modal-url, #modalTestResults .modal-location {
      display: inline; } }
  @media (max-width: 767.98px) {
    #modalTestResults .modal-url, #modalTestResults .modal-location {
      font-size: var(--font-size-base);
      line-height: var(--line-height-base); } }

#modalTestResults .modal-body {
  padding: var(--spacing-5x) var(--spacing-6x) var(--spacing-5x) var(--spacing-6x); }
  @media (max-width: 767.98px) {
    #modalTestResults .modal-body {
      padding: var(--spacing-2x) var(--spacing-2x) var(--spacing-3x) var(--spacing-2x); } }
  #modalTestResults .modal-body-header {
    display: flex;
    gap: 16px;
    justify-content: center; }
    @media (max-width: 767.98px) {
      #modalTestResults .modal-body-header {
        flex-direction: column;
        gap: 8px;
        margin-bottom: 12px; } }

@media (min-width: 768px) {
  #modalTestResults .modal-results {
    padding: 36px 0; } }

#modalTestResults .modal-results .col-sm-12 {
  padding: 12px; }
  @media (max-width: 767.98px) {
    #modalTestResults .modal-results .col-sm-12 {
      padding: var(--spacing-1x) 12px; } }

#modalTestResults .modal-results-box {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border-radius: var(--ui-block-border-radius); }
  @media (min-width: 768px) {
    #modalTestResults .modal-results-box {
      flex-direction: column;
      justify-content: center;
      padding: var(--spacing-6x) var(--spacing-3x); } }
  @media (max-width: 767.98px) {
    #modalTestResults .modal-results-box {
      padding: 18px var(--spacing-2x); } }
  #modalTestResults .modal-results-box--positive {
    background: var(--brand-success-lighter-4);
    border: 1px solid var(--brand-success-lighter-2); }
    #modalTestResults .modal-results-box--positive .metric-icon .ls {
      position: relative;
      color: var(--text-success-color); }
      #modalTestResults .modal-results-box--positive .metric-icon .ls.ls-exclamation-circle, #modalTestResults .modal-results-box--positive .metric-icon .ls.ls-info-circle {
        display: none; }
  #modalTestResults .modal-results-box--info {
    background: var(--brand-warning-lighter-4);
    border: 1px solid var(--brand-warning-lighter-2); }
    #modalTestResults .modal-results-box--info .metric-icon img {
      display: none; }
    #modalTestResults .modal-results-box--info .metric-icon .ls {
      color: var(--text-warning-color); }
      #modalTestResults .modal-results-box--info .metric-icon .ls.ls-exclamation-circle {
        display: none; }
  #modalTestResults .modal-results-box--positive .pulse-text, #modalTestResults .modal-results-box--info .pulse-text {
    animation: unset; }
  #modalTestResults .modal-results-box--negative {
    position: relative; }
    #modalTestResults .modal-results-box--negative:after {
      content: '';
      position: absolute;
      z-index: 1;
      inset: 0;
      width: 100%;
      height: 100%;
      background: var(--brand-danger-lighter-4);
      border: 1px solid var(--brand-danger-lighter-2);
      border-radius: var(--ui-block-border-radius); }
    #modalTestResults .modal-results-box--negative .metric-icon img {
      display: none; }
    #modalTestResults .modal-results-box--negative .metric-icon .ls {
      color: var(--text-danger-color); }
      #modalTestResults .modal-results-box--negative .metric-icon .ls.ls-info-circle {
        display: none; }
    #modalTestResults .modal-results-box--negative > * {
      z-index: 10; }
  #modalTestResults .modal-results-box .metric-icon {
    display: flex;
    align-items: center;
    gap: 12px; }
    @media (max-width: 767.98px) {
      #modalTestResults .modal-results-box .metric-icon {
        gap: 8px; } }
    #modalTestResults .modal-results-box .metric-icon i {
      font-size: 18px; }
  #modalTestResults .modal-results-box span {
    font-weight: var(--font-weight-base);
    font-size: var(--font-size-h5);
    line-height: var(--line-height-h5); }
    @media (max-width: 767.98px) {
      #modalTestResults .modal-results-box span {
        font-size: var(--font-size-base);
        line-height: var(--line-height-base); } }
    #modalTestResults .modal-results-box span.metric-value {
      font-weight: var(--font-weight-bold);
      font-size: var(--font-size-h3);
      line-height: var(--line-height-h3);
      color: var(--text-heading-color); }
      @media (max-width: 767.98px) {
        #modalTestResults .modal-results-box span.metric-value {
          font-size: var(--font-size-xxlg);
          line-height: var(--line-height-xxlg); } }
  #modalTestResults .modal-results-box h3 {
    margin-bottom: 0;
    font-weight: var(--font-weight-bold); }
    @media (max-width: 767.98px) {
      #modalTestResults .modal-results-box h3 {
        font-size: var(--font-size-h4);
        line-height: var(--line-height-h4); } }

#modalTestResults .modal-actions i {
  margin-left: var(--spacing-2x);
  margin-right: 0; }

@media (max-width: 767.98px) {
  #modalTestResults .modal-actions .btn {
    width: 100%;
    margin-top: 12px; } }

.loader-circle.visible {
  display: flex !important;
  animation: spin 1s linear infinite; }

.pulse-text {
  animation-name: pulse-text;
  animation-duration: 3s;
  animation-iteration-count: infinite;
  animation-direction: alternate; }

@keyframes pulse-text {
  0% {
    transform: scale(0.8); }
  70% {
    transform: scale(1.1); }
  100% {
    transform: scale(0.8); } }

/*
*******************************************
Promo
1. Banner Default
2. Banner Slim
3. Cart
4. Others
*******************************************
*/
/*
*******************************************
1. Promo - Banner
*******************************************
*/
.promo-banner {
  margin: 20px 0;
  padding: 15px 10px 20px 10px;
  background: var(--ui-block-bg);
  border: var(--ui-block-border);
  box-shadow: var(--ui-block-shadow);
  border-radius: var(--ui-block-border-radius);
  overflow: auto; }
  .promo-banner-rounded {
    border-radius: 4px; }
  .promo-banner .icon {
    float: left;
    margin: 0 20px 0 0; }
    .promo-banner .icon-left {
      margin-bottom: 10px;
      text-align: center; }
  .promo-banner img {
    max-width: 300px;
    max-height: 200px; }
  .promo-banner h3 {
    margin: 0; }
  .promo-banner p {
    margin: 5px 0; }
  .promo-banner ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.92em; }
    .promo-banner ul li {
      margin-bottom: 4px; }
  .promo-banner .fa:not(.fa-spinner) {
    font-size: 1.2em;
    color: #91c590;
    margin-left: 20px;
    margin-right: 10px; }

@media (min-width: 1200px) {
  .promo-banner ul li {
    float: left;
    width: 50%; } }

@media (min-width: 768px) {
  .promo-banner img {
    max-width: 100%;
    max-height: 100%; }
  .promo-banner .icon-left {
    float: left;
    margin: 0;
    width: 155px; }
  .promo-banner .content {
    margin-left: 185px; } }

@media (max-width: 767.98px) {
  .promo-banner form {
    text-align: center; } }

@media (max-width: 650px) {
  .promo-banner .icon {
    width: 100%;
    margin-bottom: 15px; } }

/*
*******************************************
2. Promo - Banner Slim
*******************************************
*/
.promo-banner-slim {
  padding: 10px; }
  .promo-banner-slim .icon-left {
    width: 85px; }
  .promo-banner-slim .content {
    margin-left: 110px; }
  .promo-banner-slim h3 {
    font-size: var(--ui-icon-size-base); }
  .promo-banner-slim h4 {
    font-size: 14px; }
  .promo-banner-slim .btn {
    margin: 0 20px 0 0;
    padding: 6px 20px; }
  .promo-banner-slim.weebly .icon-left {
    width: 160px; }
  .promo-banner-slim.weebly .content {
    margin-left: 185px; }

@media (max-width: 767.98px) {
  .promo-banner-slim .icon-left {
    width: 85px;
    margin-left: auto;
    margin-right: auto; }
    .promo-banner-slim .icon-left img {
      max-width: 100%;
      max-height: 100%; }
  .promo-banner-slim .content {
    margin-left: 0;
    text-align: center; }
  .promo-banner-slim form .btn {
    height: auto;
    min-height: 32px;
    white-space: unset; }
  .promo-banner-slim form .btn,
  .promo-banner-slim form a {
    display: block;
    margin: 0;
    width: 100%; }
  .promo-banner-slim form .btn + .btn,
  .promo-banner-slim form .btn + a,
  .promo-banner-slim form a + a,
  .promo-banner-slim form a + .btn {
    margin-top: var(--ui-block-padding-base); } }

/*
*******************************************
3. Promo - Cart
*******************************************
*/
.promo-cart {
  margin-top: 0;
  margin-bottom: 0;
  border-bottom: 0;
  padding: 20px;
  border-left: 0;
  border-right: 0;
  border-top: 2px solid #00548a; }
  .promo-cart:first-child {
    margin-top: 20px; }
  .promo-cart:last-child {
    margin-bottom: 20px;
    border-bottom: 1px solid #ddd; }
  .promo-cart .btn-add {
    padding: 7px 18px;
    font-size: 1.1em;
    background-color: #00548a; }
  .promo-cart h3 {
    margin: 0 0 10px 0;
    font-size: 20px; }
  .promo-cart h4 {
    font-size: 17px; }
  .promo-cart .pricing {
    text-align: center; }
    .promo-cart .pricing h3 {
      margin-bottom: 0; }
  .promo-cart a {
    color: #3399FF; }
  .promo-cart ul li {
    float: none;
    width: 100%;
    margin-bottom: 4px; }

@media (min-width: 768px) {
  .promo-cart .icon-left {
    width: 120px; }
  .promo-cart .content {
    margin-left: 140px; } }

@media (min-width: 768px) and (max-width: 991px), (min-width: 1200px) {
  .promo-cart .pricing {
    float: right;
    margin-top: -10px; } }

/*
*******************************************
4. Promo - Last Chance
*******************************************
*/
.panel-mc-sso .icon-container {
  margin: 0 auto;
  max-width: 400px; }
  .panel-mc-sso .icon-container img {
    max-width: 100%;
    max-height: 175px; }

.client-home-panels .panel-mc-sso .row > .col-sm-6 {
  width: 100%; }
  .client-home-panels .panel-mc-sso .row > .col-sm-6:first-of-type {
    display: none; }

.client-home-panels .panel-mc-sso .row form {
  color: var(--text-lighter-color); }

.client-home-panels .panel-mc-sso .row select {
  width: 100%;
  display: inline-block; }
  .client-home-panels .panel-mc-sso .row select + .btn {
    margin: 8px 0 0 0;
    width: 100%;
    color: var(--btn-primary-faded-color);
    background: var(--btn-primary-faded-bg);
    border-color: var(--btn-primary-faded-border); }
    .client-home-panels .panel-mc-sso .row select + .btn:focus, .client-home-panels .panel-mc-sso .row select + .btn:focus-visible, .client-home-panels .panel-mc-sso .row select + .btn.focus {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-mc-sso .row select + .btn:hover {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-hover-bg);
      border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled):active, .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).active,
    .open > .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).dropdown-toggle {
      color: var(--btn-primary-faded-hover-color);
      background-color: var(--btn-primary-faded-active-bg);
      border-color: var(--btn-primary-faded-active-border); }
      .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled):active:hover, .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled):active:focus, .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled):active:focus-visible, .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled):active.focus, .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).active:hover, .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).active:focus, .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).active:focus-visible, .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).active.focus,
      .open > .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).dropdown-toggle:hover,
      .open > .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).dropdown-toggle:focus,
      .open > .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
      .open > .client-home-panels .panel-mc-sso .row select + .btn:not(:disabled):not(.disabled).dropdown-toggle.focus {
        color: var(--btn-primary-faded-hover-color);
        background-color: var(--btn-primary-faded-hover-bg);
        border-color: var(--btn-primary-faded-hover-border); }
    .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline) {
      color: var(--btn-primary-faded-color);
      background-color: transparent;
      border-color: transparent; }
      .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):focus, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):focus-visible, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline).focus {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
      .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):hover {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
      .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
        color: var(--btn-primary-faded-hover-color);
        background-color: transparent;
        border-color: transparent; }
        .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .client-home-panels .panel-mc-sso .row select + .btn.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
          color: var(--btn-primary-faded-hover-color);
          background-color: transparent;
          border-color: transparent; }
    .client-home-panels .panel-mc-sso .row select + .btn:active, .client-home-panels .panel-mc-sso .row select + .btn.active,
    .open > .client-home-panels .panel-mc-sso .row select + .btn.dropdown-toggle {
      background-image: none; }
    .client-home-panels .panel-mc-sso .row select + .btn.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .client-home-panels .panel-mc-sso .row select + .btn[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
    fieldset[disabled] .client-home-panels .panel-mc-sso .row select + .btn {
      opacity: var(--btn-disabled-opacity);
      color: var(--btn-disabled-color);
      background-color: var(--btn-disabled-bg);
      border-color: var(--btn-disabled-border);
      cursor: not-allowed; }
      .client-home-panels .panel-mc-sso .row select + .btn.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .client-home-panels .panel-mc-sso .row select + .btn[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
      fieldset[disabled] .client-home-panels .panel-mc-sso .row select + .btn .loader .spinner > div {
        background: var(--btn-disabled-color); }
    .client-home-panels .panel-mc-sso .row select + .btn.disabled:not(.btn-primary):not(.btn-default), .client-home-panels .panel-mc-sso .row select + .btn[disabled]:not(.btn-primary):not(.btn-default) {
      cursor: not-allowed;
      opacity: 0.6; }
    .client-home-panels .panel-mc-sso .row select + .btn .badge {
      color: var(--btn-primary-faded-bg);
      background-color: var(--btn-primary-faded-color); }

.client-home-panels .panel-mc-sso .row .loading {
  display: none !important; }

.client-home-panels .panel-mc-sso .row small {
  margin-top: 12px; }

.client-home-panels .panel-mc-sso .row .login-feedback {
  display: block;
  margin-top: 5px;
  color: var(--text-danger-color); }

/*
*******************************************
Promo - Last Chance on Checkout
*******************************************
*/
.mc-promos .mc-promo {
  margin-bottom: var(--ui-block-spacing-sm);
  box-shadow: var(--ui-block-shadow);
  background: var(--ui-block-bg);
  border: var(--ui-block-border);
  border-radius: var(--ui-block-border-radius);
  overflow: hidden; }
  .mc-promos .mc-promo:last-child {
    margin-bottom: 0; }
  .mc-promos .mc-promo .header {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding-left: calc(var(--ui-block-padding-sm) + 40px);
    padding-right: calc(var(--ui-block-padding-sm) + 188px); }
    .mc-promos .mc-promo .header .expander {
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      order: 1;
      width: 40px;
      height: 100%;
      padding: 8px 8px 8px 16px;
      color: var(--text-primary-color);
      font-size: 24px;
      border-right: 1px solid rgba(255, 255, 255, 0.1);
      cursor: pointer; }
    .mc-promos .mc-promo .header .content {
      order: 1;
      padding: var(--ui-block-padding-sm) 0 var(--ui-block-padding-sm) 0; }
      .mc-promos .mc-promo .header .content .headline {
        margin-bottom: 6px;
        color: var(--text-heading-color);
        font-size: var(--font-size-h6);
        font-weight: var(--font-weight-h6);
        line-height: var(--line-height-h6); }
      .mc-promos .mc-promo .header .content .tagline {
        font-size: var(--font-size-base); }
    .mc-promos .mc-promo .header .cta {
      display: flex;
      align-items: center;
      order: 2;
      width: 100%;
      padding: 0 0 var(--ui-block-padding-sm) 0; }
      .mc-promos .mc-promo .header .cta .btn-add {
        order: 1;
        color: var(--btn-primary-faded-color);
        background: var(--btn-primary-faded-bg);
        border-color: var(--btn-primary-faded-border); }
        .mc-promos .mc-promo .header .cta .btn-add:focus, .mc-promos .mc-promo .header .cta .btn-add:focus-visible, .mc-promos .mc-promo .header .cta .btn-add.focus {
          color: var(--btn-primary-faded-hover-color);
          background-color: var(--btn-primary-faded-hover-bg);
          border-color: var(--btn-primary-faded-hover-border); }
        .mc-promos .mc-promo .header .cta .btn-add:hover {
          color: var(--btn-primary-faded-hover-color);
          background-color: var(--btn-primary-faded-hover-bg);
          border-color: var(--btn-primary-faded-hover-border); }
        .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled):active, .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).active,
        .open > .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).dropdown-toggle {
          color: var(--btn-primary-faded-hover-color);
          background-color: var(--btn-primary-faded-active-bg);
          border-color: var(--btn-primary-faded-active-border); }
          .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled):active:hover, .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled):active:focus, .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled):active:focus-visible, .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled):active.focus, .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).active:hover, .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).active:focus, .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).active:focus-visible, .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).active.focus,
          .open > .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).dropdown-toggle:hover,
          .open > .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).dropdown-toggle:focus,
          .open > .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).dropdown-toggle:focus-visible,
          .open > .mc-promos .mc-promo .header .cta .btn-add:not(:disabled):not(.disabled).dropdown-toggle.focus {
            color: var(--btn-primary-faded-hover-color);
            background-color: var(--btn-primary-faded-hover-bg);
            border-color: var(--btn-primary-faded-hover-border); }
        .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline) {
          color: var(--btn-primary-faded-color);
          background-color: transparent;
          border-color: transparent; }
          .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):focus, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):focus-visible, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline).focus {
            color: var(--btn-primary-faded-hover-color);
            background-color: transparent;
            border-color: transparent; }
          .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):hover {
            color: var(--btn-primary-faded-hover-color);
            background-color: transparent;
            border-color: transparent; }
          .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active {
            color: var(--btn-primary-faded-hover-color);
            background-color: transparent;
            border-color: transparent; }
            .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:hover, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active:focus-visible, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled):active.focus, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:hover, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active:focus-visible, .mc-promos .mc-promo .header .cta .btn-add.btn-link:not(.btn-outline):not(:disabled):not(.disabled).active.focus {
              color: var(--btn-primary-faded-hover-color);
              background-color: transparent;
              border-color: transparent; }
        .mc-promos .mc-promo .header .cta .btn-add:active, .mc-promos .mc-promo .header .cta .btn-add.active,
        .open > .mc-promos .mc-promo .header .cta .btn-add.dropdown-toggle {
          background-image: none; }
        .mc-promos .mc-promo .header .cta .btn-add.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded), .mc-promos .mc-promo .header .cta .btn-add[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded),
        fieldset[disabled] .mc-promos .mc-promo .header .cta .btn-add {
          opacity: var(--btn-disabled-opacity);
          color: var(--btn-disabled-color);
          background-color: var(--btn-disabled-bg);
          border-color: var(--btn-disabled-border);
          cursor: not-allowed; }
          .mc-promos .mc-promo .header .cta .btn-add.disabled:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div, .mc-promos .mc-promo .header .cta .btn-add[disabled]:not(.btn-warning):not(.btn-success):not(.btn-danger):not(.btn-info):not(.btn-primary-faded) .loader .spinner > div,
          fieldset[disabled] .mc-promos .mc-promo .header .cta .btn-add .loader .spinner > div {
            background: var(--btn-disabled-color); }
        .mc-promos .mc-promo .header .cta .btn-add.disabled:not(.btn-primary):not(.btn-default), .mc-promos .mc-promo .header .cta .btn-add[disabled]:not(.btn-primary):not(.btn-default) {
          cursor: not-allowed;
          opacity: 0.6; }
        .mc-promos .mc-promo .header .cta .btn-add .badge {
          color: var(--btn-primary-faded-bg);
          background-color: var(--btn-primary-faded-color); }
        .mc-promos .mc-promo .header .cta .btn-add .arrow {
          display: none; }
      .mc-promos .mc-promo .header .cta .price {
        order: 2;
        width: 100%;
        padding-left: var(--ui-block-padding-sm);
        font-size: var(--price-xs-font-size);
        line-height: var(--price-xs-line-height);
        font-weight: var(--price-xs-font-weight);
        text-align: left; }
    .mc-promos .mc-promo .header .icon {
      position: absolute;
      toP: -36px;
      right: -16px;
      height: 162px;
      width: 188px;
      background-repeat: no-repeat !important;
      background-size: cover !important; }
      .mc-promos .mc-promo .header .icon .promo-slider-icon {
        position: absolute;
        width: 100%;
        height: 100%;
        right: 0;
        bottom: 0;
        opacity: 1; }
  .mc-promos .mc-promo .body {
    display: none;
    padding: var(--ui-block-padding-sm);
    border-top: 1px solid var(--ui-block-divider-color); }
    .mc-promos .mc-promo .body > ul {
      display: flex;
      flex-wrap: wrap;
      padding: 0;
      margin: 0;
      list-style: none; }
      .mc-promos .mc-promo .body > ul > li {
        width: 50%; }
        .mc-promos .mc-promo .body > ul > li > i {
          color: var(--text-primary-color);
          margin-right: var(--spacing-1x); }

.lagom-depth .mc-promos .mc-promo .header,
.lagom-default .mc-promos .mc-promo .header {
  background: var(--gray-gradient-h); }

/*
*******************************************
Promo - Product Details
*******************************************
*/
.mc-promo-login .content, .mc-promo-manage .content {
  display: flex;
  flex-direction: row-reverse; }
  .mc-promo-login .content > div, .mc-promo-manage .content > div {
    flex-grow: 1;
    padding: var(--ui-block-padding-base); }
    .mc-promo-login .content > div .panel-title, .mc-promo-manage .content > div .panel-title {
      font-size: var(--font-size-lg);
      line-height: var(--line-height-lg); }
    .mc-promo-login .content > div .actions .btn, .mc-promo-manage .content > div .actions .btn {
      height: var(--ui-height-sm);
      padding: var(--ui-padding-sm-v) var(--ui-padding-sm-h); }
    .mc-promo-login .content > div .actions .btn-service-sso, .mc-promo-manage .content > div .actions .btn-service-sso {
      color: var(--btn-primary-color);
      background: var(--btn-primary-bg);
      border-color: var(--btn-primary-border);
      margin-right: 12px; }
      .mc-promo-login .content > div .actions .btn-service-sso:hover, .mc-promo-manage .content > div .actions .btn-service-sso:hover {
        color: var(--btn-primary-hover-color);
        background-color: var(--btn-primary-hover-bg);
        border-color: var(--btn-primary-hover-border); }
  .mc-promo-login .content .logo, .mc-promo-manage .content .logo {
    position: relative;
    width: 232px;
    text-align: center;
    overflow: hidden; }
    .mc-promo-login .content .logo img, .mc-promo-manage .content .logo img {
      max-width: 150px; }
    .mc-promo-login .content .logo svg, .mc-promo-manage .content .logo svg {
      position: absolute;
      bottom: 0;
      left: 11px;
      width: 232px;
      height: 200px; }
  .mc-promo-login .content .panel-heading,
  .mc-promo-login .content .panel-body, .mc-promo-manage .content .panel-heading,
  .mc-promo-manage .content .panel-body {
    padding: 0;
    min-height: auto; }
  .mc-promo-login .content .panel-heading + .panel-body, .mc-promo-manage .content .panel-heading + .panel-body {
    margin-top: var(--ui-block-spacing-lg); }

@media (max-width: 767.98px) {
  .mc-promos .mc-promo .header {
    padding-right: var(--ui-block-padding-sm);
    background: var(--ui-block-bg); }
    .mc-promos .mc-promo .header .icon {
      display: none; }
  .mc-promo-login .content .logo, .mc-promo-manage .content .logo {
    width: 142px; }
    .mc-promo-login .content .logo svg, .mc-promo-manage .content .logo svg {
      top: 0px;
      width: 142px;
      height: 113px; } }

@media (max-width: 479.98px) {
  .mc-promo-login .content, .mc-promo-manage .content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    .mc-promo-login .content .logo, .mc-promo-manage .content .logo {
      margin: 0;
      height: 113px; }
      .mc-promo-login .content .logo svg, .mc-promo-manage .content .logo svg {
        left: 0; }
    .mc-promo-login .content .panel-heading .panel-title, .mc-promo-manage .content .panel-heading .panel-title {
      text-align: center; }
    .mc-promo-login .content .panel-body, .mc-promo-manage .content .panel-body {
      text-align: center; } }

/* Market Connect Manage Boxes */
.section-hook-output #mc-promo-widgets .mc-promo-login .panel-body .login-feedback,
.section-hook-output #mc-promo-widgets .mc-promo-manage .panel-body .login-feedback {
  color: var(--text-danger-color);
  margin-top: var(--spacing-2x);
  display: none; }
  .section-hook-output #mc-promo-widgets .mc-promo-login .panel-body .login-feedback::before,
  .section-hook-output #mc-promo-widgets .mc-promo-manage .panel-body .login-feedback::before {
    content: "\e973";
    font-family: 'lagom-medium-icons' !important;
    margin-right: 12px; }

body.lagom-futuristic,
body.lagom-futuristic.page-type-full {
  background-image: var(--futuristic-bg);
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: center; }

.lagom-futuristic .package,
.lagom-futuristic .dropdown-menu,
.lagom-futuristic .bottom-action-sticky,
.lagom-futuristic .selectize-dropdown,
.lagom-futuristic .cookie-bar__content,
.lagom-futuristic .site.site-index .section-slider-btn .tile,
.lagom-futuristic .site.site-marketgoo .section-steps .feature {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }

@media (min-width: 992px) {
  .lagom-futuristic.lagom-layout-top.scroll-up .sticky-navigation,
  .lagom-futuristic.lagom-layout-top.scroll-down .sticky-navigation {
    box-shadow: var(--ui-block-overlay-shadow);
    border: transparent; }
    .lagom-futuristic.lagom-layout-top.scroll-up .sticky-navigation::after,
    .lagom-futuristic.lagom-layout-top.scroll-down .sticky-navigation::after {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px);
      background: var(--sticky-menu-bg);
      content: '';
      z-index: -1; } }

.lagom-futuristic .site.site-marketgoo .section-tiles .tile,
.lagom-futuristic .site.site-index .section-slider-btn .tile,
.lagom-futuristic .site.site-marketgoo .section-steps .feature {
  background: var(--ui-block-overlay-bg-2); }

.lagom-futuristic .img-container img,
.lagom-futuristic .logos .logo img,
.lagom-futuristic .check-icon .svg-icon,
.lagom-futuristic .addon-promo-container .logo img,
.lagom-futuristic .mc-promo-login .logo img {
  filter: brightness(0) invert(1); }

.lagom-futuristic #stripeElements .form-control {
  background: #fff; }

.lagom-futuristic #stripeElements + div + #newCardSaveSettings .form-group input {
  background: #fff; }

.lagom-futuristic .svg-graphic-white.svg-graphic-stroke-gray {
  stroke: var(--svg-graphic-bg-white); }

.lagom-futuristic .svg-graphic-on-body.svg-graphic-primary {
  fill: var(--svg-graphic-bg-white); }
  .lagom-futuristic .svg-graphic-on-body.svg-graphic-primary.svg-graphic-stroke, .lagom-futuristic .svg-graphic-on-body.svg-graphic-primary.svg-graphic-stroke-2, .lagom-futuristic .svg-graphic-on-body.svg-graphic-primary.svg-graphic-stroke-4 {
    stroke: var(--svg-graphic-bg-white); }

.lagom-futuristic .svg-graphic-on-body.svg-graphic-stroke-p {
  stroke: var(--svg-graphic-bg-white); }

.lagom-futuristic .svg-graphic-on-search.svg-graphic-faded {
  fill: #DADCDE; }

.lagom-futuristic .site-banner.banner-primary,
.lagom-futuristic .site-banner.banner-secondary,
.lagom-futuristic .site-section.section-primary,
.lagom-futuristic .site-section.section-secondary,
.lagom-futuristic .promo-slider.promo-slider-primary {
  position: relative;
  overflow: hidden; }
  .lagom-futuristic .site-banner.banner-primary:before,
  .lagom-futuristic .site-banner.banner-secondary:before,
  .lagom-futuristic .site-section.section-primary:before,
  .lagom-futuristic .site-section.section-secondary:before,
  .lagom-futuristic .promo-slider.promo-slider-primary:before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    display: block;
    content: "";
    background-image: var(--futuristic-bg);
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center; }
  .lagom-futuristic .site-banner.banner-primary > .container,
  .lagom-futuristic .site-banner.banner-secondary > .container,
  .lagom-futuristic .site-section.section-primary > .container,
  .lagom-futuristic .site-section.section-secondary > .container,
  .lagom-futuristic .promo-slider.promo-slider-primary > .container {
    z-index: 1; }

.lagom-futuristic .site-section.section-primary {
  color: var(--primary-block-text-color); }

.lagom-futuristic .site-section.section-secondary {
  color: var(--secondary-block-text-color); }

@-moz-document url-prefix() {
  .lagom-futuristic .bottom-action-sticky.is-fixed {
    background: var(--ui-block-overlay-bg); } }

.lagom-futuristic input::-webkit-credentials-auto-fill-button {
  background-color: white; }

.lagom-futuristic .md-editor .btn-toolbar .btn-group {
  box-shadow: none; }
  .lagom-futuristic .md-editor .btn-toolbar .btn-group .btn:hover span {
    color: #fff !important; }

.lagom-futuristic .md-editor.md-fullscreen-mode .btn-toolbar .btn-group {
  box-shadow: none; }
  .lagom-futuristic .md-editor.md-fullscreen-mode .btn-toolbar .btn-group .btn span {
    color: var(--text-body-color); }
  .lagom-futuristic .md-editor.md-fullscreen-mode .btn-toolbar .btn-group .btn:hover span {
    color: #000 !important; }

.lagom-futuristic .announcements-list.list-boxed .list-group-item {
  background: var(--dropdown-bg); }

.lagom-futuristic .announcements-toolbar .dropdown-filter .dropdown {
  background-color: unset; }

.lagom-futuristic .icons-network .content-slider-item {
  filter: brightness(5.5); }

.lagom-futuristic .site.site-nordvpn .comparision-images img {
  mix-blend-mode: normal; }

.lagom-futuristic .site-nordvpn .comparison .col-12 .col-2:nth-of-type(2) {
  background: var(--gray-lighter-2) !important; }

.lagom-futuristic .fill-white {
  fill: #fff; }

.lagom-futuristic .fill-gray {
  fill: #E0E0E0; }

.lagom-futuristic .fill-transparent {
  fill: transparent; }

.lagom-futuristic .ticket-reply-attachments ul li a:hover {
  border-color: var(--gray-lighter-3); }
  .lagom-futuristic .ticket-reply-attachments ul li a:hover i {
    color: var(--text-lighter-color); }
  .lagom-futuristic .ticket-reply-attachments ul li a:hover .attachment-container {
    background-color: var(--gray-lighter-3);
    border-top: 1px solid var(--gray-lighter-3); }
    .lagom-futuristic .ticket-reply-attachments ul li a:hover .attachment-container .attachment-extension,
    .lagom-futuristic .ticket-reply-attachments ul li a:hover .attachment-container .attachment-name {
      color: var(--text-lighter-color); }

.lagom-futuristic .site.site-socialbee .pricing-table__row:hover {
  background-color: var(--table-bg-hover); }

.lagom-futuristic .search-field-results {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }

@media (max-width: 991.98px) {
  .lagom-futuristic .app-nav-header::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    z-index: -1; } }

.lagom-dark-mode .featured-tlds .featured-tld img {
  filter: brightness(0) invert(1); }

.lagom-dark-mode .bottom-action-sticky.is-fixed {
  background: var(--ui-block-bg); }

.lagom-dark-mode #paymentGatewaysContainer .check-icon img {
  filter: brightness(0) invert(1); }

.lagom-dark-mode .fill-white {
  fill: #fff; }

.lagom-dark-mode .fill-gray {
  fill: #E0E0E0; }

.lagom-dark-mode .fill-transparent {
  fill: transparent; }

.lagom-dark-mode .img-on-darkmode img {
  filter: brightness(0) invert(1); }

.lagom-dark-mode .main-footer-extended-gray .footer-payment-gateway svg {
  background: var(--gray-faded); }

.lagom-dark-mode #stripeElements .StripeElement {
  background-color: #fff; }

.lagom-dark-mode #inputDescription {
  background-color: #fff;
  color: #17191C; }

.dropdown-support-hours .dropdown-toggle {
  border: none; }

.dropdown-support-hours .dropdown-menu {
  min-width: 380px;
  left: auto;
  right: 0; }

.dropdown-support-hours.order-neg-1 .dropdown-menu {
  left: 0;
  right: auto; }

@media (max-width: 991.98px) {
  .dropdown-support-hours {
    display: none !important; } }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvaWNvbnMvbG0uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvaWNvbnMvbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZ2VuZXJhbC9fZ2VuZXJhbC5zY3NzIiwid2VicGFjazovLy90aGVtZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9nZW5lcmFsL19iZy1jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZ2VuZXJhbC9fYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2dlbmVyYWwvX21haW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZ2VuZXJhbC9fbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2dlbmVyYWwvX2xheW91dC1sZWZ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2dlbmVyYWwvX2xheW91dC1sZWZ0LXdpZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZ2VuZXJhbC9fdG9wLW5hdi5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19wcmludC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19jb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9taXhpbnMvX2JveC1zaGFkb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9taXhpbnMvX2hvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX2Ryb3Bkb3ducy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fc2hvdy1hbmltYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX2J1dHRvbi1ncm91cHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9faW5wdXQtZ3JvdXBzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX25hdnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX2JyZWFkY3J1bWJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9fbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL19sYWJlbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9taXhpbnMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19hbGVydC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9fcHJvZ3Jlc3MtYmFycy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX3BhbmVscy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fcGFuZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX21vZGFscy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19wb3BvdmVycy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvdXRpbGl0aWVzL19pbnRlcmFjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvbWl4aW5zL19yZXNwb25zaXZlLXZpc2liaWxpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9fdHlwZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jvb3RzdHJhcC9fcmVib290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9ib290c3RyYXAvX3RvYXN0cy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvYm9vdHN0cmFwL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvX21hcmtkb3duLWVkaXRvci5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvZGF0YVRhYmxlcy9fZGF0YVRhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy91dGlsaXRpZXMvZGF0YVRhYmxlcy9fcmVzcG9uc2l2ZURhdGFUYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2ludGxUZWxJbnB1dC9pbnRsVGVsSW5wdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2ludGxUZWxJbnB1dC9zcHJpdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX2J1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fY2FwdGNoYS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fZm9ybS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9faWNoZWNrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2VsZW1lbnRzL19pbnZvaWNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2VsZW1lbnRzL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fbWVzc2FnZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fcGFuZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3BhbmVsLXNpZGViYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3BhbmVsLXN1bW1hcnkuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3NlY3Rpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3N0YXR1cy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2VsZW1lbnRzL190aWxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2VsZW1lbnRzL19sb2FkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX2Jhbm5lci5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fcHJvbW8tYWRkb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3Byb21vLXNsaWRlci5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fcHJpY2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3BhY2thZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3N3aXRjaC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fc3ZnLWljb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX2VtYWlsLXZlcmlmeS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fMmZhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2VsZW1lbnRzL190aGVtZS1zd2l0Y2hlci5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fZmVhdHVyZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3NlYXJjaC1ib3guc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX2Nvb2tpZS1ib3guc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX2F2YXRhci5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9lbGVtZW50cy9fbGFuZ3VhZ2UtZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX2FydGljbGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZWxlbWVudHMvX3VzZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL2VsZW1lbnRzL19wcm9tb3Rpb24tcGFnZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9wYWdlcy9fYWZmaWxpYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3BhZ2VzL19hbm5vdW5jZW1lbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvcGFnZXMvX2JpbGxpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvcGFnZXMvX2Vycm9yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3BhZ2VzL19kYXNoYm9hcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvcGFnZXMvX2tub3dsZWRnZWJhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvcGFnZXMvX2xvZ2luLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3BhZ2VzL19uZXR3b3JrLXN0YXR1cy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9wYWdlcy9fcHJvZHVjdC1kZXRhaWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL3BhZ2VzL190aWNrZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvcGFnZXMvX3R3by1mYWN0b3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvcGFnZXMvX21vZHVsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3Mvb3JkZXIvX29yZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL29yZGVyL19zaG9wcGluZy1jYXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL29yZGVyL19kb21haW4tc2VhcmNoLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL29yZGVyL19kb21haW4tcmVuZXdhbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3Mvb3JkZXIvX2RvbWFpbi10bGRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL29yZGVyL19kb21haW4taW5mby5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9vcmRlci9fcHJvZHVjdC1jb25maWd1cmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL2Fzc2V0cy9zY3NzL29yZGVyL19zdG9yZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9vcmRlci9fc3RvcmUtcHJvbW8uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZ2VuZXJhbC9fZnV0dXJpc3RpYy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9hc3NldHMvc2Nzcy9nZW5lcmFsL19kYXJrLW1vZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvYXNzZXRzL3Njc3MvZ2VuZXJhbC9fc3VwcG9ydC1ob3Vycy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksaUNBQWlDO0VBQ2pDLGtEQUFtRDtFQUNuRCxxU0FHOEU7RUFDOUUsbUJBQW1CO0VBQ25CLGtCQUFrQjs7QUFHdEI7OztFQUlRO0VBQ0EsNENBQTRDO0VBQzVDLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixvQkFBb0I7RUFDcEIsY0FBYztFQUNkO0VBQ0EsbUNBQW1DO0VBQ25DLGtDQUFrQztFQUNsQyxtQ0FBbUM7O0FBZjNDOzs7RUFrQlEsZ0JBQWdCOztBQWxCeEI7OztFQXNCUSxnQkFBZ0I7O0FBdEJ4Qjs7O0VBMEJRLGdCQUFnQjs7QUExQnhCOzs7RUE4QlEsZ0JBQWdCOztBQTlCeEI7OztFQWtDUSxnQkFBZ0I7O0FBbEN4Qjs7O0VBc0NRLGdCQUFnQjs7QUF0Q3hCOzs7RUEwQ1EsZ0JBQWdCOztBQTFDeEI7OztFQThDUSxnQkFBZ0I7O0FBOUN4Qjs7O0VBa0RRLGdCQUFnQjs7QUFsRHhCOzs7RUFzRFEsZ0JBQWdCOztBQXREeEI7OztFQTBEUSxnQkFBZ0I7O0FBMUR4Qjs7O0VBOERRLGdCQUFnQjs7QUE5RHhCOzs7RUFrRVEsZ0JBQWdCOztBQWxFeEI7OztFQXNFUSxnQkFBZ0I7O0FBdEV4Qjs7O0VBMEVRLGdCQUFnQjs7QUExRXhCOzs7RUE4RVEsZ0JBQWdCOztBQTlFeEI7OztFQWtGUSxnQkFBZ0I7O0FBbEZ4Qjs7O0VBc0ZRLGdCQUFnQjs7QUF0RnhCOzs7RUEwRlEsZ0JBQWdCOztBQTFGeEI7OztFQThGUSxnQkFBZ0I7O0FBOUZ4Qjs7O0VBa0dRLGdCQUFnQjs7QUFsR3hCOzs7RUFzR1EsZ0JBQWdCOztBQXRHeEI7OztFQTBHUSxnQkFBZ0I7O0FBMUd4Qjs7O0VBOEdRLGdCQUFnQjs7QUE5R3hC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QjtFQXpFOUUscUNEcU13RDtFQ3BNeEQsdUNEb01xRjtFQ25NckYsNkNEbU1zSDtFQ2xNdEg7SUFHRSwyQ0QrTDBKO0lDOUwxSixtREQ4TDZMO0lDN0w3TCxtREQ2TG9PO0VDM0x0TztJQUNFLDJDRDBMMEo7SUN6TDFKLG1ERHlMNkw7SUN4TDdMLG1ERHdMb087RUNyTHBPOztJQUdFLDJDRGtMd0o7SUNqTHhKLG9ERGlMc1E7SUNoTHRRLG9ERGdMOFM7SUMvSzlTOzs7OztNQUlFLDJDRDJLc0o7TUMxS3RKLG1ERDBLeUw7TUN6S3pMLG1ERHlLZ087RUNwS3BPO0lBQ0UscUNEbUtvRDtJQ2xLcEQsNkJBQTZCO0lBQzdCLHlCQUF5QjtJQUN6QjtNQUdFLDJDRDZKc0o7TUM1SnRKLDZCQUE2QjtNQUM3Qix5QkFBeUI7SUFFM0I7TUFDRSwyQ0R3SnNKO01Ddkp0Siw2QkFBNkI7TUFDN0IseUJBQXlCO0lBR3pCO01BRUUsMkNEaUpvSjtNQ2hKcEosNkJBQTZCO01BQzdCLHlCQUF5QjtNQUN6QjtRQUlFLDJDRDBJa0o7UUN6SWxKLDZCQUE2QjtRQUM3Qix5QkFBeUI7RUFPbkM7O0lBR0Usc0JBQXNCO0VBRXhCOztJQUdJLG9DQUFvQztJQUNwQyxnQ0R3SHlVO0lDdkh6VSx3Q0R1SGlXO0lDdEhqVyx3Q0RzSDZYO0lDckg3WCxtQkFBbUI7SUFFakI7O01BQ0UscUNEa0hxVTtFQzlHN1U7SUFFRSxtQkFBbUI7SUFDbkIsWUFBWTtFQUVkO0lBQ0Usa0NEd0dtRjtJQ3ZHbkYsZ0REdUdzRDs7QUFFMUQ7RUN2TUUsaUNEd01vRDtFQ3ZNcEQsbUNEdU02RTtFQ3RNN0UseUNEc00wRztFQ3JNMUc7SUFHRSx1Q0RrTTBJO0lDak0xSSwrQ0RpTXlLO0lDaE16SywrQ0RnTTRNO0VDOUw5TTtJQUNFLHVDRDZMMEk7SUM1TDFJLCtDRDRMeUs7SUMzTHpLLCtDRDJMNE07RUN4TDVNOztJQUdFLHVDRHFMd0k7SUNwTHhJLGdERG9MME87SUNuTDFPLGdERG1MOFE7SUNsTDlROzs7OztNQUlFLHVDRDhLc0k7TUM3S3RJLCtDRDZLcUs7TUM1S3JLLCtDRDRLd007RUN2SzVNO0lBQ0UsaUNEc0tnRDtJQ3JLaEQsNkJBQTZCO0lBQzdCLHlCQUF5QjtJQUN6QjtNQUdFLHVDRGdLc0k7TUMvSnRJLDZCQUE2QjtNQUM3Qix5QkFBeUI7SUFFM0I7TUFDRSx1Q0QySnNJO01DMUp0SSw2QkFBNkI7TUFDN0IseUJBQXlCO0lBR3pCO01BRUUsdUNEb0pvSTtNQ25KcEksNkJBQTZCO01BQzdCLHlCQUF5QjtNQUN6QjtRQUlFLHVDRDZJa0k7UUM1SWxJLDZCQUE2QjtRQUM3Qix5QkFBeUI7RUFPbkM7O0lBR0Usc0JBQXNCO0VBRXhCOztJQUdJLG9DQUFvQztJQUNwQyxnQ0QySHlTO0lDMUh6Uyx3Q0QwSGlVO0lDekhqVSx3Q0R5SDZWO0lDeEg3VixtQkFBbUI7SUFFakI7O01BQ0UscUNEcUhxUztFQ2pIN1M7SUFFRSxtQkFBbUI7SUFDbkIsWUFBWTtFQUVkO0lBQ0UsOEJEMkcyRTtJQzFHM0UsNENEMEdrRDs7QUMvSHhCO0VBekU1QiwrQkQyTWtEO0VDMU1sRCxpQ0QwTXlFO0VDek16RSx1Q0R5TW9HO0VDeE1wRztJQUdFLHFDRHFNa0k7SUNwTWxJLDZDRG9NK0o7SUNuTS9KLDZDRG1NZ007RUNqTWxNO0lBQ0UscUNEZ01rSTtJQy9MbEksNkNEK0wrSjtJQzlML0osNkNEOExnTTtFQzNMaE07O0lBR0UscUNEd0xnSTtJQ3ZMaEksOENEdUw0TjtJQ3RMNU4sOENEc0w4UDtJQ3JMOVA7Ozs7O01BSUUscUNEaUw4SDtNQ2hMOUgsNkNEZ0wySjtNQy9LM0osNkNEK0s0TDtFQzFLaE07SUFDRSwrQkR5SzhDO0lDeEs5Qyw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCO01BR0UscUNEbUs4SDtNQ2xLOUgsNkJBQTZCO01BQzdCLHlCQUF5QjtJQUUzQjtNQUNFLHFDRDhKOEg7TUM3SjlILDZCQUE2QjtNQUM3Qix5QkFBeUI7SUFHekI7TUFFRSxxQ0R1SjRIO01DdEo1SCw2QkFBNkI7TUFDN0IseUJBQXlCO01BQ3pCO1FBSUUscUNEZ0owSDtRQy9JMUgsNkJBQTZCO1FBQzdCLHlCQUF5QjtFQU9uQzs7SUFHRSxzQkFBc0I7RUFFeEI7O0lBR0ksb0NBQW9DO0lBQ3BDLGdDRDhIeVI7SUM3SHpSLHdDRDZIaVQ7SUM1SGpULHdDRDRINlU7SUMzSDdVLG1CQUFtQjtJQUVqQjs7TUFDRSxxQ0R3SHFSO0VDcEg3UjtJQUVFLG1CQUFtQjtJQUNuQixZQUFZO0VBRWQ7SUFDRSw0QkQ4R3VFO0lDN0d2RSwwQ0Q2R2dEOztBQ2xJYTtFQXpFL0QsNEJEOE0rQztFQzdNL0MsOEJENk1tRTtFQzVNbkUsb0NENE0yRjtFQzNNM0Y7SUFHRSxrQ0R3TXNIO0lDdk10SCwwQ0R1TWdKO0lDdE1oSiwwQ0RzTThLO0VDcE1oTDtJQUNFLGtDRG1Nc0g7SUNsTXRILDBDRGtNZ0o7SUNqTWhKLDBDRGlNOEs7RUM5TDlLOztJQUdFLGtDRDJMb0g7SUMxTHBILDJDRDBMdU07SUN6THZNLDJDRHlMc087SUN4THRPOzs7OztNQUlFLGtDRG9Ma0g7TUNuTGxILDBDRG1MNEk7TUNsTDVJLDBDRGtMMEs7RUM3SzlLO0lBQ0UsNEJENEsyQztJQzNLM0MsNkJBQTZCO0lBQzdCLHlCQUF5QjtJQUN6QjtNQUdFLGtDRHNLa0g7TUNyS2xILDZCQUE2QjtNQUM3Qix5QkFBeUI7SUFFM0I7TUFDRSxrQ0RpS2tIO01DaEtsSCw2QkFBNkI7TUFDN0IseUJBQXlCO0lBR3pCO01BRUUsa0NEMEpnSDtNQ3pKaEgsNkJBQTZCO01BQzdCLHlCQUF5QjtNQUN6QjtRQUlFLGtDRG1KOEc7UUNsSjlHLDZCQUE2QjtRQUM3Qix5QkFBeUI7RUFPbkM7O0lBR0Usc0JBQXNCO0VBRXhCOztJQUdJLG9DQUFvQztJQUNwQyxnQ0RpSWlRO0lDaElqUSx3Q0RnSXlSO0lDL0h6Uix3Q0QrSHFUO0lDOUhyVCxtQkFBbUI7SUFFakI7O01BQ0UscUNEMkg2UDtFQ3ZIclE7SUFFRSxtQkFBbUI7SUFDbkIsWUFBWTtFQUVkO0lBQ0UseUJEaUhpRTtJQ2hIakUsdUNEZ0g2Qzs7QUNySXJDO0VBekVWLCtCRGlOa0Q7RUNoTmxELGlDRGdOeUU7RUMvTXpFLHVDRCtNb0c7RUM5TXBHO0lBR0UscUNEMk1rSTtJQzFNbEksNkNEME0rSjtJQ3pNL0osNkNEeU1nTTtFQ3ZNbE07SUFDRSxxQ0RzTWtJO0lDck1sSSw2Q0RxTStKO0lDcE0vSiw2Q0RvTWdNO0VDak1oTTs7SUFHRSxxQ0Q4TGdJO0lDN0xoSSw4Q0Q2TDROO0lDNUw1Tiw4Q0Q0TDhQO0lDM0w5UDs7Ozs7TUFJRSxxQ0R1TDhIO01DdEw5SCw2Q0RzTDJKO01DckwzSiw2Q0RxTDRMO0VDaExoTTtJQUNFLCtCRCtLOEM7SUM5SzlDLDZCQUE2QjtJQUM3Qix5QkFBeUI7SUFDekI7TUFHRSxxQ0R5SzhIO01DeEs5SCw2QkFBNkI7TUFDN0IseUJBQXlCO0lBRTNCO01BQ0UscUNEb0s4SDtNQ25LOUgsNkJBQTZCO01BQzdCLHlCQUF5QjtJQUd6QjtNQUVFLHFDRDZKNEg7TUM1SjVILDZCQUE2QjtNQUM3Qix5QkFBeUI7TUFDekI7UUFJRSxxQ0RzSjBIO1FDckoxSCw2QkFBNkI7UUFDN0IseUJBQXlCO0VBT25DOztJQUdFLHNCQUFzQjtFQUV4Qjs7SUFHSSxvQ0FBb0M7SUFDcEMsZ0NEb0l5UjtJQ25JelIsd0NEbUlpVDtJQ2xJalQsd0NEa0k2VTtJQ2pJN1UsbUJBQW1CO0lBRWpCOztNQUNFLHFDRDhIcVI7RUMxSDdSO0lBRUUsbUJBQW1CO0lBQ25CLFlBQVk7RUFFZDtJQUNFLDRCRG9IdUU7SUNuSHZFLDBDRG1IZ0Q7O0FDeElKO0VBekU5Qyw4QkRvTmlEO0VDbk5qRCxnQ0RtTnVFO0VDbE52RSxzQ0RrTmlHO0VDak5qRztJQUdFLG9DRDhNOEg7SUM3TTlILDRDRDZNMEo7SUM1TTFKLDRDRDRNMEw7RUMxTTVMO0lBQ0Usb0NEeU04SDtJQ3hNOUgsNENEd00wSjtJQ3ZNMUosNENEdU0wTDtFQ3BNMUw7O0lBR0Usb0NEaU00SDtJQ2hNNUgsNkNEZ01xTjtJQy9Mck4sNkNEK0xzUDtJQzlMdFA7Ozs7O01BSUUsb0NEMEwwSDtNQ3pMMUgsNENEeUxzSjtNQ3hMdEosNENEd0xzTDtFQ25MMUw7SUFDRSw4QkRrTDZDO0lDakw3Qyw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCO01BR0Usb0NENEswSDtNQzNLMUgsNkJBQTZCO01BQzdCLHlCQUF5QjtJQUUzQjtNQUNFLG9DRHVLMEg7TUN0SzFILDZCQUE2QjtNQUM3Qix5QkFBeUI7SUFHekI7TUFFRSxvQ0RnS3dIO01DL0p4SCw2QkFBNkI7TUFDN0IseUJBQXlCO01BQ3pCO1FBSUUsb0NEeUpzSDtRQ3hKdEgsNkJBQTZCO1FBQzdCLHlCQUF5QjtFQU9uQzs7SUFHRSxzQkFBc0I7RUFFeEI7O0lBR0ksb0NBQW9DO0lBQ3BDLGdDRHVJaVI7SUN0SWpSLHdDRHNJeVM7SUNySXpTLHdDRHFJcVU7SUNwSXJVLG1CQUFtQjtJQUVqQjs7TUFDRSxxQ0RpSTZRO0VDN0hyUjtJQUVFLG1CQUFtQjtJQUNuQixZQUFZO0VBRWQ7SUFDRSwyQkR1SHFFO0lDdEhyRSx5Q0RzSCtDOztBQUVuRDtFQ3RORSw2QkR1TmdEO0VDdE5oRCwrQkRzTnFFO0VDck5yRSxxQ0RxTjhGO0VDcE45RjtJQUdFLG1DRGlOMEg7SUNoTjFILDJDRGdOcUo7SUMvTXJKLDJDRCtNb0w7RUM3TXRMO0lBQ0UsbUNENE0wSDtJQzNNMUgsMkNEMk1xSjtJQzFNckosMkNEME1vTDtFQ3ZNcEw7O0lBR0UsbUNEb013SDtJQ25NeEgsNENEbU04TTtJQ2xNOU0sNENEa004TztJQ2pNOU87Ozs7O01BSUUsbUNENkxzSDtNQzVMdEgsMkNENExpSjtNQzNMakosMkNEMkxnTDtFQ3RMcEw7SUFDRSw2QkRxTDRDO0lDcEw1Qyw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCO01BR0UsbUNEK0tzSDtNQzlLdEgsNkJBQTZCO01BQzdCLHlCQUF5QjtJQUUzQjtNQUNFLG1DRDBLc0g7TUN6S3RILDZCQUE2QjtNQUM3Qix5QkFBeUI7SUFHekI7TUFFRSxtQ0RtS29IO01DbEtwSCw2QkFBNkI7TUFDN0IseUJBQXlCO01BQ3pCO1FBSUUsbUNENEprSDtRQzNKbEgsNkJBQTZCO1FBQzdCLHlCQUF5QjtFQU9uQzs7SUFHRSxzQkFBc0I7RUFFeEI7O0lBR0ksb0NBQW9DO0lBQ3BDLGdDRDBJeVE7SUN6SXpRLHdDRHlJaVM7SUN4SWpTLHdDRHdJNlQ7SUN2STdULG1CQUFtQjtJQUVqQjs7TUFDRSxxQ0RvSXFRO0VDaEk3UTtJQUVFLG1CQUFtQjtJQUNuQixZQUFZO0VBRWQ7SUFDRSwwQkQwSG1FO0lDekhuRSx3Q0R5SDhDOztBQUVsRDtFQ3pORSw0QkQwTitDO0VDek4vQyw4QkR5Tm1FO0VDeE5uRSxvQ0R3TjJGO0VDdk4zRjtJQUdFLGtDRG9Oc0g7SUNuTnRILDBDRG1OZ0o7SUNsTmhKLDBDRGtOOEs7RUNoTmhMO0lBQ0Usa0NEK01zSDtJQzlNdEgsMENEOE1nSjtJQzdNaEosMENENk04SztFQzFNOUs7O0lBR0Usa0NEdU1vSDtJQ3RNcEgsMkNEc011TTtJQ3JNdk0sMkNEcU1zTztJQ3BNdE87Ozs7O01BSUUsa0NEZ01rSDtNQy9MbEgsMENEK0w0STtNQzlMNUksMENEOEwwSztFQ3pMOUs7SUFDRSw0QkR3TDJDO0lDdkwzQyw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCO01BR0Usa0NEa0xrSDtNQ2pMbEgsNkJBQTZCO01BQzdCLHlCQUF5QjtJQUUzQjtNQUNFLGtDRDZLa0g7TUM1S2xILDZCQUE2QjtNQUM3Qix5QkFBeUI7SUFHekI7TUFFRSxrQ0RzS2dIO01DcktoSCw2QkFBNkI7TUFDN0IseUJBQXlCO01BQ3pCO1FBSUUsa0NEK0o4RztRQzlKOUcsNkJBQTZCO1FBQzdCLHlCQUF5QjtFQU9uQzs7SUFHRSxzQkFBc0I7RUFFeEI7O0lBR0ksb0NBQW9DO0lBQ3BDLGdDRDZJaVE7SUM1SWpRLHdDRDRJeVI7SUMzSXpSLHdDRDJJcVQ7SUMxSXJULG1CQUFtQjtJQUVqQjs7TUFDRSxxQ0R1STZQO0VDbklyUTtJQUVFLG1CQUFtQjtJQUNuQixZQUFZO0VBRWQ7SUFDRSx5QkQ2SGlFO0lDNUhqRSx1Q0Q0SDZDOztBQUtqRDs7RUMzSEUsK0JENkgwRDtFQzVIMUQsdUJBQXVCO0VBQ3ZCLHVDRDJINEc7RUMxSDVHOzs7O0lBR0UscUNEdUgwSTtJQ3RIMUksNkNEc0h1SztJQ3JIdkssNkNEcUh3TTtFQ2xIdE07OztJQUVFLHFDRGdIc0k7SUMvR3RJLDZDRCtHbUs7SUM5R25LLDZDRDhHb007RUMzRzFNOzs7Ozs7SUFHRSxxQ0R3RzBJO0lDdkcxSSw4Q0R1R3NPO0lDdEd0Tyw4Q0RzR3dRO0lDckd4UTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSUUscUNEaUd3STtNQ2hHeEksNkNEZ0dxSztNQy9GckssNkNEK0ZzTTtFQzNHMU07Ozs7OztJQWtCRSxzQkFBc0I7RUFFeEI7Ozs7OztJQUdNLG9DQUFvQztJQUN0QyxnQ0RtRmlTO0lDbEZqUyx3Q0FBd0M7SUFDeEMsOENBQThDO0lBQ2hEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFJRSxnQ0Q0RWlTO01DM0VqUyx3Q0QyRXlUO01DMUV6VCx3Q0QwRXFWO0VDdkV6Vjs7SUFDRSw0QkRzRStFO0lDckUvRSwwQ0RxRXdEO0VBRjVEOztJQUtZLDJCQUEyQjs7QUFJdkM7O0VDcElFLGdDRHNJMkQ7RUNySTNELHVCQUF1QjtFQUN2Qix1Q0RvSXFIO0VDbklySDs7OztJQUdFLGdDRGdJOEk7SUMvSDlJLHFERCtIbUw7SUM5SG5MLHVDRDhIOE07RUMzSDVNOzs7SUFFRSxnQ0R5SDBJO0lDeEgxSSxxRER3SCtLO0lDdkgvSyx1Q0R1SDBNO0VDcEhoTjs7Ozs7O0lBR0UsZ0NEaUg4STtJQ2hIOUksOENEZ0g0TztJQy9HNU8sOENEK0c4UTtJQzlHOVE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlFLGdDRDBHNEk7TUN6RzVJLHFERHlHaUw7TUN4R2pMLHVDRHdHNE07RUNwSGhOOzs7Ozs7SUFrQkUsc0JBQXNCO0VBRXhCOzs7Ozs7SUFHTSxvQ0FBb0M7SUFDdEMsZ0NENEZ1UztJQzNGdlMsd0NBQXdDO0lBQ3hDLDhDQUE4QztJQUNoRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSUUsZ0NEcUZ1UztNQ3BGdlMsd0NEb0YrVDtNQ25GL1Qsd0NEbUYyVjtFQ2hGL1Y7O0lBQ0Usb0NEK0V3RjtJQzlFeEYsMkNEOEV5RDs7QUFFN0Q7O0VDeElFLGtDRDBJNkQ7RUN6STdELHVCQUF1QjtFQUN2Qiw2Q0R3STJIO0VDdkkzSDs7OztJQUdFLDJDRG9JK0o7SUNuSS9KLG1ERG1Ja007SUNsSWxNLG1ERGtJeU87RUMvSHZPOzs7SUFFRSwyQ0Q2SDJKO0lDNUgzSixtREQ0SDhMO0lDM0g5TCxtREQySHFPO0VDeEgzTzs7Ozs7O0lBR0UsMkNEcUgrSjtJQ3BIL0osb0REb0g2UTtJQ25IN1Esb0REbUhxVDtJQ2xIclQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlFLDJDRDhHNko7TUM3RzdKLG1ERDZHZ007TUM1R2hNLG1ERDRHdU87RUN4SDNPOzs7Ozs7SUFrQkUsc0JBQXNCO0VBRXhCOzs7Ozs7SUFHTSxvQ0FBb0M7SUFDdEMsZ0NEZ0c4VTtJQy9GOVUsd0NBQXdDO0lBQ3hDLDhDQUE4QztJQUNoRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSUUsZ0NEeUY4VTtNQ3hGOVUsd0NEd0ZzVztNQ3ZGdFcsd0NEdUZrWTtFQ3BGdFk7O0lBQ0Usa0NEbUZ3RjtJQ2xGeEYsNkNEa0YyRDs7QUFFL0Q7O0VDNUlFLDZCRDhJd0Q7RUM3SXhELHVCQUF1QjtFQUN2Qix5Q0Q0SThHO0VDM0k5Rzs7OztJQUdFLHVDRHdJOEk7SUN2STlJLCtDRHVJNks7SUN0STdLLCtDRHNJZ047RUNuSTlNOzs7SUFFRSx1Q0RpSTBJO0lDaEkxSSwrQ0RnSXlLO0lDL0h6SywrQ0QrSDRNO0VDNUhsTjs7Ozs7O0lBR0UsdUNEeUg4STtJQ3hIOUksZ0REd0hnUDtJQ3ZIaFAsZ0REdUhvUjtJQ3RIcFI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlFLHVDRGtINEk7TUNqSDVJLCtDRGlIMks7TUNoSDNLLCtDRGdIOE07RUM1SGxOOzs7Ozs7SUFrQkUsc0JBQXNCO0VBRXhCOzs7Ozs7SUFHTSxvQ0FBb0M7SUFDdEMsZ0NEb0c2UztJQ25HN1Msd0NBQXdDO0lBQ3hDLDhDQUE4QztJQUNoRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSUUsZ0NENkY2UztNQzVGN1Msd0NENEZxVTtNQzNGclUsd0NEMkZpVztFQ3hGclc7O0lBQ0UsOEJEdUYrRTtJQ3RGL0Usd0NEc0ZzRDs7QUFFMUQ7O0VDaEpFLGdDRGtKMkQ7RUNqSjNELHVCQUF1QjtFQUN2Qix1Q0RnSnFIO0VDL0lySDs7OztJQUdFLGdDRDRJOEk7SUMzSTlJLHFERDJJbUw7SUMxSW5MLHVDRDBJOE07RUN2STVNOzs7SUFFRSxnQ0RxSTBJO0lDcEkxSSxxRERvSStLO0lDbkkvSyx1Q0RtSTBNO0VDaEloTjs7Ozs7O0lBR0UsZ0NENkg4STtJQzVIOUksOENENEg0TztJQzNINU8sOENEMkg4UTtJQzFIOVE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlFLGdDRHNINEk7TUNySDVJLHFERHFIaUw7TUNwSGpMLHVDRG9INE07RUNoSWhOOzs7Ozs7SUFrQkUsc0JBQXNCO0VBRXhCOzs7Ozs7SUFHTSxvQ0FBb0M7SUFDdEMsZ0NEd0d1UztJQ3ZHdlMsd0NBQXdDO0lBQ3hDLDhDQUE4QztJQUNoRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSUUsZ0NEaUd1UztNQ2hHdlMsd0NEZ0crVDtNQy9GL1Qsd0NEK0YyVjtFQzVGL1Y7O0lBQ0Usb0NEMkZ3RjtJQzFGeEYsMkNEMEZ5RDs7QUFFN0Q7O0VDcEpFLDZCRHNKd0Q7RUNySnhELHVCQUF1QjtFQUN2QixvQ0RvSjRHO0VDbko1Rzs7OztJQUdFLDZCRGdKa0k7SUMvSWxJLGtERCtJb0s7SUM5SXBLLG9DRDhJNEw7RUMzSTFMOzs7SUFFRSw2QkR5SThIO0lDeEk5SCxrRER3SWdLO0lDdkloSyxvQ0R1SXdMO0VDcEk5TDs7Ozs7O0lBR0UsNkJEaUlrSTtJQ2hJbEksMkNEZ0l1TjtJQy9Idk4sMkNEK0hzUDtJQzlIdFA7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlFLDZCRDBIZ0k7TUN6SGhJLGtERHlIa0s7TUN4SGxLLG9DRHdIMEw7RUNwSTlMOzs7Ozs7SUFrQkUsc0JBQXNCO0VBRXhCOzs7Ozs7SUFHTSxvQ0FBb0M7SUFDdEMsZ0NENEcrUTtJQzNHL1Esd0NBQXdDO0lBQ3hDLDhDQUE4QztJQUNoRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSUUsZ0NEcUcrUTtNQ3BHL1Esd0NEb0d1UztNQ25HdlMsd0NEbUdtVTtFQ2hHdlU7O0lBQ0UsaUNEK0ZrRjtJQzlGbEYsd0NEOEZzRDs7QUFFMUQ7O0VDeEpFLGdDRDBKMkQ7RUN6SjNELHVCQUF1QjtFQUN2Qix1Q0R3SnFIO0VDdkpySDs7OztJQUdFLGdDRG9KOEk7SUNuSjlJLHFERG1KbUw7SUNsSm5MLHVDRGtKOE07RUMvSTVNOzs7SUFFRSxnQ0Q2STBJO0lDNUkxSSxxREQ0SStLO0lDM0kvSyx1Q0QySTBNO0VDeEloTjs7Ozs7O0lBR0UsZ0NEcUk4STtJQ3BJOUksOENEb0k0TztJQ25JNU8sOENEbUk4UTtJQ2xJOVE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlFLGdDRDhINEk7TUM3SDVJLHFERDZIaUw7TUM1SGpMLHVDRDRINE07RUN4SWhOOzs7Ozs7SUFrQkUsc0JBQXNCO0VBRXhCOzs7Ozs7SUFHTSxvQ0FBb0M7SUFDdEMsZ0NEZ0h1UztJQy9HdlMsd0NBQXdDO0lBQ3hDLDhDQUE4QztJQUNoRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSUUsZ0NEeUd1UztNQ3hHdlMsd0NEd0crVDtNQ3ZHL1Qsd0NEdUcyVjtFQ3BHL1Y7O0lBQ0Usb0NEbUd3RjtJQ2xHeEYsMkNEa0d5RDs7QUFFN0Q7O0VDNUpFLCtCRDhKMEQ7RUM3SjFELHVCQUF1QjtFQUN2QixzQ0Q0SmtIO0VDM0psSDs7OztJQUdFLCtCRHdKMEk7SUN2SjFJLG9ERHVKOEs7SUN0SjlLLHNDRHNKd007RUNuSnRNOzs7SUFFRSwrQkRpSnNJO0lDaEp0SSxvRERnSjBLO0lDL0kxSyxzQ0QrSW9NO0VDNUkxTTs7Ozs7O0lBR0UsK0JEeUkwSTtJQ3hJMUksNkNEd0lxTztJQ3ZJck8sNkNEdUlzUTtJQ3RJdFE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlFLCtCRGtJd0k7TUNqSXhJLG9ERGlJNEs7TUNoSTVLLHNDRGdJc007RUM1STFNOzs7Ozs7SUFrQkUsc0JBQXNCO0VBRXhCOzs7Ozs7SUFHTSxvQ0FBb0M7SUFDdEMs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RztJQzlFN0csbUNEOEUySTtFQzVFN0k7SUFDRSwyQ0QyRTZHO0lDMUU3Ryw2QkFBNkI7SUFDN0IsZ0NEeUU2Rzs7QUFFN0c7RUMxRkYsK0NEMkYwRDtFQzFGMUQsdUNEMEY0RjtFQ3hGMUY7SUFFRSxrRERzRndGO0VDbkY1RjtJQUNFLCtDRGtGeUg7SUNqRnpILHlCRGlGNkk7RUMvRS9JO0lBQ0UsK0NEOEV5SDtJQzdFekgsNkJBQTZCO0lBQzdCLG9DRDRFeUg7O0FBRXpIO0VDN0ZGLHlDRDhGb0Q7RUM3RnBELGlDRDZGZ0Y7RUMzRjlFO0lBRUUsNENEeUY0RTtFQ3RGaEY7SUFDRSw0Q0RxRjBHO0lDcEYxRyx5QkRvRjhIO0VDbEZoSTtJQUNFLDRDRGlGMEc7SUNoRjFHLDZCQUE2QjtJQUM3QixpQ0QrRTBHOztBQUUxRztFQ2hHRixzQ0RpR2lEO0VDaEdqRCw4QkRnRzBFO0VDOUZ4RTtJQUVFLHlDRDRGc0U7RUN6RjFFO0lBQ0UseUNEd0ZpRztJQ3ZGakcseUJEdUZxSDtFQ3JGdkg7SUFDRSx5Q0RvRmlHO0lDbkZqRyw2QkFBNkI7SUFDN0IsOEJEa0ZpRzs7QUFFakc7RUNuR0YseUNEb0dvRDtFQ25HcEQsaUNEbUdnRjtFQ2pHOUU7SUFFRSw0Q0QrRjRFO0VDNUZoRjtJQUNFLDRDRDJGMEc7SUMxRjFHLHlCRDBGOEg7RUN4RmhJO0lBQ0UsNENEdUYwRztJQ3RGMUcsNkJBQTZCO0lBQzdCLGlDRHFGMEc7O0FBRTFHO0VDdEdGLHdDRHVHbUQ7RUN0R25ELGdDRHNHOEU7RUNwRzVFO0lBRUUsMkNEa0cwRTtFQy9GOUU7SUFDRSwyQ0Q4RnVHO0lDN0Z2Ryx5QkQ2RjJIO0VDM0Y3SDtJQUNFLDJDRDBGdUc7SUN6RnZHLDZCQUE2QjtJQUM3QixnQ0R3RnVHOztBQUV2RztFQ3pHRix3Q0QwR21EO0VDekduRCxnQ0R5RzhFO0VDdkc1RTtJQUVFLDJDRHFHMEU7RUNsRzlFO0lBQ0Usd0NEaUdvRztJQ2hHcEcsZ0NEZ0crSDtFQzlGakk7SUFDRSx3Q0Q2Rm9HO0lDNUZwRyw2QkFBNkI7SUFDN0IsNkJEMkZvRzs7QUFFcEc7RUM1R0YseUNENkdvRDtFQzVHcEQsaUNENEdnRjtFQzFHOUU7SUFFRSw0Q0R3RzRFO0VDckdoRjtJQUNFLDRDRG9HMEc7SUNuRzFHLHlCRG1HOEg7RUNqR2hJO0lBQ0UsNENEZ0cwRztJQy9GMUcsNkJBQTZCO0lBQzdCLGlDRDhGMEc7O0FBRTFHO0VBQ0ksa0JBQWtCO0VBRHJCO0lBR08sWUFBWTtJQUNaLGdDQUFnQztJQUNoQyxrQkFBa0I7SUFDbEIsU0FBUztJQUNULGdCQUFnQjtJQUNoQixXQUFXOztBQVFuQjtFQzNHRixxQ0Q0R29EO0VDM0dwRCx5Q0QyR2tGO0VDMUdsRixpQ0QwRzRHO0VDekc1Ryw2Q0R5RzRJO0VDeEc1STtJQUNFLGlDRHVHa0s7RUNyR3BLO0lBQ0UsNkJEb0drSzs7QUF4RmxLO0VDcEJGLHFDRCtHb0Q7RUM5R3BELHlDRDhHa0Y7RUM3R2xGLGdDRDZHMkc7RUM1RzNHLDRDRDRHMEk7RUMzRzFJO0lBQ0UsaUNEMEdnSztFQ3hHbEs7SUFDRSw2QkR1R2dLOztBQUVoSztFQ2pIRixvQ0RrSG1EO0VDakhuRCx3Q0RpSGdGO0VDaEhoRixnQ0RnSHlHO0VDL0d6Ryw0Q0QrR3dJO0VDOUd4STtJQUNFLGlDRDZHOEo7RUMzR2hLO0lBQ0UsNkJEMEc4Sjs7QUFFOUo7RUNwSEYsb0NEcUhtRDtFQ3BIbkQsd0NEb0hnRjtFQ25IaEYsZ0NEbUh5RztFQ2xIekcsNENEa0h3STtFQ2pIeEk7SUFDRSxpQ0RnSDhKO0VDOUdoSztJQUNFLDZCRDZHOEo7O0F6QnZDOUo7RTJCaEdBLHFCQUFxQjtFQUNyQixtQ0FBbUM7RUFDbkMsc0RBQXNEO0VBQ3RELGlDQUFpQztFQUNqQyxxQ0FBcUM7RUFDckMseUJBQXlCO0VBQ3pCLHFDQUFxQztFQUNyQyxzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixpQ0FBaUM7RXhCR2pDLHlDd0JGaUQ7RWxCQS9DLG1Da0JDeUM7RWxCR3pDO0lUaUZGO01TaEZJLGdCQUFnQixJa0I0Q3ZCO0VwQmpEQztJb0JJUSxxQkFBcUI7RUFoQi9C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OztBQTVJeEM7RUFnSlksZ0JBQWdCO0VBQ2hCLHNCQUFzQjs7QUE5YWxDO0VBcWJJLGtCQUFrQjs7QUFjbEI7RUFDSSxhQUFhO0VBQ2IsOEJBQThCO0VBQzlCLGtDQUFrQztFQUhyQztJQU1XLFNBQVM7O0FBSXJCO0VBQ0ksOEJBQThCO0VBQzlCLGtDQUFrQztFQUNsQyxpQkFBaUI7O0FBUXpCO0VDMWNFLHlDRDJjZ0Q7RUMxY2hELHlDRDBjNkU7RUN6YzdFLGdDRHljd0c7RUN4Y3hHO0lBQ0ksZ0NEdWNvRztFQ3JjeEc7SUFDSSwyQ0FBNEI7RUFFaEM7SUFDSSw2Q0RpY3lFO0VDL2I3RTtJQUNJLGdDRDhib0c7SUM3YnBHLHVCQUF1QjtFQUd6QjtJQUNJLGdDRHlia0c7RUN2YnRHO0lBQ0ksZ0NEc2JrRztFQ2xicEc7SUFDSSxrQ0RpYjJIO0VDOWFuSTtJQUNJLGdDRDZhb0c7O0FBRzFHO0VDOWNFLHNDRCtjNkM7RUM5YzdDLHNDRDhjdUU7RUM3Y3ZFLDZCRDZjK0Y7RUM1Yy9GO0lBQ0ksNkJEMmMyRjtFQ3pjL0Y7SUFDSSx3Q0FBNEI7RUFFaEM7SUFDSSwwQ0RxY21FO0VDbmN2RTtJQUNJLDZCRGtjMkY7SUNqYzNGLHVCQUF1QjtFQUd6QjtJQUNJLDZCRDZieUY7RUMzYjdGO0lBQ0ksNkJEMGJ5RjtFQ3RiM0Y7SUFDSSwrQkRxYitHO0VDbGJ2SDtJQUNJLDZCRGliMkY7O0FBR2pHO0VDbGRFLHlDRG1kZ0Q7RUNsZGhELHlDRGtkNkU7RUNqZDdFLGdDRGlkd0c7RUNoZHhHO0lBQ0ksZ0NEK2NvRztFQzdjeEc7SUFDSSwyQ0FBNEI7RUFFaEM7SUFDSSw2Q0R5Y3lFO0VDdmM3RTtJQUNJLGdDRHNjb0c7SUNyY3BHLHVCQUF1QjtFQUd6QjtJQUNJLGdDRGlja0c7RUMvYnRHO0lBQ0ksZ0NEOGJrRztFQzFicEc7SUFDSSxrQ0R5YjJIO0VDdGJuSTtJQUNJLGdDRHFib0c7O0FBRzFHO0VDdGRFLHdDRHVkK0M7RUN0ZC9DLHdDRHNkMkU7RUNyZDNFLCtCRHFkcUc7RUNwZHJHO0lBQ0ksK0JEbWRpRztFQ2pkckc7SUFDSSwwQ0FBNEI7RUFFaEM7SUFDSSw0Q0Q2Y3VFO0VDM2MzRTtJQUNJLCtCRDBjaUc7SUN6Y2pHLHVCQUF1QjtFQUd6QjtJQUNJLCtCRHFjK0Y7RUNuY25HO0lBQ0ksK0JEa2MrRjtFQzliakc7SUFDSSxpQ0Q2YnVIO0VDMWIvSDtJQUNJLCtCRHliaUc7O0FBR3ZHO0VDMWRFLHNDRDJkNkM7RUMxZDdDLHNDRDBkdUU7RUN6ZHZFLDZCRHlkK0Y7RUN4ZC9GO0lBQ0ksNkJEdWQyRjtFQ3JkL0Y7SUFDSSx3Q0FBNEI7RUFFaEM7SUFDSSwwQ0RpZG1FO0VDL2N2RTtJQUNJLDZCRDhjMkY7SUM3YzNGLHVCQUF1QjtFQUd6QjtJQUNJLDZCRHljeUY7RUN2YzdGO0lBQ0ksNkJEc2N5RjtFQ2xjM0Y7SUFDSSwrQkRpYytHO0VDOWJ2SDtJQUNJLDZCRDZiMkY7O0FBR2pHO0VDOWRFLHlDRCtkZ0Q7RUM5ZGhELHlDRDhkNkU7RUM3ZDdFLGdDRDZkd0c7RUM1ZHhHO0lBQ0ksZ0NEMmRvRztFQ3pkeEc7SUFDSSwyQ0FBNEI7RUFFaEM7SUFDSSw2Q0RxZHlFO0VDbmQ3RTtJQUNJLGdDRGtkb0c7SUNqZHBHLHVCQUF1QjtFQUd6QjtJQUNJLGdDRDZja0c7RUMzY3RHO0lBQ0ksZ0NEMGNrRztFQ3RjcEc7SUFDSSxrQ0RxYzJIO0VDbGNuSTtJQUNJLGdDRGljb0c7O0FBRzFHO0VDbGVFLDJDRG1la0Q7RUNsZWxELDJDRGtlaUY7RUNqZWpGLGtDRGllOEc7RUNoZTlHO0lBQ0ksa0NEK2QwRztFQzdkOUc7SUFDSSw2Q0FBNEI7RUFFaEM7SUFDSSwrQ0R5ZDZFO0VDdmRqRjtJQUNJLGtDRHNkMEc7SUNyZDFHLHVCQUF1QjtFQUd6QjtJQUNJLGtDRGlkd0c7RUMvYzVHO0lBQ0ksa0NEOGN3RztFQzFjMUc7SUFDSSxvQ0R5Y21JO0VDdGMzSTtJQUNJLGtDRHFjMEc7O0FBRWhIO0VBR1ksdUNBQXVDOztBQUluRDs7RUFJWSxvQ0FBb0M7O0FBS2hEO0VBQ0ksMENBQTBDOztBRS9mOUM7RUFDRTtJQUFRLDJCQUEyQjtFQUNu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ek92RTtNQUNJLGdERHdPbUU7O0FBRS9FO0VDalFJLGdDRGtRMkM7RUNqUTNDLHNDRGlRcUU7RUNoUXJFO0lBQ0ksNkJEK1B5RjtJQzlQekYsOENEOFB1SDtJQzdQdkgsc0NENlBpRTtJQzVQakU7TUFDSSw2QkQyUHFGO0lDelB6RjtNQUNJLDBDRHdQNkQ7SUN0UGpFO01BQ0ksbUNEcVBtSDtNQ3BQbkgsd0NEb1BxRjtFQ2pQN0Y7SUFDSSw2QkRnUHlGO0VDOU83RjtJQUNJLHNDRDZPaUU7SUM1T2pFO01BQ0ksNkNEMk82RDs7QUFFekU7RUNwUUksbUNEcVE4QztFQ3BROUMseUNEb1EyRTtFQ25RM0U7SUFDSSxnQ0RrUWtHO0lDalFsRyxpRERpUW1JO0lDaFFuSSx5Q0RnUXVFO0lDL1B2RTtNQUNJLGdDRDhQOEY7SUM1UGxHO01BQ0ksNkNEMlBtRTtJQ3pQdkU7TUFDSSxzQ0R3UCtIO01DdlAvSCwyQ0R1UDhGO0VDcFB0RztJQUNJLGdDRG1Qa0c7RUNqUHRHO0lBQ0kseUNEZ1B1RTtJQy9PdkU7TUFDSSxnREQ4T21FOztBQUUvRTtFQ3ZRSSxrQ0R3UTZDO0VDdlE3Qyx3Q0R1UXlFO0VDdFF6RTtJQUNJLCtCRHFRK0Y7SUNwUS9GLGdERG9RK0g7SUNuUS9ILHdDRG1RcUU7SUNsUXJFO01BQ0ksK0JEaVEyRjtJQy9QL0Y7TUFDSSw0Q0Q4UGlFO0lDNVByRTtNQUNJLHFDRDJQMkg7TUMxUDNILDBDRDBQMkY7RUN2UG5HO0lBQ0ksK0JEc1ArRjtFQ3BQbkc7SUFDSSx3Q0RtUHFFO0lDbFByRTtNQUNJLCtDRGlQaUU7O0FFcFE3RTtFQUNFLGdCQUFnQjtFQUNoQix5Q0FBeUM7RUFDekMscUNBQXFDO0VBQ3JDLGdDQUFnQztFQUNoQyxvQ0FBb0M7RUFDcEMsNENBQTRDO0VBQzVDLGtDQUFrQztFQVBwQztJQVNJLGtCQUFrQjtJQUNsQixpQ0FBNkI7O0FoRDRDN0I7RWdEckNGO0lBQ0UsYUFBYSxJQUVkOztBQUdIO0VBQ0UsMEJBQTBCOztBQzNCNUI7RUFDSSx5QkFBeUI7RUFDekIsYUFBYTtFQUNiLGFBQWE7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N0RuQztJQWdFSSxZQUFZO0lBQ1osK0JBQStCO0VBakVuQztJQW9FSSxZQUFZO0lBQ1osK0JBQStCO0VBckVuQztJQXdFSSxZQUFZO0lBQ1osK0JBQStCO0VBekVuQztJQTRFSSxZQUFZO0lBQ1osK0JBQStCO0VBN0VuQztJQWdGSSxZQUFZO0lBQ1osK0JBQStCO0VBakZuQztJQW9GSSxZQUFZO0lBQ1osK0JBQStCO0VBckZuQztJQXdGSSxZQUFZO0lBQ1osK0JBQStCO0VBekZuQztJQTRGSSxZQUFZO0lBQ1osK0JBQStCO0VBN0ZuQztJQWdHSSxZQUFZO0lBQ1osK0JBQStCO0VBakduQztJQW9HSSxZQUFZO0lBQ1osK0JBQStCO0VBckduQztJQXdHSSxZQUFZO0lBQ1osK0JBQStCO0VBekduQztJQTRHSSxZQUFZO0lBQ1osK0JBQStCO0VBN0duQztJQWdISSxZQUFZO0lBQ1osK0JBQStCO0VBakhuQztJQW9ISSxZQUFZO0lBQ1osK0JBQStCO0VBckhuQztJQXdISSxZQUFZO0lBQ1osK0JBQStCO0VBekhuQztJQTRISSxZQUFZO0lBQ1osK0JBQStCO0VBN0huQztJQWdJSSxZQUFZO0lBQ1osK0JBQStCO0VBakluQztJQW9JSSxZQUFZO0lBQ1osK0JBQStCO0VBckluQztJQXdJSSxZQUFZO0lBQ1osK0JBQStCO0VBekluQztJQTRJSSxZQUFZO0lBQ1osK0JBQStCO0VBN0luQztJQWdKSSxZQUFZO0lBQ1osK0JBQStCO0VBakpuQztJQW9KSSxZQUFZO0lBQ1osK0JBQStCO0VBckpuQztJQXdKSSxZQUFZO0lBQ1osK0JBQStCO0VBekpuQztJQTRKSSxZQUFZO0lBQ1osK0JBQStCO0VBN0puQztJQWdLSSxZQUFZO0lBQ1osK0JBQStCO0VBaktuQztJQW9LSSxZQUFZO0lBQ1osK0JBQStCO0VBcktuQztJQXdLSSxZQUFZO0lBQ1osK0JBQStCO0VBektuQztJQTRLSSxZQUFZO0lBQ1osK0JBQStCO0VBN0tuQztJQWdMSSxZQUFZO0lBQ1osK0JBQStCO0VBakxuQztJQW9MSSxZQUFZO0lBQ1osK0JBQStCO0VBckxuQztJQXdMSSxZQUFZO0lBQ1osK0JBQStCO0VBekxuQztJQTRMSSxZQUFZO0lBQ1osK0JBQStCO0VBN0xuQztJQWdNSSxZQUFZO0lBQ1osK0JBQStCO0VBak1uQztJQW9NSSxZQUFZO0lBQ1osK0JBQStCO0VBck1uQztJQXdNSSxZQUFZO0lBQ1osK0JBQStCO0VBek1uQztJQTRNSSxZQUFZO0lBQ1osK0JBQStCO0VBN01uQztJQWdOSSxZQUFZO0lBQ1osZ0NBQWdDO0VBak5wQztJQW9OSSxZQUFZO0lBQ1osZ0NBQWdDO0VBck5wQztJQXdOSSxZQUFZO0lBQ1osZ0NBQWdDO0VBek5wQztJQTROSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN05wQztJQWdPSSxZQUFZO0lBQ1osZ0NBQWdDO0VBak9wQztJQW9PSSxZQUFZO0lBQ1osZ0NBQWdDO0VBck9wQztJQXdPSSxZQUFZO0lBQ1osZ0NBQWdDO0VBek9wQztJQTRPSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN09wQztJQWdQSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalBwQztJQW9QSSxZQUFZO0lBQ1osZ0NBQWdDO0VBclBwQztJQXdQSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelBwQztJQTRQSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1BwQztJQWdRSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalFwQztJQW9RSSxZQUFZO0lBQ1osZ0NBQWdDO0VBclFwQztJQXdRSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelFwQztJQTRRSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1FwQztJQWdSSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalJwQztJQW9SSSxZQUFZO0lBQ1osZ0NBQWdDO0VBclJwQztJQXdSSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelJwQztJQTRSSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1JwQztJQWdTSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalNwQztJQW9TSSxZQUFZO0lBQ1osZ0NBQWdDO0VBclNwQztJQXdTSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelNwQztJQTRTSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1NwQztJQWdUSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalRwQztJQW9USSxZQUFZO0lBQ1osZ0NBQWdDO0VBclRwQztJQXdUSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelRwQztJQTRUSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1RwQztJQWdVSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalVwQztJQW9VSSxZQUFZO0lBQ1osZ0NBQWdDO0VBclVwQztJQXdVSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelVwQztJQTRVSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1VwQztJQWdWSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalZwQztJQW9WSSxZQUFZO0lBQ1osZ0NBQWdDO0VBclZwQztJQXdWSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelZwQztJQTRWSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1ZwQztJQWdXSSxZQUFZO0lBQ1osZ0NBQWdDO0VBaldwQztJQW9XSSxZQUFZO0lBQ1osZ0NBQWdDO0VBcldwQztJQXdXSSxZQUFZO0lBQ1osZ0NBQWdDO0VBeldwQztJQTRXSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1dwQztJQWdYSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalhwQztJQW9YSSxZQUFZO0lBQ1osZ0NBQWdDO0VBclhwQztJQXdYSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelhwQztJQTRYSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1hwQztJQWdZSSxZQUFZO0lBQ1osZ0NBQWdDO0VBallwQztJQW9ZSSxZQUFZO0lBQ1osZ0NBQWdDO0VBcllwQztJQXdZSSxZQUFZO0lBQ1osZ0NBQWdDO0VBellwQztJQTRZSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1lwQztJQWdaSSxZQUFZO0lBQ1osZ0NBQWdDO0VBalpwQztJQW9aSSxZQUFZO0lBQ1osZ0NBQWdDO0VBclpwQztJQXdaSSxZQUFZO0lBQ1osZ0NBQWdDO0VBelpwQztJQTRaSSxZQUFZO0lBQ1osZ0NBQWdDO0VBN1pwQztJQWdhSSxZQUFZO0lBQ1osZ0NBQWdDO0VBamFwQztJQW9hSSxZQUFZO0lBQ1osZ0NBQWdDO0VB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Z0VBQStEO0lBQy9ELDRFQUEyRTtFQVZ2Rjs7Ozs7Ozs7OztJQWVZLDhEQUE2RDtJQUM3RCx1RUFBc0U7SUFDdEUsNkVBQTRFOztBQUt4Rjs7Ozs7Ozs7Ozs7Ozs7O0VyRXBERSxxQ3FFNEQ0RDtFckUzRDVELHVDcUUyRHlGO0VyRTFEekYsbURxRTBEZ0k7RXJFekRoSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUdFLDJDcUVzRG9LO0lyRXJEcEssbURxRXFEdU07SXJFcER2TSx5RHFFb0RvUDtFckVsRHRQOzs7Ozs7Ozs7Ozs7Ozs7SUFDRSwyQ3FFaURvSztJckVoRHBLLG1EcUVnRHVNO0lyRS9Ddk0seURxRStDb1A7RXJFNUNwUDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUdFLDJDcUV5Q2tLO0lyRXhDbEssb0RxRXdDc1I7SXJFdkN0UiwwRHFFdUNvVTtJckV0Q3BVOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSUUsMkNxRWtDZ0s7TXJFakNoSyxtRHFFaUNtTTtNckVoQ25NLHlEcUVnQ2dQO0VyRTNCcFA7Ozs7Ozs7Ozs7Ozs7OztJQUNFLHFDcUUwQndEO0lyRXpCeEQsNkJBQTZCO0lBQzdCLHlCQUF5QjtJQUN6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUdFLDJDcUVvQmdLO01yRW5CaEssNkJBQTZCO01BQzdCLHlCQUF5QjtJQUUzQjs7Ozs7Ozs7Ozs7Ozs7O01BQ0UsMkNxRWVnSztNckVkaEssNkJBQTZCO01BQzdCLHlCQUF5QjtJQUd6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFFRSwyQ3FFUThKO01yRVA5Siw2QkFBNkI7TUFDN0IseUJBQXlCO01BQ3pCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztRQUlFLDJDcUVDNEo7UXJFQTVKLDZCQUE2QjtRQUM3Qix5QkFBeUI7RUFPbkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFHRSxzQkFBc0I7RUFFeEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFHSSxvQ0FBb0M7SUFDcEMsZ0NxRWpCK1Y7SXJFa0IvVix3Q3FFbEJ1WDtJckVtQnZYLHdDcUVuQm1aO0lyRW9CblosbUJBQW1CO0lBRWpCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BQ0UscUNxRXZCMlY7RXJFMkJuVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFFRSxtQkFBbUI7SUFDbkIsWUFBWTtFQUVkOzs7Ozs7Ozs7Ozs7Ozs7SUFDRSxrQ3FFakN1RjtJckVrQ3ZGLGdEcUVsQzBEOztBQUk5RDtFckVoRUUsK0JxRWtFc0Q7RXJFakV0RCxpQ3FFaUU2RTtFckVoRTdFLHVDcUVnRXdHO0VyRS9EeEc7SUFHRSxxQ3FFNERzSTtJckUzRHRJLDZDcUUyRG1LO0lyRTFEbkssNkNxRTBEb007RXJFeER0TTtJQUNFLHFDcUV1RHNJO0lyRXREdEksNkNxRXNEbUs7SXJFckRuSyw2Q3FFcURvTTtFckVsRHBNOztJQUdFLHFDcUUrQ29JO0lyRTlDcEksOENxRThDZ087SXJFN0NoTyw4Q3FFNkNrUTtJckU1Q2xROzs7OztNQUlFLHFDcUV3Q2tJO01yRXZDbEksNkNxRXVDK0o7TXJFdEMvSiw2Q3FFc0NnTTtFckVqQ3BNO0lBQ0UsK0JxRWdDa0Q7SXJFL0JsRCw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCO01BR0UscUNxRTBCa0k7TXJFekJsSSw2QkFBNkI7TUFDN0IseUJBQXlCO0lBRTNCO01BQ0UscUNxRXFCa0k7TXJFcEJsSSw2QkFBNkI7TUFDN0IseUJBQXlCO0lBR3pCO01BRUUscUNxRWNnSTtNckViaEksNkJBQTZCO01BQzdCLHlCQUF5QjtNQUN6QjtRQUlFLHFDcUVPOEg7UXJFTjlILDZCQUE2QjtRQUM3Qix5QkFBeUI7RUFPbkM7O0lBR0Usc0JBQXNCO0VBRXhCOztJQUdJLG9DQUFvQztJQUNwQyxnQ3FFWDZSO0lyRVk3Uix3Q3FFWnFUO0lyRWFyVCx3Q3FFYmlWO0lyRWNqVixtQkFBbUI7SUFFakI7O01BQ0UscUNxRWpCeVI7RXJFcUJqUztJQUVFLG1CQUFtQjtJQUNuQixZQUFZO0VBRWQ7SUFDRSw0QnFFM0IyRTtJckU0QjNFLDBDcUU1Qm9EOztBQUZ4RDtFckVoRUUsK0JxRXFFc0Q7RXJFcEV0RCxpQ3FFb0U2RTtFckVuRTdFLHVDcUVtRXdHO0VyRWxFeEc7SUFHRSxxQ3FFK0RzSTtJckU5RHRJLDZDcUU4RG1LO0lyRTdEbkssNkNxRTZEb007RXJFM0R0TTtJQUNFLHFDcUUwRHNJO0lyRXpEdEksNkNxRXlEbUs7SXJFeERuSyw2Q3FFd0RvTTtFckVyRHBNOztJQUdFLHFDcUVrRG9JO0lyRWpEcEksOENxRWlEZ087SXJFaERoTyw4Q3FFZ0RrUTtJckUvQ2xROzs7OztNQUlFLHFDcUUyQ2tJO01yRTFDbEksNkNxRTBDK0o7TXJFekMvSiw2Q3FFeUNnTTtFckVwQ3BNO0lBQ0UsK0JxRW1Da0Q7SXJFbENsRCw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCO01BR0UscUNxRTZCa0k7TXJFNUJsSSw2QkFBNkI7TUFDN0IseUJBQXlCO0lBRTNCO01BQ0UscUNxRXdCa0k7TXJFdkJsSSw2QkFBNkI7TUFDN0IseUJBQXlCO0lBR3pC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RUFDVixRQUFROztBQVR4QjtFQW9CZ0IsT0FBTztFQUNQLFdBQVc7O0F2Sm9EdkI7RXVKekVKO0lBOEJRLHdCQUF3QixJQUUvQiIsImZpbGUiOiJsYWdvbTIvYXNzZXRzL2Nzcy90aGVtZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnbGFnb20tbWVkaXVtLWljb25zJztcclxuICAgIHNyYyA6IHVybCgnLi4vZm9udHMvbGFnb20tbWVkaXVtLWljb25zLmVvdD92NXdnYTMnKTtcclxuICAgIHNyYyA6IHVybCgnLi4vZm9udHMvbGFnb20tbWVkaXVtLWljb25zLmVvdD92NXdnYTMjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICB1cmwoJy4uL2ZvbnRzL2xhZ29tLW1lZGl1bS1pY29ucy53b2ZmP3Y1d2dhMycpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgdXJsKCcuLi9mb250cy9sYWdvbS1tZWRpdW0taWNvbnMudHRmP3Y1d2dhMycpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgIHVybCgnLi4vZm9udHMvbGFnb20tbWVkaXVtLWljb25zLnN2Zz92NXdnYTMjbGFnb20tbWVkaXVtLWljb25zJykgZm9ybWF0KCdzdmcnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbiNsYWdvbS1vbmUtc3RlcC1vcmRlcixcclxuLm1nLXdyYXBwZXIsXHJcbi5sYWdvbSB7XHJcbiAgICAubG0ge1xyXG4gICAgICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICdsYWdvbS1tZWRpdW0taWNvbnMnICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgc3BlYWs6IG5vbmU7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKTtcclxuICAgIH1cclxuICAgIC5sbS1iYW5rLW5vdGU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxNFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxNVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hbGlnbi1sZWZ0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MTZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tYWxpZ24tcmlnaHQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxN1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hcHBzOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MThcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tYXBwcy1mYXQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxOVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hcnJvdy1mYXQtbGVmdDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWFycm93LWZhdC1yaWdodDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWFycm93LW1lZGl1bS1kb3duOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MWNcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tYXJyb3ctbWVkaXVtLWxlZnQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hcnJvdy1tZWRpdW0tcmlnaHQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxZVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hcnJvdy1tZWRpdW0tdXA6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxZlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hcnJvdy10aGluLWRvd246YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyMFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hcnJvdy10aGluLWxlZnQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyMVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1hcnJvdy10aGluLXJpZ2h0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MjJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tYXJyb3ctdGhpbi11cDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTIzXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWJhY2t1cDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTI0XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWJhZzpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTI1XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWJhcmNvZGU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyNlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1ib29rOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MjdcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tYm9va21hcms6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyOFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1ib29rLXctYm9va21hcms6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyOVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1ib3g6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyYVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1icmllZmNhc2U6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyYlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1idXJnZXItbWVudTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTJjXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWNhbGVuZGFyOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MmRcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tY2hhdC1jbG91ZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTJlXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWNoYXQtY2xvdWQtaW5mbzpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTJmXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWNoYXQtY2xvdWRzOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MzBcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tY2xvY2s6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkzMVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1jbG91ZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTMyXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWNvbXBhY3Q6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkzM1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1jcm93bjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTM0XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWN1cDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTM1XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWRhc2hib2FyZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTM2XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWRhdGFiYXNlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MzdcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZGVuaWFsOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MzhcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZGVuaWVkOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MzlcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZGlyZWN0aW9uLXNpZ246YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkzYVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1maWxlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5M2JcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZG93bjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTNjXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWRvd25sb2FkOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5M2RcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZWRpdDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTNlXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWV4dGVuZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTNmXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWZhY3Rvcnk6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0MFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1mZWF0aGVyOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDFcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZmlyZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTQyXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWZsYWc6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0M1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1mb2xkZXItcGx1czpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTQ0XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWZvbGRlcnM6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0NVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1mdW5uZWw6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0NlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1naWZ0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDdcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZ2xvYmUtYWx0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDhcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0taGVhcnQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0OVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1pbWFnZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRhXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWluYm94OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NGJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0taW5mbzpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWxhYmVsLWxlZnQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0ZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1sYWJlbC1yaWdodDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRlXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWxheW91dDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRmXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWxlZnQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1MFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1saWdodG5pbmc6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1MVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1saW5lLWdyYXBoOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NTJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tbG9jYXRpb246YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1M1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1tZWQta2l0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NTRcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tbWludXM6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1NVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1taW51cy1jaXJjbGU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1NlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1tb3JlLXZlcnRpY2FsOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NTdcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tcGFkbG9jazpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTU4XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXBlbjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTU5XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXBocC1hZG1pbjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTVhXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXBpZS1ncmFwaDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTViXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXBpbjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTVjXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXBsYXktYm9hcmQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1ZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1wbHVzOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NWVcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tcGx1cy1mb2xkZXI6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1ZlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1wb3dlcjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTYwXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXByaW50ZXI6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk2MVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1yYW5nZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTYyXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXJlY2VpcHQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk2M1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1yaWdodDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTY0XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXNjYW5uZXI6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk2NVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1zaGllbGQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk2NlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1zaHJlZGRlcjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTY3XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXNwYXJrOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NjhcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tdGh1bWJzLWRvd246YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk2OVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS10aHVtYnMtdXA6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk2YVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS10b29sOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NmJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tdHJhc2g6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk2Y1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS11cDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTZkXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXVwbG9hZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTZlXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXVzZXItY2lyY2xlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NmZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tdXNlcnM6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk3MFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS12b2ljZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTcxXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXdhbGxldDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTcyXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXdhcm5pbmc6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk3M1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS13YXRlci1kcm9wOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NzRcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tem9vbS1pbjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTc1XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXpvb20tb3V0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NzZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tYmFyLWdyYXBoOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDBcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tYmFza2V0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDFcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tYmVsbDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWNoZWNrOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDNcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tY2xvc2U6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkwNFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1kb2N1bWVudDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWVudmVsb3BlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZm9sZGVyOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDdcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tZm9sZGVyLW9wZW46YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkwOFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1nby10b3A6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkwOVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1ob21lOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MGFcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0taG9zdGluZzpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWluZm8tdGV4dDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLW1vcmU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkwZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5sbS1tb3VzZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLXBsdXMtY2lyY2xlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MGZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tc2VhcmNoOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MTBcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tdGFnOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MTFcIjtcclxuICAgIH1cclxuXHJcbiAgICAubG0tdXNlcjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTEyXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxtLWdsb2JlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MTNcIjtcclxuICAgIH1cclxufSIsIkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdsYWdvbS1zbWFsbC1pY29ucyc7XHJcbiAgICBzcmMgOiB1cmwoJy4uL2ZvbnRzL2xhZ29tLXNtYWxsLWljb25zLmVvdD83eXowMGInKTtcclxuICAgIHNyYyA6IHVybCgnLi4vZm9udHMvbGFnb20tc21hbGwtaWNvbnMuZW90Pzd5ejAwYiNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuICAgIHVybCgnLi4vZm9udHMvbGFnb20tc21hbGwtaWNvbnMud29mZj83eXowMGInKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgIHVybCgnLi4vZm9udHMvbGFnb20tc21hbGwtaWNvbnMudHRmPzd5ejAwYicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgIHVybCgnLi4vZm9udHMvbGFnb20tc21hbGwtaWNvbnMuc3ZnPzd5ejAwYiNsYWdvbS1zbWFsbC1pY29ucycpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcbiNsYWdvbS1vbmUtc3RlcC1vcmRlcixcclxuLm1nLXdyYXBwZXIsXHJcbi5sYWdvbSB7XHJcbiAgICAubHMge1xyXG4gICAgICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHNwZWFrOiBub25lO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpO1xyXG4gICAgfVxyXG4gICAgLmxzLWF3YXJkOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJlOTRmXCI7XHJcbiAgICB9XHJcbiAgICAubHMtYWxpZ24tY2VudGVyOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDRcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYWxpZ24tbGVmdDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTQ1XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWFsaWduLXJpZ2h0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYXBwczpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTQ3XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWFycm93LWRvd24tbGVmdC10aGluOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDhcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYXJyb3ctZG93bi1yaWdodC10aGluOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDlcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYXJyb3ctbGVmdC13YWxsOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NGFcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYXJyb3ctcGxheTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRiXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWFycm93LXJpZ2h0LWRvd24tdGhpbjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWFycm93LXJpZ2h0LXVwLXRoaW46YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0ZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1hcnJvdy1yaWdodC13YWxsOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NGVcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYm9vay1ib29rbWFyazpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTY2XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWJ1bGxldC1tZWRpdW06YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1MVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1jaGF0LWNsb3VkczpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTUyXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWNoZWNrLXVuZGVybGluZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTUzXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWNvcHk6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1NFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1jcm93bjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTU1XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWRvY3VtZW50LWluZm86YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1NlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1kb3duOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NTdcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtZm9sZGVyLW9wZW46YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1OFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1sYWJlbC1sZWZ0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NTlcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtbGVmdDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTVhXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLW1vcmUtdmVydGljYWw6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1YlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1yZWNlaXB0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NWNcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtcmlnaHQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1ZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy10aWNrZXQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk1ZVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy11cDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTVmXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLXZvaWNlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NjBcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtd2F0ZXItZHJvcDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTYxXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWFkZG9uOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDBcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYXJyb3ctZG93bjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWNhcmV0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtc2lnbi1vdXQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkwM1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1yZXBseTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWFycm93LWxlZnQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkwNVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1zaWduLWluOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtc2hhcmU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkwN1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1hcnJvdy1yaWdodDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWFycm93LXVwOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MDlcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYmFuay1ub3RlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MGFcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYmFza2V0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MGJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYm94OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MGNcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYnVsbGV0LXNtYWxsOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MGRcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtYnVsbGV0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MGVcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtY2FsZW5kYXI6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkwZlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1jaGFpbjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWNoZWNrOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MTFcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtY2xvc2U6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxMlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1jb25maWd1cmU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxM1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1jcmVkaXQtY2FyZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWNyZWRpdDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWRhc2hib2FyZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWRlbmlhbDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE3XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWRpc2xpa2U6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxOFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1kbnM6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxOVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1kb2N1bWVudDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWRvd25sb2FkOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MWJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtZG93bmxvYWQtc3F1YXJlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MWNcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtZWRpdDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWVudmVsb3BlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MWVcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtZXhjbGFtYXRpb24tY2lyY2xlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MWZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtZmxhZzpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTIwXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWZvbGRlcjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTIxXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWhlYXJ0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MjJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtaG9tZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTIzXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWhvc3Rpbmc6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyNFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1ob3VyZ2xhc3M6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyNVwiO1xyXG4gICAgfVxyXG4gICAgLmxzLWtleTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTYyXCI7XHJcbiAgICB9XHJcbiAgICAubHMtaW1hZ2U6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyNlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1pbmZvLWNpcmNsZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTI3XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLWlucHV0LWNvZGU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyOFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1saWdodG5pbmc6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyOVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1saWtlOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MmFcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtbG9jYXRpb246YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyYlwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1taW51czpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTJjXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLW1vcmU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkyZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1uZXctd2luZG93OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MmVcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtcGFkbG9jazpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTJmXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLXBlbjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTMwXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLXBsdXM6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkzMVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1wcmludGVyOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MzJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtcmFuZ2U6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkzM1wiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1yZWZyZXNoOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MzRcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtcnNzOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5MzVcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtc2VhcmNoOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NjNcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtc2VjdXJpdHktY29kZTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTM2XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLXNoaWVsZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTM3XCI7XHJcbiAgICB9XHJcbiAgICAubHMtc2l0ZWJ1aWxkZXI6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk2NVwiO1xyXG4gICAgfVxyXG4gICAgLmxzLXNtYXJ0cGhvbmU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkzOFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy1zb3J0LWFzYzpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTM5XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLXNvcnQtZGVzYzpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTNhXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLXNwYXJrOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5M2JcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtc3dpdGNoOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NjRcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtdGV4dC1jbG91ZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTNjXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLXRpY2tldC10YWc6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkzZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy10cmFuc2ZlcjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTNlXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmxzLXRyYXNoOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5M2ZcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtdXBncmFkZS1kb3duZ3JhZGU6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0MFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy11cGxvYWQ6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTk0MVwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5scy11c2VyOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDJcIjtcclxuICAgIH1cclxuXHJcbiAgICAubHMtd2FsbGV0OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGU5NDNcIjtcclxuICAgIH1cclxufSIsIiRpc3J0bDogZmFsc2UgIWRlZmF1bHQ7XHJcbiRzdHlsZTogJ2RlZmF1bHQnICFkZWZhdWx0OyAvLyBkZWZhdWx0LCBkZXB0aCwgbW9kZXJuLCBmdXR1cmlzdGljLCBpbnRlZ3JhdGlvblxyXG5cclxuJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2U7XHJcblxyXG4vLz09IENvbG9yc1xyXG5AZnVuY3Rpb24gdigkdmFyLCAkZmFsbGJhY2s6IG51bGwpIHtcclxuXHRAaWYoJGZhbGxiYWNrKSB7XHJcblx0XHRAcmV0dXJuIHZhcigtLSN7JHZhcn0sICN7JGZhbGxiYWNrfSk7XHJcblx0fSBAZWxzZSB7XHJcblx0XHRAcmV0dXJuIHZhcigtLSN7JHZhcn0pOyBcclxuXHR9XHJcbn1cclxuXHJcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xyXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgO1xyXG5cclxuXHJcbiRncmlkLWJyZWFrcG9pbnRzOiAoXHJcbiAgeHM6IDBweCwgXHJcbiAgc206IDQ4MHB4LFxyXG4gIG1kOiA3NjhweCxcclxuICBsZzogOTkycHgsXHJcbiAgeGw6IDEzMjBweCxcclxuKSAhZGVmYXVsdDtcclxuXHJcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxyXG4gIHNtOiA1NDBweCxcclxuICBtZDogMTAwJSxcclxuICBsZzogMTAwJSxcclxuICB4bDogMTI4OHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xyXG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xyXG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6IHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgdHJ1ZSAhZGVmYXVsdDtcclxuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICB0cnVlICFkZWZhdWx0O1xyXG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6IHRydWUgIWRlZmF1bHQ7XHJcbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xyXG5cclxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XHJcblxyXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXHJcbiRzaXplczogKCkgIWRlZmF1bHQ7XHJcbiRzaXplczogbWFwLW1lcmdlKFxyXG4gIChcclxuICAgIDI1OiAyNSUsXHJcbiAgICA1MDogNTAlLFxyXG4gICAgNzU6IDc1JSxcclxuICAgIDEwMDogMTAwJSxcclxuICAgIGF1dG86IGF1dG9cclxuICApLFxyXG4gICRzaXplc1xyXG4pO1xyXG5cclxuLy8gU3BhY2luZ1xyXG4vL1xyXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXHJcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cclxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cclxuXHJcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XHJcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcclxuJHNwYWNlcnM6IG1hcC1tZXJnZShcclxuICAoXHJcbiAgICAwOiAwLFxyXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxyXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXHJcbiAgICAzOiAkc3BhY2VyLFxyXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxyXG4gICAgNTogKCRzcGFjZXIgKiAzKVxyXG4gICksXHJcbiAgJHNwYWNlcnNcclxuKTtcclxuXHJcbi8vIE5lZWRlZCBmb3IgcmVkKCksIGdyZWVuKCksIGJsdWUoKSBmdW5jdGlvbnMgaW4gYm9vdHJzdHJhcC9fZnVuY3Rpb25zLnNjc3MgJ2NvbG9yLXlpcScgZnVuY3Rpb25cclxuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAjMzZDMDU1ICFkZWZhdWx0O1xyXG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAgICAgICAgICAgICNkOTI2MzIgIWRlZmF1bHQ7XHJcblxyXG4vKiBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS4gKi9cclxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogICAgICAgICAgICAgICAgICAgICAxNTA7XHJcblxyXG4vKiBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi4gKi9cclxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjMjEyNTI5O1xyXG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY7XHJcblxyXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XHJcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXHJcbiAgKFxyXG4gICAgXCJ2YWxpZFwiOiAoXHJcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXHJcbiAgICAgIFwiaWNvblwiOiB2YXIoLS1mb3JtLWZlZWRiYWNrLWljb24tdmFsaWQpXHJcbiAgICApLFxyXG4gICAgXCJpbnZhbGlkXCI6IChcclxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxyXG4gICAgICBcImljb25cIjogdmFyKC0tZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQpXHJcbiAgICApLFxyXG4gICksXHJcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcclxuKTtcclxuXHJcbi8vPT0gR3JpZCBzeXN0ZW1cclxuXHJcbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMjtcclxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDI0cHggIWRlZmF1bHQ7XHJcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICA2ICFkZWZhdWx0O1xyXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgOTkycHg7XHJcbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpO1xyXG5cclxuLy8gVXRpbGl0aWVzXHJcblxyXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XHJcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcclxuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XHJcbiR1c2VyLXNlbGVjdHM6IGFsbCwgYXV0bywgbm9uZSAhZGVmYXVsdDsiLCIvLyBDb250YWluZXIgd2lkdGhzXHJcbi8vXHJcbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cclxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcclxuXHJcbiAgICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXHJcbiAgICAuY29udGFpbmVyLFxyXG4gICAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcclxuICAgIC5jb250YWluZXItZmx1aWQge1xyXG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XHJcbiAgICB9XHJcbiAgICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxyXG4gICAgLy8gQGVhY2ggJGJyZWFrcG9pbnQsXHJcbiAgICAvLyAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xyXG4gICAgLy8gICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xyXG4gICAgLy8gICAgICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XHJcbiAgICAvLyAgICAgfVxyXG5cclxuICAgIC8vICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICAgLy8gICAgICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xyXG4gICAgLy8gICAgICAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcclxuICAgIC8vICAgICAgICAgfVxyXG5cclxuICAgIC8vICAgICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcclxuICAgIC8vICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xyXG5cclxuICAgIC8vICAgICAgICAgQGVhY2ggJG5hbWUsXHJcbiAgICAvLyAgICAgICAgICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XHJcbiAgICAvLyAgICAgICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xyXG4gICAgLy8gICAgICAgICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcclxuICAgIC8vICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgLy8gICAgICAgICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xyXG4gICAgLy8gICAgICAgICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQ9PSRuYW1lKSB7XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgfVxyXG4gICAgLy8gICAgICAgICAgICAgfVxyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gfVxyXG59XHJcblxyXG4vLyBSb3dcclxuLy9cclxuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cclxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcclxuICAgIC5yb3cge1xyXG4gICAgICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLnJvdy1zbSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTF4KSk7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0xeCkpO1xyXG5cclxuICAgICAgICBbY2xhc3MqPSdjb2wtJ10ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xyXG4gICAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXHJcbiAgICAubm8tZ3V0dGVycyB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG5cclxuICAgICAgICA+LmNvbCxcclxuICAgICAgICA+W2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBDb2x1bW5zXHJcbi8vXHJcbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcclxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcclxuICAgIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XHJcbn1cclxuXHJcbi8vIFtDTVNdIGh0dHBzOi8vZ2l0LnJzc3R1ZGlvLm5ldC9sYWdvbS0yL3dlYnNpdGUtY21zLy0vaXNzdWVzLzQ4M1xyXG4uY29sNSB7XHJcbiAgICBmbGV4OiAwIDAgMjAlO1xyXG4gICAgbWF4LXdpZHRoOiAyMCU7IFxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcclxuICAgIC5jb2wtc201IHtcclxuICAgICAgICBmbGV4OiAwIDAgMjAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMjAlOyBcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAuY29sLW1kNXtcclxuICAgICAgICBmbGV4OiAwIDAgMjAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMjAlOyBcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAuY29sLWxnNSB7XHJcbiAgICAgICAgZmxleDogMCAwIDIwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDIwJTsgXHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcclxuICAgIC5jb2wteGw1IHtcclxuICAgICAgICBmbGV4OiAwIDAgMjAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMjAlOyBcclxuICAgIH1cclxufSIsIi8vLyBHcmlkIHN5c3RlbVxyXG4vL1xyXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXHJcblxyXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbi8vICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XHJcbi8vICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIC8gMjtcclxuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgLyAyO1xyXG59XHJcblxyXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XHJcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XHJcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcclxufVxyXG5cclxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XHJcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xyXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcclxuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XHJcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XHJcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XHJcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXHJcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXHJcbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcclxuICBmbGV4OiAwIDAgYXV0bztcclxuICB3aWR0aDogYXV0bztcclxuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xyXG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XHJcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XHJcbn1cclxuXHJcbi8vIFJvdyBjb2x1bW5zXHJcbi8vXHJcbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxyXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcclxuLy8gc3R5bGUgZ3JpZC5cclxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xyXG4gID4gKiB7XHJcbiAgICBmbGV4OiAwIDAgMTAwJSAvICRjb3VudDtcclxuICAgIG1heC13aWR0aDogMTAwJSAvICRjb3VudDtcclxuICB9XHJcbn1cclxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxyXG4vL1xyXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cclxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cclxuXHJcbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xyXG4gICVncmlkLWNvbHVtbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcclxuICB9XHJcblxyXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xyXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xyXG5cclxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xyXG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xyXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcclxuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcclxuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb2wjeyRpbmZpeH0sXHJcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xyXG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcclxuICAgICAgLmNvbCN7JGluZml4fSB7XHJcbiAgICAgICAgZmxleC1iYXNpczogMDtcclxuICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcclxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcclxuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcclxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcclxuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XHJcblxyXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cclxuXHJcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xyXG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcclxuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcclxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcclxuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXHJcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXHJcbi8vXHJcbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcclxuLy9cclxuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxyXG4vL1xyXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXHJcblxyXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXHJcbi8vXHJcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcclxuLy8gICAgbWRcclxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxyXG4vLyAgICBtZFxyXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxyXG4vLyAgICBtZFxyXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xyXG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xyXG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xyXG59XHJcblxyXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXHJcbi8vXHJcbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxyXG4vLyAgICA1NzZweFxyXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xyXG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcclxufVxyXG5cclxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cclxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcclxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cclxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxyXG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXHJcbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXHJcbi8vXHJcbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxyXG4vLyAgICA3NjcuOThweFxyXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xyXG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcclxufVxyXG5cclxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cclxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXHJcbi8vXHJcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXHJcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxyXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxyXG4vLyAgICBcIi1zbVwiXHJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcclxufVxyXG5cclxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxyXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xyXG4gIEBpZiAkbWluIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxyXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxyXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XHJcbiAgQGlmICRtYXgge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXHJcbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xyXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xyXG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcclxuXHJcbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cclxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXHJcbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cclxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xyXG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xyXG5cclxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuR2VuZXJhbCAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuaHRtbCB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgLy8gc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XHJcbiAgICAvLyAmLnNjcm9sbC1zbW9vdGgtYmxvY2t7XHJcbiAgICAvLyAgICAgc2Nyb2xsLWJlaGF2aW9yOiB1bnNldDtcclxuICAgIC8vIH1cclxufVxyXG5ib2R5IHtcclxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgIC1tb3otZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgLW8tZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkgeyAgXHJcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgb25seSBzY3JlZW4ge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICBib2R5LCBodG1sIHtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5pbnB1dDotd2Via2l0LWF1dG9maWxsLHNlbGVjdDotd2Via2l0LWF1dG9maWxsIHtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDBweCAxMDAwcHggd2hpdGUgaW5zZXQ7XHJcbn1cclxuYVtocmVmXj1cInRlbFwiXSB7XHJcbiAgICBjb2xvcjogaW5oZXJpdCFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuYTpub3QoLmJ0bikge1xyXG4gICAgY29sb3I6IHZhcigtLWxpbmstY29sb3IpO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIHBhZGRpbmcgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgXHJcbiAgICAmLmxhYmVsLXByaW1hcnktZmFkZWR7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgfVxyXG59XHJcbi5sYWdvbXtcclxuICAgICY6bm90KC5sYWdvbS1sYXlvdXQtbGVmdCl7XHJcbiAgICAgICAgLmhhcy1zY3JvbGx7XHJcbiAgICAgICAgICAgICYuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLWxpc3Qpe1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogdmFyKC0tbmF2YmFyLWRyb3Bkb3duLW1heC1oZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG4uaGFzLXNjcm9sbCB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgc2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItMykgdHJhbnNwYXJlbnQ7XHJcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcbiAgICAmLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRyb3Bkb3duLWJnKTtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvIWltcG9ydGFudDtcclxuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmRyb3Bkb3duLW1lbnUtaXRlbXMge1xyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuZHJvcGRvd24tbWVudS1pdGVtcyB7XHJcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIH1cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICB3aWR0aDogNnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgd2lkdGg6IDZweDtcclxuICAgICAgICBoZWlnaHQ6IDZweDtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5HZW5lcmFsIC0gVHlwZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5wIHtcclxuICAgICY6ZW1wdHkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuLmFkbWlucmV0dXJuZGl2IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG4jcG9wdXAtYmFja2Ryb3Age1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJFMzYzRjtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuLmFkbWluLW1hc3F1ZXJhZGUtbm90aWNlIHtcclxuICAgIG1hcmdpbjogMjVweCAwIDAgYXV0bztcclxuICAgIHBhZGRpbmc6IDRweCAxMHB4O1xyXG4gICAgbWF4LXdpZHRoOiAyNDBweDtcclxuICAgIGZvbnQtZmFtaWx5OiBUYWhvbWE7XHJcbiAgICBmb250LXNpemU6IDAuN2VtO1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBhIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxufVxyXG4ubGljZW5zaW5nLWFkZG9uLWxhdGVzdC1kb3dubG9hZCB7XHJcbiAgICBoMyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5HZW5lcmFsIC0gUHJpbnRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuQG1lZGlhIHByaW50IHtcclxuICAgIC5zaWRlYmFyLFxyXG4gICAgLmFwcC1uYXYtbWVudSxcclxuICAgICN0b3AtbmF2LFxyXG4gICAgLmhlYWRlci1saW5lZCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIGFbaHJlZl06YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uYWxlcnQtYm9yZGVyZWQtbGVmdCB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuR2VuZXJhbCAtIEdyaWQgXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5yb3ctZXEtaGVpZ2h0IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgID4gIGRpdltjbGFzcyo9Y29sXSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICA+KiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKG1kKSB7XHJcbiAgICAucm93LWVxLWhlaWdodCB7XHJcbiAgICAgICAgJi1tZCB7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm5vdCgucm93LWVxLWhlaWdodC1zbSk6bm90KC5yb3ctZXEtaGVpZ2h0LXhzKTpub3QoLnJvdy1jb2xzLW1peGVkKSAge1xyXG4gICAgICAgICAgICA+IFtjbGFzcyo9XCJjb2wtc20tXCJdIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgLnByb2R1Y3RzeyBcclxuICAgICAgICAucm93LWVxLWhlaWdodCB7XHJcbiAgICAgICAgICAgID4gZGl2W2NsYXNzKj1jb2xde1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucm93LWVxLWhlaWdodCB7XHJcbiAgICAgICAgJi1zbSB7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAgICAgICAgICBcclxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7IFxyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICAgICAgICAgIH0gIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mbGV4LWNvbHVtbi1zbSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogdW5zZXQhaW1wb3J0YW50O1xyXG4gICAgICAgIC5tLXItYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4qICsgKiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkhaW1wb3J0YW50O1xyXG4gICAgICAgIH0gXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb250YWluZXItZmx1aWQud2l0aG91dC1wYWRkaW5nIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuR2VuZXJhbCAtIEhlbHBlcnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmhpZGRlbiB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgLmhpZGRlbi1iZWxvdy1tZCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2VpZ2h0LTMwMHtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ud2VpZ2h0LTUwMHtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5pLmljb24tcnNzIHtcclxuICAgIGNvbG9yOiAjZmY2NjAwO1xyXG59XHJcbi5iZy13aGl0ZXtcclxuICAgIGJhY2tncm91bmQ6ICNmZmYhaW1wb3J0YW50O1xyXG59XHJcbi5tLWEsXHJcbi5tLWgtYSB7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxufVxyXG4ubS1oLTF4e1xyXG4gICAgbWFyZ2luOiAwIHZhcigtLXNwYWNpbmctMXgpO1xyXG59XHJcbi5tLWwtYSB7XHJcbiAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5tLXItYXtcclxuICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLmdhcC0xeHtcclxuICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCkgIWltcG9ydGFudDtcclxufVxyXG4uZ2FwLTJ4e1xyXG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KSAhaW1wb3J0YW50O1xyXG59XHJcbi5nYXAtM3h7XHJcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctM3gpICFpbXBvcnRhbnQ7XHJcbn1cclxuLmdhcC00eHtcclxuICAgIGdhcDogdmFyKC0tc3BhY2luZy00eCkgIWltcG9ydGFudDtcclxufVxyXG4uY29sLWdhcC0xeHtcclxuICAgIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctMXgpICFpbXBvcnRhbnQ7XHJcbn1cclxuLmNvbC1nYXAtMnh7XHJcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KSAhaW1wb3J0YW50O1xyXG59XHJcbi5jb2wtZ2FwLTN4e1xyXG4gICAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy0zeCkgIWltcG9ydGFudDtcclxufVxyXG4uY29sLWdhcC00eHtcclxuICAgIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctNHgpICFpbXBvcnRhbnQ7XHJcbn1cclxuLnJvdy1nYXAtMXh7XHJcbiAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KSAhaW1wb3J0YW50O1xyXG59XHJcbi5yb3ctZ2FwLTJ4e1xyXG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy0yeCkgIWltcG9ydGFudDtcclxufVxyXG4ucm93LWdhcC0zeHtcclxuICAgIHJvdy1nYXA6IHZhcigtLXNwYWNpbmctM3gpICFpbXBvcnRhbnQ7XHJcbn1cclxuLnJvdy1nYXAtNHh7XHJcbiAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTR4KSAhaW1wb3J0YW50O1xyXG59XHJcbi5tLXQtMCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwIWltcG9ydGFudDtcclxufVxyXG4ubS10LTF4IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpIWltcG9ydGFudDtcclxufVxyXG4ubS10LTJ4IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMngpIWltcG9ydGFudDtcclxufVxyXG4ubS10LTN4IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpIWltcG9ydGFudDtcclxufVxyXG4ubS10LTR4IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNHgpIWltcG9ydGFudDtcclxufVxyXG4ubS10LTV4IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNXgpIWltcG9ydGFudDtcclxufVxyXG4ubS10LTZ4IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNngpIWltcG9ydGFudDtcclxufVxyXG4ubS10LTd4IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctN3gpIWltcG9ydGFudDtcclxufVxyXG4ubS10LTh4IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctOHgpIWltcG9ydGFudDtcclxufVxyXG4ubS1iLTAsXHJcbi5tLWItMHgge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tYi0xeCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTF4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tYi0yeCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tYi0zeCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tYi00eCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTR4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tYi01eCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTV4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tYi02eCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTZ4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tYi03eCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTd4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tci0wIHtcclxuICAgIG1hcmdpbi1yaWdodDogMCFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tci0xeCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICB2YXIoLS1zcGFjaW5nLTF4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tbC0xeCB7XHJcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCkhaW1wb3J0YW50O1xyXG59XHJcbi5tLWwtNHgge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctNHgpIWltcG9ydGFudDtcclxufVxyXG4ubS1sLW5lZy0xeCB7XHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLXNwYWNpbmctMXgpKSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tci1uZWctMXgge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0xeCkpIWltcG9ydGFudDtcclxufVxyXG4ubS1iLW5lZy0yeCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0yICogdmFyKC0tc3BhY2luZy0xeCkpIWltcG9ydGFudDtcclxufVxyXG4ubS1sLW5lZy0yeCB7XHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMiAqIHZhcigtLXNwYWNpbmctMXgpKSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tYi1uZWctM3gge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMyAqIHZhcigtLXNwYWNpbmctMXgpKSFpbXBvcnRhbnQ7XHJcbn1cclxuLnAtdC0we1xyXG4gICAgcGFkZGluZy10b3A6IDAhaW1wb3J0YW50O1xyXG59XHJcbi5wLWItMHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwIWltcG9ydGFudDtcclxufVxyXG4ucC1sLTF4e1xyXG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLnAtci0xeHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpIWltcG9ydGFudDtcclxufVxyXG4ucC1sLTB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDAhaW1wb3J0YW50O1xyXG59XHJcbi5wLXItMHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDAhaW1wb3J0YW50O1xyXG59XHJcbi5wLWItMngge1xyXG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMngpIWltcG9ydGFudDtcclxufVxyXG4ucC10LTJ4IHtcclxuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tdy14cyB7XHJcbiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC14cykhaW1wb3J0YW50O1xyXG59XHJcbi5tLXctc20ge1xyXG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtc20pIWltcG9ydGFudDtcclxufVxyXG4ubS13LW1kIHtcclxuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLW1kKSFpbXBvcnRhbnQ7XHJcbn1cclxuLm0tdy1sZyB7XHJcbiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC1sZykhaW1wb3J0YW50O1xyXG59XHJcbi5uby1taW4td2lkdGgge1xyXG4gICAgbWluLXdpZHRoOiB1bnNldCFpbXBvcnRhbnQ7XHJcbn1cclxuLnctMTAwIHtcclxuICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcclxufVxyXG4ubS13LTI4OCB7XHJcbiAgICBtYXgtd2lkdGg6IDI4OHB4IWltcG9ydGFudDtcclxufVxyXG4udGV4dC1oZWFkaW5nLWNvbG9yIHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpIWltcG9ydGFudDtcclxufVxyXG4udGV4dC1ib2R5LWNvbG9ye1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcikgIWltcG9ydGFudDtcclxufVxyXG4udGV4dC1saWdodGVyLWNvbG9ye1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcikgIWltcG9ydGFudDtcclxufVxyXG4ub3JkZXItbmVnLTF7XHJcbiAgICBvcmRlcjogLTE7XHJcbn1cclxuLmQtZmxleCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG59XHJcbi5mbGV4LW5vd3JhcCB7XHJcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxufVxyXG4uc3BhY2UtYmV0d2VlbiB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuLmp1c3RpZnktY2VudGVyIHtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcbi5qdXN0aWZ5LXN0YXJ0IHtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxufVxyXG4uYWxpZ24tY2VudGVyIHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuLmZsZXgtY29sdW1uIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuLmZsZXgtZ3JvdyB7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xyXG59XHJcbi53b3JkLWJyZWFrLWFsbCB7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbn1cclxuLnZhLW1pZGRsZSB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcbi5hbGVydC53LWhpZGRlbixcclxuLmFsZXJ0LmFsZXJ0LWxhZ29tLnctaGlkZGVuLFxyXG4udy1oaWRkZW4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4ucHVsbC1ub25lIHtcclxuICAgIGZsb2F0OiBub25lIWltcG9ydGFudDtcclxufVxyXG4uYm9yZGVyLW5vbmV7XHJcbiAgICBib3JkZXI6bm9uZSFpbXBvcnRhbnQ7XHJcbn1cclxuLnRydW5jYXRlIHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAhaW1wb3J0YW50O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbiFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcyFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5nYXAteHN7XHJcbiAgICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpICFpbXBvcnRhbnQ7XHJcbn1cclxuLmdhcC1zbXtcclxuICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSkgIWltcG9ydGFudDtcclxufVxyXG4uZ2FwLWJhc2V7XHJcbiAgICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSkgIWltcG9ydGFudDtcclxufVxyXG4uZ2FwLWxne1xyXG4gICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSAhaW1wb3J0YW50O1xyXG59XHJcbi5nYXAteGxne1xyXG4gICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhsZykgIWltcG9ydGFudDtcclxufVxyXG4uZ2FwLXh4bGd7XHJcbiAgICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHhsZykgIWltcG9ydGFudDtcclxufVxyXG4ucm93LWdhcC14c3tcclxuICAgIHJvdy1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpICFpbXBvcnRhbnQ7XHJcbn1cclxuLnJvdy1nYXAtYmFzZXtcclxuICAgIHJvdy1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSkgIWltcG9ydGFudDtcclxufVxyXG4uY29sLWdhcC14c3tcclxuICAgIGNvbHVtbi1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpICFpbXBvcnRhbnQ7XHJcbn1cclxuLmNvbC1nYXAtYmFzZXtcclxuICAgIGNvbHVtbi1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSkgIWltcG9ydGFudDtcclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgIC5jb2wtbGctcm93LTd7XHJcbiAgICAgICAgZmxleDogMCAwIDE0LjI4NTclO1xyXG4gICAgICAgIG1heC13aWR0aDogMTQuMjg1NyU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ub3Ige1xyXG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxufVxyXG4uZHJvcC11cCB7XHJcbiAgICBib3R0b206IDEwMCU7XHJcbiAgICB0b3A6IGF1dG87XHJcbn1cclxuI2Z1bGxwYWdlLW92ZXJsYXkge1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlOyAgIFxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbW9kYWwtYmFja2Ryb3AtYmcpO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICAub3V0ZXItd3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgIC5pbm5lci13cmFwcGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIGhlaWdodDogMzAlO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgbWFyZ2luOiAtMyUgMCAwIC0yNSU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLm1zZyB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgIH1cclxufVxyXG5bc3R5bGU9XCJ0ZXh0LWFsaWduOmNlbnRlcjtcIl17XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLnNzbC1pbmZvIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4uZmEtaGVhZGVyOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZjFkY1wiO1xyXG59XHJcbi5sYWJlbC1jb3JuZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbWF4LWhlaWdodDogMTZweDtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIHBhZGRpbmc6IDRweDtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHsgIFxyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgfVxyXG59XHJcbi5zaHVmZmxlIHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlIWltcG9ydGFudDtcclxufVxyXG5cclxuI092ZXJ2aWV3IHtcclxuICAgICNsYXllcnMge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLnBhY2thZ2VzICsgLnByaWNpbmctdGV4dCB7XHJcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTEweCk7XHJcbiAgICBhIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgIH1cclxufVxyXG5cclxuLy9odHRwczovL2dpdC5yc3N0dWRpby5uZXQvbGFnb20tMi9jbGllbnQtYXJlYS8tL2lzc3Vlcy82NjlcclxuLnN1YnNjcmlwdGlvbi1tYW5hZ2Uge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcclxuICAgIC5jb2wtMTIge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTR4KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICBoNSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xyXG4gICAgfVxyXG4gICAgLnN2Zy1pY29uIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTR4KTtcclxuICAgIH1cclxufVxyXG5cclxuLmhhcy1zaGFkb3cge1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93LWxnKTtcclxufVxyXG5cclxuLmxhenktc3dpdGNoLW9wYWNpdHl7XHJcbiAgICBvcGFjaXR5OiAwIWltcG9ydGFudDtcclxufVxyXG5cclxuLmxhenlsb2FkLCAubGF6eWxvYWRpbmcsIC5sYXp5LXN3aXRjaC1tb2Rle1xyXG4gICAgb3BhY2l0eTogMDtcclxufVxyXG4ubGF6eWxvYWRlZHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XHJcbn1cclxuLmFwcC1uYXYtbWVudSAubGF6eWxvYWRlZCxcclxuLmxzLWlzLWNhY2hlZC5sYXp5bG9hZGVke1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcztcclxufVxyXG4vLyBQYWdlIERvbWFpbiBEZXRhaWxzIEFkZG9ucyBTdHlsZVxyXG5cclxuLnBhZ2UtY2xpZW50YXJlYWRvbWFpbmRldGFpbHN7XHJcbiAgICAjQWRkb25ze1xyXG4gICAgICAgIC5wYWNrYWdlLWFjdGlvbnN7XHJcbiAgICAgICAgICAgIGZvcm17XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vIERvbWFpbiBEZXRhaWxzIENhbmVsIEFkZG9uIG1vZGFsIHN0eWxlXHJcbi5wYWdlLWNsaWVudGFyZWFkb21haW5kZXRhaWxze1xyXG4gICAgI2NhbmNlbEFkZG9ue1xyXG4gICAgICAgIC5tb2RhbC1oZWFkZXJ7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tb2RhbC1ib2R5e1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgcHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubW9kYWwtZm9vdGVye1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vIGhpZGUgIHByb2R1a2N0IGdyb3VwIG5hbWUgaW4gY29uZmlndXJlIHByb2R1Y3QgcGFnZVxyXG4ucGFnZS1jb25maWd1cmVwcm9kdWN0e1xyXG4gICAgLmhpZGRlbi1wZ3tcclxuICAgICAgICAucGctbmFtZXtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBhZ2Utc29jaWFsbWVkaWFsb2dpbiB7XHJcbiAgICAuZGF0YVRhYmxlc19pbmZvIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcclxuICAgIH1cclxuICAgIC5tb2RhbC1oZWFkZXIge1xyXG4gICAgICAgIC5jbG9zZSB7XHJcbiAgICAgICAgICAgIHRvcDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucGFuZWwtaGVhZGluZyB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgIH1cclxufVxyXG5cclxuLyogaHR0cDovL2dpdC5tZ2xvY2FsL3dobWNzLXByb2R1Y3RzL3NvY2lhbF9tZWRpYV9sb2dfaW4vLS9pc3N1ZXMvMTUxICovXHJcbi5zb2NpYWwtbWVkaWEge1xyXG4gICAgLmJ0bi1tZWRpYSB7XHJcbiAgICAgICAgaGVpZ2h0OiAzOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vL2hpZGUgZGlzY291bnRzXHJcbi5oaWRlLWRpc2NvdW50c3tcclxuICAgICNzZWN0aW9uQ3ljbGVzIC5jaGVjay1zdWJ0aXRsZSxcclxuICAgIC5kcm9wZG93bi1jeWNsZS1zd2l0Y2hlciAubGFiZWwtc2F2ZSxcclxuICAgIC5wYWNrYWdlLXByaWNlIC5wcmljZS1kaXNjb3VudCxcclxuICAgIC5wcm9kdWN0LWJpbGxpbmctc3dpdGNoZXIgLmN5Y2xlLWNoYW5nZSAubGFiZWwtc2F2ZXtcclxuICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgIH0gXHJcbn1cclxuLmFwcC1uYXYtbWVudXtcclxuICAgIHVsLm1lbnV7XHJcbiAgICAgICAgbGkuaXMtZGlzYWJsZWR7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjU7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gc2hvdyBiYXNpYyBvdXRsaW5lIGZyb20gZm9jdXMgdmlzaWJsZSBzdGF0ZVxyXG5hOmZvY3VzLXZpc2libGUsXHJcbmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxyXG5pbnB1dDpmb2N1cy12aXNpYmxlLFxyXG5zZWxlY3Q6Zm9jdXMtdmlzaWJsZSxcclxudGV4dGFyZWE6Zm9jdXMtdmlzaWJsZSxcclxuZGl2LnJhZGlvLXN0eWxlZDpmb2N1cy12aXNpYmxlLFxyXG5kaXYuY2hlY2tib3gtc3R5bGVkOmZvY3VzLXZpc2libGUsXHJcbnRhYmxlIHRyIHRoOmZvY3VzLXZpc2libGUsXHJcbnRhYmxlIHRib2R5IHRyOmZvY3VzLXZpc2libGUsXHJcbi5saXN0LWdyb3VwLWl0ZW06Zm9jdXMtdmlzaWJsZSxcclxuaTpmb2N1cy12aXNpYmxlLFxyXG5kaXY6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcbn0gXHJcblxyXG5hLmxvZ286Zm9jdXMtdmlzaWJsZSA+IGltZyB7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1iZykgMHB4IDBweCAwcHggM3B4LCB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXIpIDBweCAwcHggMHB4IDRweDtcclxufVxyXG5cclxuI3BheW1lbnRtZXRob2Q6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxufVxyXG5cclxuZGl2LnNlY3Rpb24tY29udGVudCB7XHJcbiAgICAuc2VjdGlvbi1zbGlkZXJbdGFiaW5kZXg9XCIwXCJdOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLWJnKSAwcHggMHB4IDBweCAzcHgsIHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlcikgMHB4IDBweCAwcHggNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBJY29ucyBwcm9kdWN0cy9kb21haW5zL2RlcGFydG1lbnRzIGNsaWVudCBhcmVhIG9ubHkgIVxyXG4uZ3JhcGhpYy1pdGVte1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogNDhweDtcclxuICAgIGhlaWdodDogNDhweDtcclxuICAgIG1pbi13aWR0aDogNDhweDtcclxuICAgICY6ZW1wdHl7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgc3Zne1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgIGltZ3tcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAuZ3JhcGhpYy1pdGVtLWJne1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyLTMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xyXG4gICAgICAgIGl7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zbXtcclxuICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiAzMnB4O1xyXG4gICAgICAgIC5ncmFwaGljLWl0ZW0tYmd7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWlsbHVzdHJhdGlvbntcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC04cHg7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTYwcHg7XHJcbiAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogdW5zZXQ7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2hvd1NsaWRlckljb25zO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMCwgMSk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE2MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IC4yNHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IC4xMnM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1yb3VuZGVke1xyXG4gICAgICAgIC5ncmFwaGljLWl0ZW0tYmd7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAuZ3JhcGhpYy1pdGVte1xyXG4gICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBtaW4td2lkdGg6IDQwcHg7XHJcbiAgICAgICAgLmdyYXBoaWMtaXRlbS1iZ3tcclxuICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXNte1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgIC5ncmFwaGljLWl0ZW0tYmd7XHJcbiAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnbGFnb20tbWVkaXVtLWljb25zJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9sYWdvbS1tZWRpdW0taWNvbnMuZW90P3Y1d2dhM1wiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9sYWdvbS1tZWRpdW0taWNvbnMuZW90P3Y1d2dhMyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvbGFnb20tbWVkaXVtLWljb25zLndvZmY/djV3Z2EzXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2xhZ29tLW1lZGl1bS1pY29ucy50dGY/djV3Z2EzXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9sYWdvbS1tZWRpdW0taWNvbnMuc3ZnP3Y1d2dhMyNsYWdvbS1tZWRpdW0taWNvbnNcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbSxcbi5tZy13cmFwcGVyIC5sbSxcbi5sYWdvbSAubG0ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ2xhZ29tLW1lZGl1bS1pY29ucycgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKTsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWJhbmstbm90ZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tYmFuay1ub3RlOmJlZm9yZSxcbi5sYWdvbSAubG0tYmFuay1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE0XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1hbGlnbi1jZW50ZXI6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWFsaWduLWNlbnRlcjpiZWZvcmUsXG4ubGFnb20gLmxtLWFsaWduLWNlbnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYWxpZ24tbGVmdDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tYWxpZ24tbGVmdDpiZWZvcmUsXG4ubGFnb20gLmxtLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTZcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWFsaWduLXJpZ2h0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1hbGlnbi1yaWdodDpiZWZvcmUsXG4ubGFnb20gLmxtLWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE3XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1hcHBzOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1hcHBzOmJlZm9yZSxcbi5sYWdvbSAubG0tYXBwczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYXBwcy1mYXQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWFwcHMtZmF0OmJlZm9yZSxcbi5sYWdvbSAubG0tYXBwcy1mYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTlcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWFycm93LWZhdC1sZWZ0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1hcnJvdy1mYXQtbGVmdDpiZWZvcmUsXG4ubGFnb20gLmxtLWFycm93LWZhdC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFhXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1hcnJvdy1mYXQtcmlnaHQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWFycm93LWZhdC1yaWdodDpiZWZvcmUsXG4ubGFnb20gLmxtLWFycm93LWZhdC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxYlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYXJyb3ctbWVkaXVtLWRvd246YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWFycm93LW1lZGl1bS1kb3duOmJlZm9yZSxcbi5sYWdvbSAubG0tYXJyb3ctbWVkaXVtLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWNcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWFycm93LW1lZGl1bS1sZWZ0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1hcnJvdy1tZWRpdW0tbGVmdDpiZWZvcmUsXG4ubGFnb20gLmxtLWFycm93LW1lZGl1bS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFkXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1hcnJvdy1tZWRpdW0tcmlnaHQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWFycm93LW1lZGl1bS1yaWdodDpiZWZvcmUsXG4ubGFnb20gLmxtLWFycm93LW1lZGl1bS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYXJyb3ctbWVkaXVtLXVwOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1hcnJvdy1tZWRpdW0tdXA6YmVmb3JlLFxuLmxhZ29tIC5sbS1hcnJvdy1tZWRpdW0tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWZcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWFycm93LXRoaW4tZG93bjpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tYXJyb3ctdGhpbi1kb3duOmJlZm9yZSxcbi5sYWdvbSAubG0tYXJyb3ctdGhpbi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIwXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1hcnJvdy10aGluLWxlZnQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWFycm93LXRoaW4tbGVmdDpiZWZvcmUsXG4ubGFnb20gLmxtLWFycm93LXRoaW4tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYXJyb3ctdGhpbi1yaWdodDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tYXJyb3ctdGhpbi1yaWdodDpiZWZvcmUsXG4ubGFnb20gLmxtLWFycm93LXRoaW4tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWFycm93LXRoaW4tdXA6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWFycm93LXRoaW4tdXA6YmVmb3JlLFxuLmxhZ29tIC5sbS1hcnJvdy10aGluLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIzXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1iYWNrdXA6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWJhY2t1cDpiZWZvcmUsXG4ubGFnb20gLmxtLWJhY2t1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYmFnOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1iYWc6YmVmb3JlLFxuLmxhZ29tIC5sbS1iYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWJhcmNvZGU6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWJhcmNvZGU6YmVmb3JlLFxuLmxhZ29tIC5sbS1iYXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI2XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1ib29rOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1ib29rOmJlZm9yZSxcbi5sYWdvbSAubG0tYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyN1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYm9va21hcms6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWJvb2ttYXJrOmJlZm9yZSxcbi5sYWdvbSAubG0tYm9va21hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjhcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWJvb2stdy1ib29rbWFyazpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tYm9vay13LWJvb2ttYXJrOmJlZm9yZSxcbi5sYWdvbSAubG0tYm9vay13LWJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI5XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1ib3g6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWJveDpiZWZvcmUsXG4ubGFnb20gLmxtLWJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyYVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYnJpZWZjYXNlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1icmllZmNhc2U6YmVmb3JlLFxuLmxhZ29tIC5sbS1icmllZmNhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWJ1cmdlci1tZW51OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1idXJnZXItbWVudTpiZWZvcmUsXG4ubGFnb20gLmxtLWJ1cmdlci1tZW51OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJjXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1jYWxlbmRhcjpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tY2FsZW5kYXI6YmVmb3JlLFxuLmxhZ29tIC5sbS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tY2hhdC1jbG91ZDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tY2hhdC1jbG91ZDpiZWZvcmUsXG4ubGFnb20gLmxtLWNoYXQtY2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWNoYXQtY2xvdWQtaW5mbzpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tY2hhdC1jbG91ZC1pbmZvOmJlZm9yZSxcbi5sYWdvbSAubG0tY2hhdC1jbG91ZC1pbmZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJmXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1jaGF0LWNsb3VkczpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tY2hhdC1jbG91ZHM6YmVmb3JlLFxuLmxhZ29tIC5sbS1jaGF0LWNsb3VkczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzMFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tY2xvY2s6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWNsb2NrOmJlZm9yZSxcbi5sYWdvbSAubG0tY2xvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzFcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWNsb3VkOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1jbG91ZDpiZWZvcmUsXG4ubGFnb20gLmxtLWNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMyXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1jb21wYWN0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1jb21wYWN0OmJlZm9yZSxcbi5sYWdvbSAubG0tY29tcGFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzM1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tY3Jvd246YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWNyb3duOmJlZm9yZSxcbi5sYWdvbSAubG0tY3Jvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWN1cDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tY3VwOmJlZm9yZSxcbi5sYWdvbSAubG0tY3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM1XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1kYXNoYm9hcmQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWRhc2hib2FyZDpiZWZvcmUsXG4ubGFnb20gLmxtLWRhc2hib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tZGF0YWJhc2U6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWRhdGFiYXNlOmJlZm9yZSxcbi5sYWdvbSAubG0tZGF0YWJhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzdcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWRlbmlhbDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tZGVuaWFsOmJlZm9yZSxcbi5sYWdvbSAubG0tZGVuaWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM4XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1kZW5pZWQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWRlbmllZDpiZWZvcmUsXG4ubGFnb20gLmxtLWRlbmllZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzOVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tZGlyZWN0aW9uLXNpZ246YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWRpcmVjdGlvbi1zaWduOmJlZm9yZSxcbi5sYWdvbSAubG0tZGlyZWN0aW9uLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2FcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWZpbGU6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWZpbGU6YmVmb3JlLFxuLmxhZ29tIC5sbS1maWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNiXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1kb3duOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1kb3duOmJlZm9yZSxcbi5sYWdvbSAubG0tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzY1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tZG93bmxvYWQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWRvd25sb2FkOmJlZm9yZSxcbi5sYWdvbSAubG0tZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2RcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWVkaXQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWVkaXQ6YmVmb3JlLFxuLmxhZ29tIC5sbS1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNlXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1leHRlbmQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWV4dGVuZDpiZWZvcmUsXG4ubGFnb20gLmxtLWV4dGVuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tZmFjdG9yeTpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tZmFjdG9yeTpiZWZvcmUsXG4ubGFnb20gLmxtLWZhY3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDBcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWZlYXRoZXI6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWZlYXRoZXI6YmVmb3JlLFxuLmxhZ29tIC5sbS1mZWF0aGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQxXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1maXJlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1maXJlOmJlZm9yZSxcbi5sYWdvbSAubG0tZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0MlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tZmxhZzpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tZmxhZzpiZWZvcmUsXG4ubGFnb20gLmxtLWZsYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDNcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWZvbGRlci1wbHVzOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1mb2xkZXItcGx1czpiZWZvcmUsXG4ubGFnb20gLmxtLWZvbGRlci1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ0XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1mb2xkZXJzOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1mb2xkZXJzOmJlZm9yZSxcbi5sYWdvbSAubG0tZm9sZGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tZnVubmVsOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1mdW5uZWw6YmVmb3JlLFxuLmxhZ29tIC5sbS1mdW5uZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDZcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWdpZnQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWdpZnQ6YmVmb3JlLFxuLmxhZ29tIC5sbS1naWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ3XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1nbG9iZS1hbHQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWdsb2JlLWFsdDpiZWZvcmUsXG4ubGFnb20gLmxtLWdsb2JlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0OFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0taGVhcnQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWhlYXJ0OmJlZm9yZSxcbi5sYWdvbSAubG0taGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDlcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWltYWdlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1pbWFnZTpiZWZvcmUsXG4ubGFnb20gLmxtLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRhXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1pbmJveDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0taW5ib3g6YmVmb3JlLFxuLmxhZ29tIC5sbS1pbmJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0YlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0taW5mbzpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0taW5mbzpiZWZvcmUsXG4ubGFnb20gLmxtLWluZm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGNcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWxhYmVsLWxlZnQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWxhYmVsLWxlZnQ6YmVmb3JlLFxuLmxhZ29tIC5sbS1sYWJlbC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRkXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1sYWJlbC1yaWdodDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tbGFiZWwtcmlnaHQ6YmVmb3JlLFxuLmxhZ29tIC5sbS1sYWJlbC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tbGF5b3V0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1sYXlvdXQ6YmVmb3JlLFxuLmxhZ29tIC5sbS1sYXlvdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGZcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWxlZnQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWxlZnQ6YmVmb3JlLFxuLmxhZ29tIC5sbS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUwXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1saWdodG5pbmc6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWxpZ2h0bmluZzpiZWZvcmUsXG4ubGFnb20gLmxtLWxpZ2h0bmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tbGluZS1ncmFwaDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tbGluZS1ncmFwaDpiZWZvcmUsXG4ubGFnb20gLmxtLWxpbmUtZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWxvY2F0aW9uOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1sb2NhdGlvbjpiZWZvcmUsXG4ubGFnb20gLmxtLWxvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUzXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1tZWQta2l0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1tZWQta2l0OmJlZm9yZSxcbi5sYWdvbSAubG0tbWVkLWtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tbWludXM6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLW1pbnVzOmJlZm9yZSxcbi5sYWdvbSAubG0tbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLW1pbnVzLWNpcmNsZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tbWludXMtY2lyY2xlOmJlZm9yZSxcbi5sYWdvbSAubG0tbWludXMtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU2XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1tb3JlLXZlcnRpY2FsOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1tb3JlLXZlcnRpY2FsOmJlZm9yZSxcbi5sYWdvbSAubG0tbW9yZS12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1N1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tcGFkbG9jazpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tcGFkbG9jazpiZWZvcmUsXG4ubGFnb20gLmxtLXBhZGxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NThcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXBlbjpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tcGVuOmJlZm9yZSxcbi5sYWdvbSAubG0tcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU5XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1waHAtYWRtaW46YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXBocC1hZG1pbjpiZWZvcmUsXG4ubGFnb20gLmxtLXBocC1hZG1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1YVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tcGllLWdyYXBoOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1waWUtZ3JhcGg6YmVmb3JlLFxuLmxhZ29tIC5sbS1waWUtZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXBpbjpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tcGluOmJlZm9yZSxcbi5sYWdvbSAubG0tcGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVjXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1wbGF5LWJvYXJkOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1wbGF5LWJvYXJkOmJlZm9yZSxcbi5sYWdvbSAubG0tcGxheS1ib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tcGx1czpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tcGx1czpiZWZvcmUsXG4ubGFnb20gLmxtLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXBsdXMtZm9sZGVyOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1wbHVzLWZvbGRlcjpiZWZvcmUsXG4ubGFnb20gLmxtLXBsdXMtZm9sZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVmXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1wb3dlcjpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tcG93ZXI6YmVmb3JlLFxuLmxhZ29tIC5sbS1wb3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tcHJpbnRlcjpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tcHJpbnRlcjpiZWZvcmUsXG4ubGFnb20gLmxtLXByaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjFcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXJhbmdlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1yYW5nZTpiZWZvcmUsXG4ubGFnb20gLmxtLXJhbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYyXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1yZWNlaXB0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1yZWNlaXB0OmJlZm9yZSxcbi5sYWdvbSAubG0tcmVjZWlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2M1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tcmlnaHQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXJpZ2h0OmJlZm9yZSxcbi5sYWdvbSAubG0tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjRcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXNjYW5uZXI6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXNjYW5uZXI6YmVmb3JlLFxuLmxhZ29tIC5sbS1zY2FubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY1XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1zaGllbGQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXNoaWVsZDpiZWZvcmUsXG4ubGFnb20gLmxtLXNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tc2hyZWRkZXI6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXNocmVkZGVyOmJlZm9yZSxcbi5sYWdvbSAubG0tc2hyZWRkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjdcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXNwYXJrOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1zcGFyazpiZWZvcmUsXG4ubGFnb20gLmxtLXNwYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY4XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS10aHVtYnMtZG93bjpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tdGh1bWJzLWRvd246YmVmb3JlLFxuLmxhZ29tIC5sbS10aHVtYnMtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2OVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tdGh1bWJzLXVwOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS10aHVtYnMtdXA6YmVmb3JlLFxuLmxhZ29tIC5sbS10aHVtYnMtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmFcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXRvb2w6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXRvb2w6YmVmb3JlLFxuLmxhZ29tIC5sbS10b29sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZiXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS10cmFzaDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tdHJhc2g6YmVmb3JlLFxuLmxhZ29tIC5sbS10cmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2Y1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tdXA6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXVwOmJlZm9yZSxcbi5sYWdvbSAubG0tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmRcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXVwbG9hZDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tdXBsb2FkOmJlZm9yZSxcbi5sYWdvbSAubG0tdXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZlXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS11c2VyLWNpcmNsZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tdXNlci1jaXJjbGU6YmVmb3JlLFxuLmxhZ29tIC5sbS11c2VyLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tdXNlcnM6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXVzZXJzOmJlZm9yZSxcbi5sYWdvbSAubG0tdXNlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzBcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXZvaWNlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS12b2ljZTpiZWZvcmUsXG4ubGFnb20gLmxtLXZvaWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcxXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS13YWxsZXQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXdhbGxldDpiZWZvcmUsXG4ubGFnb20gLmxtLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0td2FybmluZzpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0td2FybmluZzpiZWZvcmUsXG4ubGFnb20gLmxtLXdhcm5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzNcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXdhdGVyLWRyb3A6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXdhdGVyLWRyb3A6YmVmb3JlLFxuLmxhZ29tIC5sbS13YXRlci1kcm9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc0XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS16b29tLWluOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS16b29tLWluOmJlZm9yZSxcbi5sYWdvbSAubG0tem9vbS1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3NVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tem9vbS1vdXQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXpvb20tb3V0OmJlZm9yZSxcbi5sYWdvbSAubG0tem9vbS1vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzZcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWJhci1ncmFwaDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tYmFyLWdyYXBoOmJlZm9yZSxcbi5sYWdvbSAubG0tYmFyLWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1iYXNrZXQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWJhc2tldDpiZWZvcmUsXG4ubGFnb20gLmxtLWJhc2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tYmVsbDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tYmVsbDpiZWZvcmUsXG4ubGFnb20gLmxtLWJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWNoZWNrOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1jaGVjazpiZWZvcmUsXG4ubGFnb20gLmxtLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1jbG9zZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tY2xvc2U6YmVmb3JlLFxuLmxhZ29tIC5sbS1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tZG9jdW1lbnQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWRvY3VtZW50OmJlZm9yZSxcbi5sYWdvbSAubG0tZG9jdW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWVudmVsb3BlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1lbnZlbG9wZTpiZWZvcmUsXG4ubGFnb20gLmxtLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1mb2xkZXI6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWZvbGRlcjpiZWZvcmUsXG4ubGFnb20gLmxtLWZvbGRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tZm9sZGVyLW9wZW46YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLWZvbGRlci1vcGVuOmJlZm9yZSxcbi5sYWdvbSAubG0tZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWdvLXRvcDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tZ28tdG9wOmJlZm9yZSxcbi5sYWdvbSAubG0tZ28tdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1ob21lOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1ob21lOmJlZm9yZSxcbi5sYWdvbSAubG0taG9tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0taG9zdGluZzpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0taG9zdGluZzpiZWZvcmUsXG4ubGFnb20gLmxtLWhvc3Rpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLWluZm8tdGV4dDpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0taW5mby10ZXh0OmJlZm9yZSxcbi5sYWdvbSAubG0taW5mby10ZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1tb3JlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1tb3JlOmJlZm9yZSxcbi5sYWdvbSAubG0tbW9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tbW91c2U6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLW1vdXNlOmJlZm9yZSxcbi5sYWdvbSAubG0tbW91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXBsdXMtY2lyY2xlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS1wbHVzLWNpcmNsZTpiZWZvcmUsXG4ubGFnb20gLmxtLXBsdXMtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBmXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1zZWFyY2g6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXNlYXJjaDpiZWZvcmUsXG4ubGFnb20gLmxtLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubG0tdGFnOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5sbS10YWc6YmVmb3JlLFxuLmxhZ29tIC5sbS10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTFcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxtLXVzZXI6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxtLXVzZXI6YmVmb3JlLFxuLmxhZ29tIC5sbS11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEyXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5sbS1nbG9iZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubG0tZ2xvYmU6YmVmb3JlLFxuLmxhZ29tIC5sbS1nbG9iZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxM1wiOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2xhZ29tLXNtYWxsLWljb25zJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9sYWdvbS1zbWFsbC1pY29ucy5lb3Q/N3l6MDBiXCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2xhZ29tLXNtYWxsLWljb25zLmVvdD83eXowMGIjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2xhZ29tLXNtYWxsLWljb25zLndvZmY/N3l6MDBiXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2xhZ29tLXNtYWxsLWljb25zLnR0Zj83eXowMGJcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2xhZ29tLXNtYWxsLWljb25zLnN2Zz83eXowMGIjbGFnb20tc21hbGwtaWNvbnNcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scyxcbi5tZy13cmFwcGVyIC5scyxcbi5sYWdvbSAubHMge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtc21hbGwpICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYXdhcmQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWF3YXJkOmJlZm9yZSxcbi5sYWdvbSAubHMtYXdhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJlOTRmXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1hbGlnbi1jZW50ZXI6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWFsaWduLWNlbnRlcjpiZWZvcmUsXG4ubGFnb20gLmxzLWFsaWduLWNlbnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYWxpZ24tbGVmdDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtYWxpZ24tbGVmdDpiZWZvcmUsXG4ubGFnb20gLmxzLWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWFsaWduLXJpZ2h0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1hbGlnbi1yaWdodDpiZWZvcmUsXG4ubGFnb20gLmxzLWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ2XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1hcHBzOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1hcHBzOmJlZm9yZSxcbi5sYWdvbSAubHMtYXBwczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0N1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYXJyb3ctZG93bi1sZWZ0LXRoaW46YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWFycm93LWRvd24tbGVmdC10aGluOmJlZm9yZSxcbi5sYWdvbSAubHMtYXJyb3ctZG93bi1sZWZ0LXRoaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDhcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWFycm93LWRvd24tcmlnaHQtdGhpbjpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtYXJyb3ctZG93bi1yaWdodC10aGluOmJlZm9yZSxcbi5sYWdvbSAubHMtYXJyb3ctZG93bi1yaWdodC10aGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ5XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1hcnJvdy1sZWZ0LXdhbGw6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWFycm93LWxlZnQtd2FsbDpiZWZvcmUsXG4ubGFnb20gLmxzLWFycm93LWxlZnQtd2FsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0YVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYXJyb3ctcGxheTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtYXJyb3ctcGxheTpiZWZvcmUsXG4ubGFnb20gLmxzLWFycm93LXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWFycm93LXJpZ2h0LWRvd24tdGhpbjpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtYXJyb3ctcmlnaHQtZG93bi10aGluOmJlZm9yZSxcbi5sYWdvbSAubHMtYXJyb3ctcmlnaHQtZG93bi10aGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRjXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1hcnJvdy1yaWdodC11cC10aGluOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1hcnJvdy1yaWdodC11cC10aGluOmJlZm9yZSxcbi5sYWdvbSAubHMtYXJyb3ctcmlnaHQtdXAtdGhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYXJyb3ctcmlnaHQtd2FsbDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtYXJyb3ctcmlnaHQtd2FsbDpiZWZvcmUsXG4ubGFnb20gLmxzLWFycm93LXJpZ2h0LXdhbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWJvb2stYm9va21hcms6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWJvb2stYm9va21hcms6YmVmb3JlLFxuLmxhZ29tIC5scy1ib29rLWJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY2XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1idWxsZXQtbWVkaXVtOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1idWxsZXQtbWVkaXVtOmJlZm9yZSxcbi5sYWdvbSAubHMtYnVsbGV0LW1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtY2hhdC1jbG91ZHM6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWNoYXQtY2xvdWRzOmJlZm9yZSxcbi5sYWdvbSAubHMtY2hhdC1jbG91ZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWNoZWNrLXVuZGVybGluZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtY2hlY2stdW5kZXJsaW5lOmJlZm9yZSxcbi5sYWdvbSAubHMtY2hlY2stdW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUzXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1jb3B5OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1jb3B5OmJlZm9yZSxcbi5sYWdvbSAubHMtY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtY3Jvd246YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWNyb3duOmJlZm9yZSxcbi5sYWdvbSAubHMtY3Jvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWRvY3VtZW50LWluZm86YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWRvY3VtZW50LWluZm86YmVmb3JlLFxuLmxhZ29tIC5scy1kb2N1bWVudC1pbmZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU2XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1kb3duOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1kb3duOmJlZm9yZSxcbi5sYWdvbSAubHMtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1N1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtZm9sZGVyLW9wZW46YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWZvbGRlci1vcGVuOmJlZm9yZSxcbi5sYWdvbSAubHMtZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NThcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWxhYmVsLWxlZnQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWxhYmVsLWxlZnQ6YmVmb3JlLFxuLmxhZ29tIC5scy1sYWJlbC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU5XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1sZWZ0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1sZWZ0OmJlZm9yZSxcbi5sYWdvbSAubHMtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1YVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtbW9yZS12ZXJ0aWNhbDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtbW9yZS12ZXJ0aWNhbDpiZWZvcmUsXG4ubGFnb20gLmxzLW1vcmUtdmVydGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXJlY2VpcHQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXJlY2VpcHQ6YmVmb3JlLFxuLmxhZ29tIC5scy1yZWNlaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVjXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1yaWdodDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtcmlnaHQ6YmVmb3JlLFxuLmxhZ29tIC5scy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtdGlja2V0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy10aWNrZXQ6YmVmb3JlLFxuLmxhZ29tIC5scy10aWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXVwOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy11cDpiZWZvcmUsXG4ubGFnb20gLmxzLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVmXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy12b2ljZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtdm9pY2U6YmVmb3JlLFxuLmxhZ29tIC5scy12b2ljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtd2F0ZXItZHJvcDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtd2F0ZXItZHJvcDpiZWZvcmUsXG4ubGFnb20gLmxzLXdhdGVyLWRyb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjFcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWFkZG9uOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1hZGRvbjpiZWZvcmUsXG4ubGFnb20gLmxzLWFkZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1hcnJvdy1kb3duOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1hcnJvdy1kb3duOmJlZm9yZSxcbi5sYWdvbSAubHMtYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtY2FyZXQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWNhcmV0OmJlZm9yZSxcbi5sYWdvbSAubHMtY2FyZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXNpZ24tb3V0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1zaWduLW91dDpiZWZvcmUsXG4ubGFnb20gLmxzLXNpZ24tb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1yZXBseTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtcmVwbHk6YmVmb3JlLFxuLmxhZ29tIC5scy1yZXBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYXJyb3ctbGVmdDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtYXJyb3ctbGVmdDpiZWZvcmUsXG4ubGFnb20gLmxzLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXNpZ24taW46YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXNpZ24taW46YmVmb3JlLFxuLmxhZ29tIC5scy1zaWduLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1zaGFyZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtc2hhcmU6YmVmb3JlLFxuLmxhZ29tIC5scy1zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYXJyb3ctcmlnaHQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWFycm93LXJpZ2h0OmJlZm9yZSxcbi5sYWdvbSAubHMtYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWFycm93LXVwOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1hcnJvdy11cDpiZWZvcmUsXG4ubGFnb20gLmxzLWFycm93LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1iYW5rLW5vdGU6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWJhbmstbm90ZTpiZWZvcmUsXG4ubGFnb20gLmxzLWJhbmstbm90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYmFza2V0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1iYXNrZXQ6YmVmb3JlLFxuLmxhZ29tIC5scy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWJveDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtYm94OmJlZm9yZSxcbi5sYWdvbSAubHMtYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1idWxsZXQtc21hbGw6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWJ1bGxldC1zbWFsbDpiZWZvcmUsXG4ubGFnb20gLmxzLWJ1bGxldC1zbWFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtYnVsbGV0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1idWxsZXQ6YmVmb3JlLFxuLmxhZ29tIC5scy1idWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWNhbGVuZGFyOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1jYWxlbmRhcjpiZWZvcmUsXG4ubGFnb20gLmxzLWNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBmXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1jaGFpbjpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtY2hhaW46YmVmb3JlLFxuLmxhZ29tIC5scy1jaGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtY2hlY2s6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWNoZWNrOmJlZm9yZSxcbi5sYWdvbSAubHMtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTFcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWNsb3NlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1jbG9zZTpiZWZvcmUsXG4ubGFnb20gLmxzLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEyXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1jb25maWd1cmU6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWNvbmZpZ3VyZTpiZWZvcmUsXG4ubGFnb20gLmxzLWNvbmZpZ3VyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxM1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtY3JlZGl0LWNhcmQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWNyZWRpdC1jYXJkOmJlZm9yZSxcbi5sYWdvbSAubHMtY3JlZGl0LWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTRcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWNyZWRpdDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtY3JlZGl0OmJlZm9yZSxcbi5sYWdvbSAubHMtY3JlZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE1XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1kYXNoYm9hcmQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWRhc2hib2FyZDpiZWZvcmUsXG4ubGFnb20gLmxzLWRhc2hib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtZGVuaWFsOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1kZW5pYWw6YmVmb3JlLFxuLmxhZ29tIC5scy1kZW5pYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTdcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWRpc2xpa2U6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWRpc2xpa2U6YmVmb3JlLFxuLmxhZ29tIC5scy1kaXNsaWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE4XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1kbnM6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWRuczpiZWZvcmUsXG4ubGFnb20gLmxzLWRuczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtZG9jdW1lbnQ6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWRvY3VtZW50OmJlZm9yZSxcbi5sYWdvbSAubHMtZG9jdW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWFcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWRvd25sb2FkOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1kb3dubG9hZDpiZWZvcmUsXG4ubGFnb20gLmxzLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1kb3dubG9hZC1zcXVhcmU6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWRvd25sb2FkLXNxdWFyZTpiZWZvcmUsXG4ubGFnb20gLmxzLWRvd25sb2FkLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxY1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtZWRpdDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtZWRpdDpiZWZvcmUsXG4ubGFnb20gLmxzLWVkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWRcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWVudmVsb3BlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1lbnZlbG9wZTpiZWZvcmUsXG4ubGFnb20gLmxzLWVudmVsb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFlXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1leGNsYW1hdGlvbi1jaXJjbGU6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUsXG4ubGFnb20gLmxzLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtZmxhZzpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtZmxhZzpiZWZvcmUsXG4ubGFnb20gLmxzLWZsYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjBcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWZvbGRlcjpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtZm9sZGVyOmJlZm9yZSxcbi5sYWdvbSAubHMtZm9sZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIxXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1oZWFydDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtaGVhcnQ6YmVmb3JlLFxuLmxhZ29tIC5scy1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtaG9tZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtaG9tZTpiZWZvcmUsXG4ubGFnb20gLmxzLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjNcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWhvc3Rpbmc6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWhvc3Rpbmc6YmVmb3JlLFxuLmxhZ29tIC5scy1ob3N0aW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI0XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1ob3VyZ2xhc3M6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWhvdXJnbGFzczpiZWZvcmUsXG4ubGFnb20gLmxzLWhvdXJnbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMta2V5OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1rZXk6YmVmb3JlLFxuLmxhZ29tIC5scy1rZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWltYWdlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1pbWFnZTpiZWZvcmUsXG4ubGFnb20gLmxzLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI2XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1pbmZvLWNpcmNsZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtaW5mby1jaXJjbGU6YmVmb3JlLFxuLmxhZ29tIC5scy1pbmZvLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyN1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtaW5wdXQtY29kZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtaW5wdXQtY29kZTpiZWZvcmUsXG4ubGFnb20gLmxzLWlucHV0LWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjhcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLWxpZ2h0bmluZzpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtbGlnaHRuaW5nOmJlZm9yZSxcbi5sYWdvbSAubHMtbGlnaHRuaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI5XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1saWtlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1saWtlOmJlZm9yZSxcbi5sYWdvbSAubHMtbGlrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyYVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtbG9jYXRpb246YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLWxvY2F0aW9uOmJlZm9yZSxcbi5sYWdvbSAubHMtbG9jYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmJcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLW1pbnVzOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1taW51czpiZWZvcmUsXG4ubGFnb20gLmxzLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJjXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1tb3JlOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1tb3JlOmJlZm9yZSxcbi5sYWdvbSAubHMtbW9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtbmV3LXdpbmRvdzpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtbmV3LXdpbmRvdzpiZWZvcmUsXG4ubGFnb20gLmxzLW5ldy13aW5kb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmVcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXBhZGxvY2s6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXBhZGxvY2s6YmVmb3JlLFxuLmxhZ29tIC5scy1wYWRsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJmXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1wZW46YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXBlbjpiZWZvcmUsXG4ubGFnb20gLmxzLXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzMFwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtcGx1czpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtcGx1czpiZWZvcmUsXG4ubGFnb20gLmxzLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzFcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXByaW50ZXI6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXByaW50ZXI6YmVmb3JlLFxuLmxhZ29tIC5scy1wcmludGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMyXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1yYW5nZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtcmFuZ2U6YmVmb3JlLFxuLmxhZ29tIC5scy1yYW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzM1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtcmVmcmVzaDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtcmVmcmVzaDpiZWZvcmUsXG4ubGFnb20gLmxzLXJlZnJlc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXJzczpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtcnNzOmJlZm9yZSxcbi5sYWdvbSAubHMtcnNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM1XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1zZWFyY2g6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXNlYXJjaDpiZWZvcmUsXG4ubGFnb20gLmxzLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2M1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtc2VjdXJpdHktY29kZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtc2VjdXJpdHktY29kZTpiZWZvcmUsXG4ubGFnb20gLmxzLXNlY3VyaXR5LWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzZcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXNoaWVsZDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtc2hpZWxkOmJlZm9yZSxcbi5sYWdvbSAubHMtc2hpZWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM3XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1zaXRlYnVpbGRlcjpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtc2l0ZWJ1aWxkZXI6YmVmb3JlLFxuLmxhZ29tIC5scy1zaXRlYnVpbGRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtc21hcnRwaG9uZTpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtc21hcnRwaG9uZTpiZWZvcmUsXG4ubGFnb20gLmxzLXNtYXJ0cGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzhcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXNvcnQtYXNjOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy1zb3J0LWFzYzpiZWZvcmUsXG4ubGFnb20gLmxzLXNvcnQtYXNjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM5XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy1zb3J0LWRlc2M6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXNvcnQtZGVzYzpiZWZvcmUsXG4ubGFnb20gLmxzLXNvcnQtZGVzYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzYVwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtc3Bhcms6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXNwYXJrOmJlZm9yZSxcbi5sYWdvbSAubHMtc3Bhcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2JcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXN3aXRjaDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtc3dpdGNoOmJlZm9yZSxcbi5sYWdvbSAubHMtc3dpdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY0XCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy10ZXh0LWNsb3VkOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy10ZXh0LWNsb3VkOmJlZm9yZSxcbi5sYWdvbSAubHMtdGV4dC1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzY1wiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtdGlja2V0LXRhZzpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtdGlja2V0LXRhZzpiZWZvcmUsXG4ubGFnb20gLmxzLXRpY2tldC10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2RcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXRyYW5zZmVyOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy10cmFuc2ZlcjpiZWZvcmUsXG4ubGFnb20gLmxzLXRyYW5zZmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNlXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy10cmFzaDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtdHJhc2g6YmVmb3JlLFxuLmxhZ29tIC5scy10cmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtdXBncmFkZS1kb3duZ3JhZGU6YmVmb3JlLFxuLm1nLXdyYXBwZXIgLmxzLXVwZ3JhZGUtZG93bmdyYWRlOmJlZm9yZSxcbi5sYWdvbSAubHMtdXBncmFkZS1kb3duZ3JhZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDBcIjsgfVxuXG4jbGFnb20tb25lLXN0ZXAtb3JkZXIgLmxzLXVwbG9hZDpiZWZvcmUsXG4ubWctd3JhcHBlciAubHMtdXBsb2FkOmJlZm9yZSxcbi5sYWdvbSAubHMtdXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQxXCI7IH1cblxuI2xhZ29tLW9uZS1zdGVwLW9yZGVyIC5scy11c2VyOmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy11c2VyOmJlZm9yZSxcbi5sYWdvbSAubHMtdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0MlwiOyB9XG5cbiNsYWdvbS1vbmUtc3RlcC1vcmRlciAubHMtd2FsbGV0OmJlZm9yZSxcbi5tZy13cmFwcGVyIC5scy13YWxsZXQ6YmVmb3JlLFxuLmxhZ29tIC5scy13YWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDNcIjsgfVxuXG4vKiBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS4gKi9cbi8qIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLiAqL1xuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4ucm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0xMnB4O1xuICBtYXJnaW4tbGVmdDogLTEycHg7IH1cblxuLnJvdy1zbSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0xeCkpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTF4KSk7IH1cbiAgLnJvdy1zbSBbY2xhc3MqPSdjb2wtJ10ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLm5vLWd1dHRlcnMge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5uby1ndXR0ZXJzID4gLmNvbCxcbiAgLm5vLWd1dHRlcnMgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmNvbC0xLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiwgLmNvbCxcbi5jb2wtYXV0bywgLmNvbC1zbS0xLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbSxcbi5jb2wtc20tYXV0bywgLmNvbC1tZC0xLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZCxcbi5jb2wtbWQtYXV0bywgLmNvbC1sZy0xLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiwgLmNvbC1sZyxcbi5jb2wtbGctYXV0bywgLmNvbC14bC0xLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bCxcbi5jb2wteGwtYXV0byB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogMTJweDsgfVxuXG4uY29sIHtcbiAgZmxleC1iYXNpczogMDtcbiAgZmxleC1ncm93OiAxO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnJvdy1jb2xzLTEgPiAqIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ucm93LWNvbHMtMiA+ICoge1xuICBmbGV4OiAwIDAgNTAlO1xuICBtYXgtd2lkdGg6IDUwJTsgfVxuXG4ucm93LWNvbHMtMyA+ICoge1xuICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4ucm93LWNvbHMtNCA+ICoge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTsgfVxuXG4ucm93LWNvbHMtNSA+ICoge1xuICBmbGV4OiAwIDAgMjAlO1xuICBtYXgtd2lkdGg6IDIwJTsgfVxuXG4ucm93LWNvbHMtNiA+ICoge1xuICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uY29sLWF1dG8ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uY29sLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMyU7IH1cblxuLmNvbC0yIHtcbiAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmNvbC0zIHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7IH1cblxuLmNvbC00IHtcbiAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLmNvbC01IHtcbiAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmNvbC02IHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7IH1cblxuLmNvbC03IHtcbiAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLmNvbC04IHtcbiAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmNvbC05IHtcbiAgZmxleDogMCAwIDc1JTtcbiAgbWF4LXdpZHRoOiA3NSU7IH1cblxuLmNvbC0xMCB7XG4gIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG5cbi5jb2wtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uY29sLTEyIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ub3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTE7IH1cblxuLm9yZGVyLWxhc3Qge1xuICBvcmRlcjogMTM7IH1cblxuLm9yZGVyLTAge1xuICBvcmRlcjogMDsgfVxuXG4ub3JkZXItMSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLm9yZGVyLTMge1xuICBvcmRlcjogMzsgfVxuXG4ub3JkZXItNCB7XG4gIG9yZGVyOiA0OyB9XG5cbi5vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLm9yZGVyLTYge1xuICBvcmRlcjogNjsgfVxuXG4ub3JkZXItNyB7XG4gIG9yZGVyOiA3OyB9XG5cbi5vcmRlci04IHtcbiAgb3JkZXI6IDg7IH1cblxuLm9yZGVyLTkge1xuICBvcmRlcjogOTsgfVxuXG4ub3JkZXItMTAge1xuICBvcmRlcjogMTA7IH1cblxuLm9yZGVyLTExIHtcbiAgb3JkZXI6IDExOyB9XG5cbi5vcmRlci0xMiB7XG4gIG9yZGVyOiAxMjsgfVxuXG4ub2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLm9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4ub2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLm9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4ub2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLm9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4ub2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuY29sLXNtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnJvdy1jb2xzLXNtLTEgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnJvdy1jb2xzLXNtLTIgPiAqIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5yb3ctY29scy1zbS0zID4gKiB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAucm93LWNvbHMtc20tNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLnJvdy1jb2xzLXNtLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5yb3ctY29scy1zbS02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuY29sLXNtLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuY29sLXNtLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5jb2wtc20tMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuY29sLXNtLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLmNvbC1zbS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5jb2wtc20tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLmNvbC1zbS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5jb2wtc20tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuY29sLXNtLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLmNvbC1zbS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuY29sLXNtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5jb2wtc20tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAub3JkZXItc20tZmlyc3Qge1xuICAgIG9yZGVyOiAtMTsgfVxuICAub3JkZXItc20tbGFzdCB7XG4gICAgb3JkZXI6IDEzOyB9XG4gIC5vcmRlci1zbS0wIHtcbiAgICBvcmRlcjogMDsgfVxuICAub3JkZXItc20tMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm9yZGVyLXNtLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5vcmRlci1zbS0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAub3JkZXItc20tNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLm9yZGVyLXNtLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5vcmRlci1zbS02IHtcbiAgICBvcmRlcjogNjsgfVxuICAub3JkZXItc20tNyB7XG4gICAgb3JkZXI6IDc7IH1cbiAgLm9yZGVyLXNtLTgge1xuICAgIG9yZGVyOiA4OyB9XG4gIC5vcmRlci1zbS05IHtcbiAgICBvcmRlcjogOTsgfVxuICAub3JkZXItc20tMTAge1xuICAgIG9yZGVyOiAxMDsgfVxuICAub3JkZXItc20tMTEge1xuICAgIG9yZGVyOiAxMTsgfVxuICAub3JkZXItc20tMTIge1xuICAgIG9yZGVyOiAxMjsgfVxuICAub2Zmc2V0LXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5vZmZzZXQtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5vZmZzZXQtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAub2Zmc2V0LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLm9mZnNldC1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5vZmZzZXQtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAub2Zmc2V0LXNtLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLm9mZnNldC1zbS03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5vZmZzZXQtc20tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAub2Zmc2V0LXNtLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLm9mZnNldC1zbS0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAub2Zmc2V0LXNtLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAucm93LWNvbHMtbWQtMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAucm93LWNvbHMtbWQtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLnJvdy1jb2xzLW1kLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5yb3ctY29scy1tZC00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAucm93LWNvbHMtbWQtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLnJvdy1jb2xzLW1kLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbWQtYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5jb2wtbWQtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLmNvbC1tZC0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbWQtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAuY29sLW1kLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1tZC01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC5jb2wtbWQtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAuY29sLW1kLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1tZC04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5jb2wtbWQtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAuY29sLW1kLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC5jb2wtbWQtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmNvbC1tZC0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5vcmRlci1tZC1maXJzdCB7XG4gICAgb3JkZXI6IC0xOyB9XG4gIC5vcmRlci1tZC1sYXN0IHtcbiAgICBvcmRlcjogMTM7IH1cbiAgLm9yZGVyLW1kLTAge1xuICAgIG9yZGVyOiAwOyB9XG4gIC5vcmRlci1tZC0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAub3JkZXItbWQtMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm9yZGVyLW1kLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5vcmRlci1tZC00IHtcbiAgICBvcmRlcjogNDsgfVxuICAub3JkZXItbWQtNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm9yZGVyLW1kLTYge1xuICAgIG9yZGVyOiA2OyB9XG4gIC5vcmRlci1tZC03IHtcbiAgICBvcmRlcjogNzsgfVxuICAub3JkZXItbWQtOCB7XG4gICAgb3JkZXI6IDg7IH1cbiAgLm9yZGVyLW1kLTkge1xuICAgIG9yZGVyOiA5OyB9XG4gIC5vcmRlci1tZC0xMCB7XG4gICAgb3JkZXI6IDEwOyB9XG4gIC5vcmRlci1tZC0xMSB7XG4gICAgb3JkZXI6IDExOyB9XG4gIC5vcmRlci1tZC0xMiB7XG4gICAgb3JkZXI6IDEyOyB9XG4gIC5vZmZzZXQtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm9mZnNldC1tZC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLm9mZnNldC1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5vZmZzZXQtbWQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAub2Zmc2V0LW1kLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm9mZnNldC1tZC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5vZmZzZXQtbWQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAub2Zmc2V0LW1kLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm9mZnNldC1tZC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5vZmZzZXQtbWQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAub2Zmc2V0LW1kLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5vZmZzZXQtbWQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbC1sZyB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5yb3ctY29scy1sZy0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5yb3ctY29scy1sZy0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAucm93LWNvbHMtbGctMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnJvdy1jb2xzLWxnLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5yb3ctY29scy1sZy01ID4gKiB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAucm93LWNvbHMtbGctNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC1sZy1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmNvbC1sZy0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAuY29sLWxnLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC1sZy0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5jb2wtbGctNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuY29sLWxnLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmNvbC1sZy02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5jb2wtbGctNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuY29sLWxnLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1sZy05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5jb2wtbGctMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmNvbC1sZy0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuY29sLWxnLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm9yZGVyLWxnLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLm9yZGVyLWxnLWxhc3Qge1xuICAgIG9yZGVyOiAxMzsgfVxuICAub3JkZXItbGctMCB7XG4gICAgb3JkZXI6IDA7IH1cbiAgLm9yZGVyLWxnLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5vcmRlci1sZy0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAub3JkZXItbGctMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm9yZGVyLWxnLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5vcmRlci1sZy01IHtcbiAgICBvcmRlcjogNTsgfVxuICAub3JkZXItbGctNiB7XG4gICAgb3JkZXI6IDY7IH1cbiAgLm9yZGVyLWxnLTcge1xuICAgIG9yZGVyOiA3OyB9XG4gIC5vcmRlci1sZy04IHtcbiAgICBvcmRlcjogODsgfVxuICAub3JkZXItbGctOSB7XG4gICAgb3JkZXI6IDk7IH1cbiAgLm9yZGVyLWxnLTEwIHtcbiAgICBvcmRlcjogMTA7IH1cbiAgLm9yZGVyLWxnLTExIHtcbiAgICBvcmRlcjogMTE7IH1cbiAgLm9yZGVyLWxnLTEyIHtcbiAgICBvcmRlcjogMTI7IH1cbiAgLm9mZnNldC1sZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAub2Zmc2V0LWxnLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAub2Zmc2V0LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm9mZnNldC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5vZmZzZXQtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAub2Zmc2V0LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm9mZnNldC1sZy02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5vZmZzZXQtbGctNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAub2Zmc2V0LWxnLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm9mZnNldC1sZy05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5vZmZzZXQtbGctMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm9mZnNldC1sZy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLmNvbC14bCB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5yb3ctY29scy14bC0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5yb3ctY29scy14bC0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAucm93LWNvbHMteGwtMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnJvdy1jb2xzLXhsLTQgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5yb3ctY29scy14bC01ID4gKiB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAucm93LWNvbHMteGwtNiA+ICoge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC14bC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmNvbC14bC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAuY29sLXhsLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5jb2wteGwtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuY29sLXhsLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5jb2wteGwtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuY29sLXhsLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmNvbC14bC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5jb2wteGwtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmNvbC14bC0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuY29sLXhsLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm9yZGVyLXhsLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLm9yZGVyLXhsLWxhc3Qge1xuICAgIG9yZGVyOiAxMzsgfVxuICAub3JkZXIteGwtMCB7XG4gICAgb3JkZXI6IDA7IH1cbiAgLm9yZGVyLXhsLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5vcmRlci14bC0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAub3JkZXIteGwtMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm9yZGVyLXhsLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5vcmRlci14bC01IHtcbiAgICBvcmRlcjogNTsgfVxuICAub3JkZXIteGwtNiB7XG4gICAgb3JkZXI6IDY7IH1cbiAgLm9yZGVyLXhsLTcge1xuICAgIG9yZGVyOiA3OyB9XG4gIC5vcmRlci14bC04IHtcbiAgICBvcmRlcjogODsgfVxuICAub3JkZXIteGwtOSB7XG4gICAgb3JkZXI6IDk7IH1cbiAgLm9yZGVyLXhsLTEwIHtcbiAgICBvcmRlcjogMTA7IH1cbiAgLm9yZGVyLXhsLTExIHtcbiAgICBvcmRlcjogMTE7IH1cbiAgLm9yZGVyLXhsLTEyIHtcbiAgICBvcmRlcjogMTI7IH1cbiAgLm9mZnNldC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAub2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAub2Zmc2V0LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm9mZnNldC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5vZmZzZXQteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAub2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm9mZnNldC14bC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5vZmZzZXQteGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAub2Zmc2V0LXhsLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5vZmZzZXQteGwtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm9mZnNldC14bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfSB9XG5cbi5jb2w1IHtcbiAgZmxleDogMCAwIDIwJTtcbiAgbWF4LXdpZHRoOiAyMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5jb2wtc201IHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQ1IHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb2wtbGc1IHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEzMjBweCkge1xuICAuY29sLXhsNSB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuR2VuZXJhbCAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuaHRtbCB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7IH1cblxuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW8tZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIGJvZHkge1xuICAgICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgYm9keSwgaHRtbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuOyB9IH1cblxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCwgc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwcHggMTAwMHB4IHdoaXRlIGluc2V0OyB9XG5cbmFbaHJlZl49XCJ0ZWxcIl0ge1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuYTpub3QoLmJ0bikge1xuICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIHBhZGRpbmcgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICBhOm5vdCguYnRuKS5sYWJlbC1wcmltYXJ5LWZhZGVkIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICBhOm5vdCguYnRuKTpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxhZ29tOm5vdCgubGFnb20tbGF5b3V0LWxlZnQpIC5oYXMtc2Nyb2xsLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1saXN0KSB7XG4gICAgbWF4LWhlaWdodDogdmFyKC0tbmF2YmFyLWRyb3Bkb3duLW1heC1oZWlnaHQpOyB9IH1cblxuLmhhcy1zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHNjcm9sbGJhci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpIHRyYW5zcGFyZW50O1xuICBzY3JvbGxiYXItd2lkdGg6IHRoaW47IH1cbiAgLmhhcy1zY3JvbGwuZHJvcGRvd24tbWVudSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xuICAgIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47IH1cbiAgICAuaGFzLXNjcm9sbC5kcm9wZG93bi1tZW51Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAuaGFzLXNjcm9sbC5kcm9wZG93bi1tZW51LWl0ZW1zOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpOyB9XG4gIC5oYXMtc2Nyb2xsLmRyb3Bkb3duLW1lbnUtaXRlbXMge1xuICAgIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuaGFzLXNjcm9sbC5kcm9wZG93bi1tZW51LWl0ZW1zOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1iZyk7IH1cbiAgLmhhcy1zY3JvbGw6aG92ZXIge1xuICAgIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47IH1cbiAgLmhhcy1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogNnB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5oYXMtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLmhhcy1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIHdpZHRoOiA2cHg7XG4gICAgaGVpZ2h0OiA2cHg7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5HZW5lcmFsIC0gVHlwZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG5wOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYWRtaW5yZXR1cm5kaXYge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuI3BvcHVwLWJhY2tkcm9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJFMzYzRjtcbiAgcGFkZGluZzogMTVweDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5hZG1pbi1tYXNxdWVyYWRlLW5vdGljZSB7XG4gIG1hcmdpbjogMjVweCAwIDAgYXV0bztcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIG1heC13aWR0aDogMjQwcHg7XG4gIGZvbnQtZmFtaWx5OiBUYWhvbWE7XG4gIGZvbnQtc2l6ZTogMC43ZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5hZG1pbi1tYXNxdWVyYWRlLW5vdGljZSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ubGljZW5zaW5nLWFkZG9uLWxhdGVzdC1kb3dubG9hZCBoMyB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5HZW5lcmFsIC0gUHJpbnRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuQG1lZGlhIHByaW50IHtcbiAgLnNpZGViYXIsXG4gIC5hcHAtbmF2LW1lbnUsXG4gICN0b3AtbmF2LFxuICAuaGVhZGVyLWxpbmVkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDsgfSB9XG5cbi5hbGVydC1ib3JkZXJlZC1sZWZ0IHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuR2VuZXJhbCAtIEdyaWQgXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5yb3ctZXEtaGVpZ2h0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5yb3ctZXEtaGVpZ2h0OmJlZm9yZSwgLnJvdy1lcS1oZWlnaHQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnJvdy1lcS1oZWlnaHQgPiBkaXZbY2xhc3MqPWNvbF0ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAucm93LWVxLWhlaWdodCA+IGRpdltjbGFzcyo9Y29sXSA+ICoge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5yb3ctZXEtaGVpZ2h0LW1kIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5yb3ctZXEtaGVpZ2h0Om5vdCgucm93LWVxLWhlaWdodC1zbSk6bm90KC5yb3ctZXEtaGVpZ2h0LXhzKTpub3QoLnJvdy1jb2xzLW1peGVkKSA+IFtjbGFzcyo9XCJjb2wtc20tXCJdIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxleDogMCAwIDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnByb2R1Y3RzIC5yb3ctZXEtaGVpZ2h0ID4gZGl2W2NsYXNzKj1jb2xdIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucm93LWVxLWhlaWdodC1zbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAobWF4LXdpZHRoOiA3NjcuOThweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIC5yb3ctZXEtaGVpZ2h0LXNtIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmZsZXgtY29sdW1uLXNtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiB1bnNldCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgtY29sdW1uLXNtIC5tLXItYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4LWNvbHVtbi1zbSA+ICogKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkgIWltcG9ydGFudDsgfSB9XG5cbi5jb250YWluZXItZmx1aWQud2l0aG91dC1wYWRkaW5nIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuR2VuZXJhbCAtIEhlbHBlcnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmhpZGRlbi1iZWxvdy1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLndlaWdodC0zMDAge1xuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7IH1cblxuLndlaWdodC01MDAge1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7IH1cblxuaS5pY29uLXJzcyB7XG4gIGNvbG9yOiAjZmY2NjAwOyB9XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDsgfVxuXG4ubS1hLFxuLm0taC1hIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4ubS1oLTF4IHtcbiAgbWFyZ2luOiAwIHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5tLWwtYSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLm0tci1hIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLmdhcC0xeCB7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xeCkgIWltcG9ydGFudDsgfVxuXG4uZ2FwLTJ4IHtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KSAhaW1wb3J0YW50OyB9XG5cbi5nYXAtM3gge1xuICBnYXA6IHZhcigtLXNwYWNpbmctM3gpICFpbXBvcnRhbnQ7IH1cblxuLmdhcC00eCB7XG4gIGdhcDogdmFyKC0tc3BhY2luZy00eCkgIWltcG9ydGFudDsgfVxuXG4uY29sLWdhcC0xeCB7XG4gIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctMXgpICFpbXBvcnRhbnQ7IH1cblxuLmNvbC1nYXAtMngge1xuICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KSAhaW1wb3J0YW50OyB9XG5cbi5jb2wtZ2FwLTN4IHtcbiAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy0zeCkgIWltcG9ydGFudDsgfVxuXG4uY29sLWdhcC00eCB7XG4gIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctNHgpICFpbXBvcnRhbnQ7IH1cblxuLnJvdy1nYXAtMXgge1xuICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KSAhaW1wb3J0YW50OyB9XG5cbi5yb3ctZ2FwLTJ4IHtcbiAgcm93LWdhcDogdmFyKC0tc3BhY2luZy0yeCkgIWltcG9ydGFudDsgfVxuXG4ucm93LWdhcC0zeCB7XG4gIHJvdy1nYXA6IHZhcigtLXNwYWNpbmctM3gpICFpbXBvcnRhbnQ7IH1cblxuLnJvdy1nYXAtNHgge1xuICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTR4KSAhaW1wb3J0YW50OyB9XG5cbi5tLXQtMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ubS10LTF4IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCkgIWltcG9ydGFudDsgfVxuXG4ubS10LTJ4IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yeCkgIWltcG9ydGFudDsgfVxuXG4ubS10LTN4IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCkgIWltcG9ydGFudDsgfVxuXG4ubS10LTR4IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy00eCkgIWltcG9ydGFudDsgfVxuXG4ubS10LTV4IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy01eCkgIWltcG9ydGFudDsgfVxuXG4ubS10LTZ4IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy02eCkgIWltcG9ydGFudDsgfVxuXG4ubS10LTd4IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy03eCkgIWltcG9ydGFudDsgfVxuXG4ubS10LTh4IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy04eCkgIWltcG9ydGFudDsgfVxuXG4ubS1iLTAsXG4ubS1iLTB4IHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5tLWItMXgge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTF4KSAhaW1wb3J0YW50OyB9XG5cbi5tLWItMngge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KSAhaW1wb3J0YW50OyB9XG5cbi5tLWItM3gge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KSAhaW1wb3J0YW50OyB9XG5cbi5tLWItNHgge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTR4KSAhaW1wb3J0YW50OyB9XG5cbi5tLWItNXgge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTV4KSAhaW1wb3J0YW50OyB9XG5cbi5tLWItNngge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTZ4KSAhaW1wb3J0YW50OyB9XG5cbi5tLWItN3gge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTd4KSAhaW1wb3J0YW50OyB9XG5cbi5tLXItMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5tLXItMXgge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpICFpbXBvcnRhbnQ7IH1cblxuLm0tbC0xeCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KSAhaW1wb3J0YW50OyB9XG5cbi5tLWwtNHgge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy00eCkgIWltcG9ydGFudDsgfVxuXG4ubS1sLW5lZy0xeCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0xeCkpICFpbXBvcnRhbnQ7IH1cblxuLm0tci1uZWctMXgge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTF4KSkgIWltcG9ydGFudDsgfVxuXG4ubS1iLW5lZy0yeCB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTIgKiB2YXIoLS1zcGFjaW5nLTF4KSkgIWltcG9ydGFudDsgfVxuXG4ubS1sLW5lZy0yeCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0yICogdmFyKC0tc3BhY2luZy0xeCkpICFpbXBvcnRhbnQ7IH1cblxuLm0tYi1uZWctM3gge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKC0zICogdmFyKC0tc3BhY2luZy0xeCkpICFpbXBvcnRhbnQ7IH1cblxuLnAtdC0wIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ucC1iLTAge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5wLWwtMXgge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpICFpbXBvcnRhbnQ7IH1cblxuLnAtci0xeCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpICFpbXBvcnRhbnQ7IH1cblxuLnAtbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnAtci0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5wLWItMngge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCkgIWltcG9ydGFudDsgfVxuXG4ucC10LTJ4IHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMngpICFpbXBvcnRhbnQ7IH1cblxuLm0tdy14cyB7XG4gIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLXhzKSAhaW1wb3J0YW50OyB9XG5cbi5tLXctc20ge1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC1zbSkgIWltcG9ydGFudDsgfVxuXG4ubS13LW1kIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtbWQpICFpbXBvcnRhbnQ7IH1cblxuLm0tdy1sZyB7XG4gIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLWxnKSAhaW1wb3J0YW50OyB9XG5cbi5uby1taW4td2lkdGgge1xuICBtaW4td2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7IH1cblxuLnctMTAwIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4ubS13LTI4OCB7XG4gIG1heC13aWR0aDogMjg4cHggIWltcG9ydGFudDsgfVxuXG4udGV4dC1oZWFkaW5nLWNvbG9yIHtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ib2R5LWNvbG9yIHtcbiAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4udGV4dC1saWdodGVyLWNvbG9yIHtcbiAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4ub3JkZXItbmVnLTEge1xuICBvcmRlcjogLTE7IH1cblxuLmQtZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuXG4uZmxleC1ub3dyYXAge1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuXG4uc3BhY2UtYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uanVzdGlmeS1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uanVzdGlmeS1zdGFydCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5mbGV4LWdyb3cge1xuICBmbGV4LWdyb3c6IDE7XG4gIG1heC13aWR0aDogdW5zZXQ7IH1cblxuLndvcmQtYnJlYWstYWxsIHtcbiAgd29yZC1icmVhazogYnJlYWstYWxsOyB9XG5cbi52YS1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5hbGVydC53LWhpZGRlbixcbi5hbGVydC5hbGVydC1sYWdvbS53LWhpZGRlbixcbi53LWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnB1bGwtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci1ub25lIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRydW5jYXRlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzICFpbXBvcnRhbnQ7IH1cblxuLmdhcC14cyB7XG4gIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cykgIWltcG9ydGFudDsgfVxuXG4uZ2FwLXNtIHtcbiAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKSAhaW1wb3J0YW50OyB9XG5cbi5nYXAtYmFzZSB7XG4gIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKSAhaW1wb3J0YW50OyB9XG5cbi5nYXAtbGcge1xuICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpICFpbXBvcnRhbnQ7IH1cblxuLmdhcC14bGcge1xuICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteGxnKSAhaW1wb3J0YW50OyB9XG5cbi5nYXAteHhsZyB7XG4gIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14eGxnKSAhaW1wb3J0YW50OyB9XG5cbi5yb3ctZ2FwLXhzIHtcbiAgcm93LWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cykgIWltcG9ydGFudDsgfVxuXG4ucm93LWdhcC1iYXNlIHtcbiAgcm93LWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKSAhaW1wb3J0YW50OyB9XG5cbi5jb2wtZ2FwLXhzIHtcbiAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cykgIWltcG9ydGFudDsgfVxuXG4uY29sLWdhcC1iYXNlIHtcbiAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29sLWxnLXJvdy03IHtcbiAgICBmbGV4OiAwIDAgMTQuMjg1NyU7XG4gICAgbWF4LXdpZHRoOiAxNC4yODU3JTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7IH0gfVxuXG4ub3Ige1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLmRyb3AtdXAge1xuICBib3R0b206IDEwMCU7XG4gIHRvcDogYXV0bzsgfVxuXG4jZnVsbHBhZ2Utb3ZlcmxheSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbW9kYWwtYmFja2Ryb3AtYmcpO1xuICBjb2xvcjogI2ZmZjsgfVxuICAjZnVsbHBhZ2Utb3ZlcmxheSAub3V0ZXItd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAjZnVsbHBhZ2Utb3ZlcmxheSAuaW5uZXItd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBoZWlnaHQ6IDMwJTtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbjogLTMlIDAgMCAtMjUlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAjZnVsbHBhZ2Utb3ZlcmxheSAubXNnIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXgtd2lkdGg6IDQwMHB4OyB9XG5cbltzdHlsZT1cInRleHQtYWxpZ246Y2VudGVyO1wiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zc2wtaW5mbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uZmEtaGVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRjXCI7IH1cblxuLmxhYmVsLWNvcm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWF4LWhlaWdodDogMTZweDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBwYWRkaW5nOiA0cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLmxhYmVsLWNvcm5lciB7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfSB9XG5cbi5zaHVmZmxlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDsgfVxuXG4jT3ZlcnZpZXcgI2xheWVycyB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4ucGFja2FnZXMgKyAucHJpY2luZy10ZXh0IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xMHgpOyB9XG4gIC5wYWNrYWdlcyArIC5wcmljaW5nLXRleHQgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cblxuLnN1YnNjcmlwdGlvbi1tYW5hZ2Uge1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3RyZXRjaDsgfVxuICAuc3Vic2NyaXB0aW9uLW1hbmFnZSAuY29sLTEyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy00eCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zdWJzY3JpcHRpb24tbWFuYWdlIGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7IH1cbiAgLnN1YnNjcmlwdGlvbi1tYW5hZ2UgLnN2Zy1pY29uIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTR4KTsgfVxuXG4uaGFzLXNoYWRvdyB7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdy1sZyk7IH1cblxuLmxhenktc3dpdGNoLW9wYWNpdHkge1xuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7IH1cblxuLmxhenlsb2FkLCAubGF6eWxvYWRpbmcsIC5sYXp5LXN3aXRjaC1tb2RlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubGF6eWxvYWRlZCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yczsgfVxuXG4uYXBwLW5hdi1tZW51IC5sYXp5bG9hZGVkLFxuLmxzLWlzLWNhY2hlZC5sYXp5bG9hZGVkIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwczsgfVxuXG4ucGFnZS1jbGllbnRhcmVhZG9tYWluZGV0YWlscyAjQWRkb25zIC5wYWNrYWdlLWFjdGlvbnMgZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiAxMnB4OyB9XG5cbi5wYWdlLWNsaWVudGFyZWFkb21haW5kZXRhaWxzICNjYW5jZWxBZGRvbiAubW9kYWwtaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ucGFnZS1jbGllbnRhcmVhZG9tYWluZGV0YWlscyAjY2FuY2VsQWRkb24gLm1vZGFsLWJvZHkge1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAucGFnZS1jbGllbnRhcmVhZG9tYWluZGV0YWlscyAjY2FuY2VsQWRkb24gLm1vZGFsLWJvZHkgcCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpOyB9XG5cbi5wYWdlLWNsaWVudGFyZWFkb21haW5kZXRhaWxzICNjYW5jZWxBZGRvbiAubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMngpOyB9XG5cbi5wYWdlLWNvbmZpZ3VyZXByb2R1Y3QgLmhpZGRlbi1wZyAucGctbmFtZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ucGFnZS1zb2NpYWxtZWRpYWxvZ2luIC5kYXRhVGFibGVzX2luZm8ge1xuICBwYWRkaW5nLWJvdHRvbTogMjRweDsgfVxuXG4ucGFnZS1zb2NpYWxtZWRpYWxvZ2luIC5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcbiAgdG9wOiAxNnB4OyB9XG5cbi5wYWdlLXNvY2lhbG1lZGlhbG9naW4gLnBhbmVsLWhlYWRpbmcge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpOyB9XG5cbi8qIGh0dHA6Ly9naXQubWdsb2NhbC93aG1jcy1wcm9kdWN0cy9zb2NpYWxfbWVkaWFfbG9nX2luLy0vaXNzdWVzLzE1MSAqL1xuLnNvY2lhbC1tZWRpYSAuYnRuLW1lZGlhIHtcbiAgaGVpZ2h0OiAzOHB4ICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4OyB9XG5cbi5oaWRlLWRpc2NvdW50cyAjc2VjdGlvbkN5Y2xlcyAuY2hlY2stc3VidGl0bGUsXG4uaGlkZS1kaXNjb3VudHMgLmRyb3Bkb3duLWN5Y2xlLXN3aXRjaGVyIC5sYWJlbC1zYXZlLFxuLmhpZGUtZGlzY291bnRzIC5wYWNrYWdlLXByaWNlIC5wcmljZS1kaXNjb3VudCxcbi5oaWRlLWRpc2NvdW50cyAucHJvZHVjdC1iaWxsaW5nLXN3aXRjaGVyIC5jeWNsZS1jaGFuZ2UgLmxhYmVsLXNhdmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmFwcC1uYXYtbWVudSB1bC5tZW51IGxpLmlzLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC42NTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuYTpmb2N1cy12aXNpYmxlLFxuYnV0dG9uOmZvY3VzLXZpc2libGUsXG5pbnB1dDpmb2N1cy12aXNpYmxlLFxuc2VsZWN0OmZvY3VzLXZpc2libGUsXG50ZXh0YXJlYTpmb2N1cy12aXNpYmxlLFxuZGl2LnJhZGlvLXN0eWxlZDpmb2N1cy12aXNpYmxlLFxuZGl2LmNoZWNrYm94LXN0eWxlZDpmb2N1cy12aXNpYmxlLFxudGFibGUgdHIgdGg6Zm9jdXMtdmlzaWJsZSxcbnRhYmxlIHRib2R5IHRyOmZvY3VzLXZpc2libGUsXG4ubGlzdC1ncm91cC1pdGVtOmZvY3VzLXZpc2libGUsXG5pOmZvY3VzLXZpc2libGUsXG5kaXY6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5hLmxvZ286Zm9jdXMtdmlzaWJsZSA+IGltZyB7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLWJnKSAwcHggMHB4IDBweCAzcHgsIHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlcikgMHB4IDBweCAwcHggNHB4OyB9XG5cbiNwYXltZW50bWV0aG9kOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuXG5kaXYuc2VjdGlvbi1jb250ZW50IC5zZWN0aW9uLXNsaWRlclt0YWJpbmRleD1cIjBcIl06Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLWJnKSAwcHggMHB4IDBweCAzcHgsIHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlcikgMHB4IDBweCAwcHggNHB4OyB9XG5cbi5ncmFwaGljLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIG1pbi13aWR0aDogNDhweDsgfVxuICAuZ3JhcGhpYy1pdGVtOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmdyYXBoaWMtaXRlbSBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuZ3JhcGhpYy1pdGVtIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5ncmFwaGljLWl0ZW0gLmdyYXBoaWMtaXRlbS1iZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXItMyk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7IH1cbiAgICAuZ3JhcGhpYy1pdGVtIC5ncmFwaGljLWl0ZW0tYmcgaSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAuZ3JhcGhpYy1pdGVtLXNtIHtcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbWluLXdpZHRoOiAzMnB4OyB9XG4gICAgLmdyYXBoaWMtaXRlbS1zbSAuZ3JhcGhpYy1pdGVtLWJnIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7IH1cbiAgICAgIC5ncmFwaGljLWl0ZW0tc20gLmdyYXBoaWMtaXRlbS1iZyBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG4gIC5ncmFwaGljLWl0ZW0taWxsdXN0cmF0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgbWluLWhlaWdodDogMTYwcHg7IH1cbiAgICAuZ3JhcGhpYy1pdGVtLWlsbHVzdHJhdGlvbiBzdmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBhbmltYXRpb24tbmFtZTogc2hvd1NsaWRlckljb25zO1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAwLCAwLCAxKTtcbiAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgaGVpZ2h0OiAxNjBweCAhaW1wb3J0YW50OyB9XG4gICAgICAuZ3JhcGhpYy1pdGVtLWlsbHVzdHJhdGlvbiBzdmc6Zmlyc3QtY2hpbGQge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC4yNHM7IH1cbiAgICAgIC5ncmFwaGljLWl0ZW0taWxsdXN0cmF0aW9uIHN2ZzpudGgtY2hpbGQoMikge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC4xMnM7IH1cbiAgICAgIC5ncmFwaGljLWl0ZW0taWxsdXN0cmF0aW9uIHN2ZzpudGgtY2hpbGQoMykge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzOyB9XG4gIC5ncmFwaGljLWl0ZW0tcm91bmRlZCAuZ3JhcGhpYy1pdGVtLWJnIHtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuZ3JhcGhpYy1pdGVtIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbWluLXdpZHRoOiA0MHB4OyB9XG4gICAgLmdyYXBoaWMtaXRlbSAuZ3JhcGhpYy1pdGVtLWJnIGkge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgLmdyYXBoaWMtaXRlbS1zbSB7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIG1pbi13aWR0aDogMjRweDsgfVxuICAgICAgLmdyYXBoaWMtaXRlbS1zbSAuZ3JhcGhpYy1pdGVtLWJnIGkge1xuICAgICAgICBmb250LXNpemU6IDhweDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQ29sb3JzXHJcbjEuIEJhY2tncm91bmRzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuMS4gQ29sb3JzIC0gQmFja2dyb3VuZHNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmJnLWNvbG9yLWdvbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBhZDRlOyB9XG5cbi5iZy1jb2xvci1ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7IH1cblxuLmJnLWNvbG9yLXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTUzNGY7IH1cblxuLmJnLWNvbG9yLW9yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMzljMTI7IH1cblxuLmJnLWNvbG9yLWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWJjMGRlOyB9XG5cbi5iZy1jb2xvci1waW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2NzFiODsgfVxuXG4uYmctY29sb3ItcHVycGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdiNGY5ZDsgfVxuXG4uYmctY29sb3ItbGltZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4Y2JmMjY7IH1cblxuLmJnLWNvbG9yLW1hZ2VudGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwMDk3OyB9XG5cbi5iZy1jb2xvci10ZWFsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYWJhOTsgfVxuXG4uYmctY29sb3ItdHVycXVvaXNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFhYmM5YzsgfVxuXG4uYmctY29sb3ItZW1lcmFsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWNjNzE7IH1cblxuLmJnLWNvbG9yLWFtZXRoeXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzliNTliNjsgfVxuXG4uYmctY29sb3Itd2V0LWFzcGhhbHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ0OTVlOyB9XG5cbi5iZy1jb2xvci1taWRuaWdodC1ibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjM2U1MDsgfVxuXG4uYmctY29sb3Itc3VuLWZsb3dlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWM0MGY7IH1cblxuLmJnLWNvbG9yLXBvbWVncmFuYXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MwMzkyYjsgfVxuXG4uYmctY29sb3Itc2lsdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JkYzNjNzsgfVxuXG4uYmctY29sb3ItYXNiZXN0b3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4YzhkOyB9XG5cbi5hcHAtbWFpbiB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5hcHAtbWFpbiAubWFpbi1ib2R5IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAuYXBwLW1haW4gPiAubWctaW50ZWdyYXRpb24tY29udGFpbmVyIC5sdS1hcHAtbWFpbl9fYm9keSB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQXBwIC0gTmF2aWdhdGlvblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uYXBwLW5hdiAubXktYWNjb3VudCAuYWN0aXZlLWNsaWVudCxcbi50b3AtbmF2IC5teS1hY2NvdW50IC5hY3RpdmUtY2xpZW50IHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgfVxuICAuYXBwLW5hdiAubXktYWNjb3VudCAuYWN0aXZlLWNsaWVudCAuaXRlbS10ZXh0LFxuICAudG9wLW5hdiAubXktYWNjb3VudCAuYWN0aXZlLWNsaWVudCAuaXRlbS10ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuYXBwLW5hdiAubXktYWNjb3VudCAuYWN0aXZlLWNsaWVudCBzcGFuOm5vdCguaXRlbS10ZXh0KSxcbiAgLnRvcC1uYXYgLm15LWFjY291bnQgLmFjdGl2ZS1jbGllbnQgc3Bhbjpub3QoLml0ZW0tdGV4dCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgY29sb3I6IHZhcigtLXRleHQtZmFkZWQtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG5cbi5hcHAtbmF2IC5teS1hY2NvdW50IC5kcm9wZG93bi1tZW51LFxuLnRvcC1uYXYgLm15LWFjY291bnQgLmRyb3Bkb3duLW1lbnUge1xuICBtaW4td2lkdGg6IDI0MHB4O1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG4uYXBwLW5hdiAubXktYWNjb3VudCAuZHJvcGRvd24tdG9nZ2xlLFxuLnRvcC1uYXYgLm15LWFjY291bnQgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IH1cblxuLmFwcC1uYXYgLm15LWFjY291bnQgLmNsaWVudC1hdmF0YXIgKyBpLFxuLnRvcC1uYXYgLm15LWFjY291bnQgLmNsaWVudC1hdmF0YXIgKyBpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYXBwLW5hdiAuYmFkZ2UtZG90LFxuLmFwcC1uYXYgLmJhZGdlLWljb24sXG4udG9wLW5hdiAuYmFkZ2UtZG90LFxuLnRvcC1uYXYgLmJhZGdlLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogdmFyKC0tdG9wLW5hdi1saW5rLXBhZGRpbmctdik7XG4gIGxlZnQ6IGNhbGModmFyKC0tdWktaWNvbi1zaXplLWJhc2UpIC0gMnB4KTsgfVxuXG4uYXBwLW5hdiAuYmFkZ2UtZG90LFxuLnRvcC1uYXYgLmJhZGdlLWRvdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDhweDtcbiAgd2lkdGg6IDhweDtcbiAgbWluLXdpZHRoOiA4cHg7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmFwcC1uYXYgLmJhZGdlLWRvdCA+IHNwYW4sXG4gIC50b3AtbmF2IC5iYWRnZS1kb3QgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5hcHAtbmF2IGxpIC5pdGVtLXRleHQsXG4udG9wLW5hdiBsaSAuaXRlbS10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYXBwLW5hdiBsaSAuaXRlbS10ZXh0Lml0ZW0tdGV4dC1iYWRnZSxcbiAgLnRvcC1uYXYgbGkgLml0ZW0tdGV4dC5pdGVtLXRleHQtYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5hcHAtbmF2IGxpIC5pdGVtLXRleHQuaXRlbS10ZXh0LWJhZGdlIC5iYWRnZSxcbiAgICAudG9wLW5hdiBsaSAuaXRlbS10ZXh0Lml0ZW0tdGV4dC1iYWRnZSAuYmFkZ2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgLmFwcC1uYXYgbGkgLml0ZW0tdGV4dC5pdGVtLXRleHQtYmFkZ2UgLmJhZGdlLWRvdCxcbiAgICAudG9wLW5hdiBsaSAuaXRlbS10ZXh0Lml0ZW0tdGV4dC1iYWRnZSAuYmFkZ2UtZG90IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBoZWlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IHZhcigtLWJhZGdlLXBhZGRpbmcteSkgdmFyKC0tYmFkZ2UtcGFkZGluZy14KTsgfVxuICAgICAgLmFwcC1uYXYgbGkgLml0ZW0tdGV4dC5pdGVtLXRleHQtYmFkZ2UgLmJhZGdlLWRvdCA+IHNwYW4sXG4gICAgICAudG9wLW5hdiBsaSAuaXRlbS10ZXh0Lml0ZW0tdGV4dC1iYWRnZSAuYmFkZ2UtZG90ID4gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5hcHAtbmF2IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+IGEgLml0ZW0tdGV4dC5pdGVtLXRleHQtYmFkZ2UgLmJhZGdlLFxuLnRvcC1uYXYgbGk6bm90KC5uYXYtaXRlbS10ZXh0LW9ubHkpID4gYSAuaXRlbS10ZXh0Lml0ZW0tdGV4dC1iYWRnZSAuYmFkZ2Uge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmFwcC1uYXYgbGkgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lcixcbi50b3AtbmF2IGxpIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogdmFyKC0tdWktaWNvbi1zaXplLWJhc2UpO1xuICBoZWlnaHQ6IHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKTsgfVxuICAuYXBwLW5hdiBsaSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lci1zdmcsXG4gIC50b3AtbmF2IGxpIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyLXN2ZyB7XG4gICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpOyB9XG4gIC5hcHAtbmF2IGxpIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiAuYmFkZ2UtZG90LFxuICAudG9wLW5hdiBsaSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmJhZGdlLWRvdCB7XG4gICAgaGVpZ2h0OiA3cHg7XG4gICAgd2lkdGg6IDdweDtcbiAgICBtaW4td2lkdGg6IDdweDtcbiAgICB0b3A6IC0xcHg7XG4gICAgb3V0bGluZS1jb2xvcjogdmFyKC0tYXBwLW5hdi10b3AtYmcpO1xuICAgIG91dGxpbmUtd2lkdGg6IDFweDtcbiAgICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgICBvdXRsaW5lLW9mZnNldDogMHB4O1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgbGVmdDogdW5zZXQ7IH1cbiAgLmFwcC1uYXYgbGkgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IHN2ZyArIC5iYWRnZS1kb3QsXG4gIC50b3AtbmF2IGxpIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBzdmcgKyAuYmFkZ2UtZG90IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgbWluLXdpZHRoOiAxMnB4O1xuICAgIHRvcDogLTJweDtcbiAgICByaWdodDogMXB4O1xuICAgIGxlZnQ6IHVuc2V0OyB9XG5cbi5hcHAtbmF2IGxpIC5pdGVtLXRleHQuaXRlbS10ZXh0LWJhZGdlID4gLmJhZGdlLWRvdCxcbi50b3AtbmF2IGxpIC5pdGVtLXRleHQuaXRlbS10ZXh0LWJhZGdlID4gLmJhZGdlLWRvdCB7XG4gIGhlaWdodDogNnB4O1xuICB3aWR0aDogNnB4O1xuICBtaW4td2lkdGg6IDZweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmFwcC1uYXYgLm5hdi1pdGVtLWljb24tb25seSAuaXRlbS10ZXh0LFxuICAubWFpbi10b3AgLm5hdi1pdGVtLWljb24tb25seSAuaXRlbS10ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkFwcCAtIE5hdmlnYXRpb24gSGVhZGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5hcHAtbmF2LWhlYWRlciAubG9nbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmFwcC1uYXYtaGVhZGVyIC5sb2dvIGltZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxvZ28taGVpZ2h0KTtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWFwcC1uYXYtbG9nby13aWR0aCk7IH1cbiAgLmFwcC1uYXYtaGVhZGVyIC5sb2dvLXRleHQge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1heC13aWR0aDogMjgwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmFwcC1uYXYtaGVhZGVyIC5hcHAtbmF2LXRvZ2dsZSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0xeCkpOyB9XG4gIC5hcHAtbmF2LWhlYWRlciAuYXBwLW5hdi10b2dnbGU6aG92ZXIsIC5hcHAtbmF2LWhlYWRlciAuYXBwLW5hdi10b2dnbGU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmFwcC1uYXYtaGVhZGVyIC5hcHAtbmF2LXRvZ2dsZTpob3ZlciAuaWNvbi1iYXIsIC5hcHAtbmF2LWhlYWRlciAuYXBwLW5hdi10b2dnbGU6Zm9jdXMgLmljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtaWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgLmFwcC1uYXYtaGVhZGVyIC5hcHAtbmF2LXRvZ2dsZSAuaWNvbi1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtaWNvbi1jb2xvcik7IH1cblxuLmFwcC1uYXYtaGVhZGVyIC50b3AtbmF2IC5kcm9wZG93bi5kcm9wZG93bi1tZW51LWhvdmVyIC5kcm9wZG93bi1tZW51LWZpbGxlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IHVuc2V0O1xuICB3aWR0aDogMjAwcHg7XG4gIHRvcDogMTAwJTtcbiAgaGVpZ2h0OiAxNHB4O1xuICB6LWluZGV4OiAxMDAwOyB9XG5cbi5hcHAtbmF2LWhlYWRlciAudG9wLW5hdiAuZHJvcGRvd24uZHJvcGRvd24tbWVudS1ob3ZlciAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1tZW51LXJpZ2h0ICsgLmRyb3Bkb3duLW1lbnUtZmlsbGVyIHtcbiAgbGVmdDogdW5zZXQ7XG4gIHJpZ2h0OiAwOyB9XG5cbi5hcHAtbmF2LWhlYWRlciAudG9wLW5hdiAuZHJvcGRvd24uZHJvcGRvd24tbWVudS1ob3ZlciAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzICsgLmRyb3Bkb3duLW1lbnUtZmlsbGVyIHtcbiAgcmlnaHQ6IHVuc2V0O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMTYwcHg7XG4gIHdpZHRoOiAzMjBweDsgfVxuXG4uYXBwLW5hdi1oZWFkZXIgLnRvcC1uYXYgLmRyb3Bkb3duLmRyb3Bkb3duLW1lbnUtaG92ZXIubXktYWNjb3VudCAuZHJvcGRvd24tbWVudS1maWxsZXIge1xuICB3aWR0aDogMjQwcHg7XG4gIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4uYXBwLW5hdi1oZWFkZXIgLnRvcC1uYXYgLmRyb3Bkb3duLmRyb3Bkb3duLW1lbnUtaG92ZXJbZGF0YS1sYW5ndWFnZS1zZWxlY3RdIC5kcm9wZG93bi1tZW51LWZpbGxlciB7XG4gIHdpZHRoOiAyNTBweDsgfVxuXG4uYXBwLW5hdi1oZWFkZXIgLnRvcC1uYXYgLmRyb3Bkb3duOm5vdCguc2hvdyk6bm90KC5zZkhvdmVyKS5kcm9wZG93bi1tZW51LWhvdmVyIC5kcm9wZG93bi1tZW51LWZpbGxlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmFwcC1uYXYtaGVhZGVyIC50b3AtbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgdG9wOiBjYWxjKDEwMCUgKyAxNHB4KTsgfVxuXG4uYXBwLW5hdi1oZWFkZXIgLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuYXBwLW5hdi1oZWFkZXIgLmNvbnRhaW5lcjpiZWZvcmUsIC5hcHAtbmF2LWhlYWRlciAuY29udGFpbmVyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEFwcCBIZWFkZXIgb24gTW9iaWxlcyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIGJvZHkge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tb2ItYXBwLW5hdi1oZWFkZXItaGVpZ2h0KSAhaW1wb3J0YW50OyB9XG4gIC5hcHAtbmF2LWhlYWRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IHZhcigtLXppbmRleC1uYXZiYXItZml4ZWQpO1xuICAgIGhlaWdodDogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWJnKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1tb2ItYXBwLW5hdi1oZWFkZXItYm94LXNoYWRvdyk7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWJvcmRlci1ib3R0b20pOyB9XG4gICAgLmFwcC1uYXYtaGVhZGVyIC5sb2dvIGltZyB7XG4gICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1tb2ItYXBwLW5hdi1sb2dvLWhlaWdodCk7IH1cbiAgICAgIC5hcHAtbmF2LWhlYWRlciAubG9nbyBpbWdbc3JjJD1cInBuZ1wiXSwgLmFwcC1uYXYtaGVhZGVyIC5sb2dvIGltZ1tzcmMkPVwianBnXCJdIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5hcHAtbmF2LWhlYWRlciB7XG4gICAgbWluLWhlaWdodDogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7IH1cbiAgLmxhZ29tOm5vdCgucGFnZS1sYWdvbS1jbXMpIC5hcHAtbmF2LWhlYWRlciAuY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IHZhcigtLW1vYi1hcHAtbmF2LWhlYWRlci1oZWlnaHQpOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wOm5vdCgubGFnb20tbGF5b3V0LWxlZnQpIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtaGVhZGVyLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZTpub3QoLmxhZ29tLWxheW91dC1sZWZ0KSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LWhlYWRlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1iZy1oKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wOm5vdCgubGFnb20tbGF5b3V0LWxlZnQpIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtaGVhZGVyIC5hcHAtbmF2LXRvZ2dsZSAuaWNvbi1iYXIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGU6bm90KC5sYWdvbS1sYXlvdXQtbGVmdCkgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1oZWFkZXIgLmFwcC1uYXYtdG9nZ2xlIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wOm5vdCgubGFnb20tbGF5b3V0LWxlZnQpIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1oZWFkZXIsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlOm5vdCgubGFnb20tbGF5b3V0LWxlZnQpIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1oZWFkZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZy1oKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wOm5vdCgubGFnb20tbGF5b3V0LWxlZnQpIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1oZWFkZXIgLmFwcC1uYXYtdG9nZ2xlIC5pY29uLWJhcixcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZTpub3QoLmxhZ29tLWxheW91dC1sZWZ0KSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtaGVhZGVyIC5hcHAtbmF2LXRvZ2dsZSAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuYXBwLW5hdi1oZWFkZXIgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmFwcC1uYXYtaGVhZGVyIC5jb250YWluZXIgLnRvcC1uYXYgW21lbnVpdGVtbmFtZT1cIk5vdGlmaWNhdGlvbnNcIl0ge1xuICAgICAgcG9zaXRpb246IHN0YXRpYzsgfVxuICAgICAgLmFwcC1uYXYtaGVhZGVyIC5jb250YWluZXIgLnRvcC1uYXYgW21lbnVpdGVtbmFtZT1cIk5vdGlmaWNhdGlvbnNcIl0gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBsZWZ0OiB2YXIoLS1sYXlvdXQtY29udGFpbmVyLWd1dHRlcik7XG4gICAgICAgIHJpZ2h0OiB2YXIoLS1sYXlvdXQtY29udGFpbmVyLWd1dHRlcik7XG4gICAgICAgIHdpZHRoOiB1bnNldDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQXBwIC0gTmF2aWdhdGlvbiBNZW51XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5hcHAtbmF2LW1lbnUgLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLFxuICAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhID4gLmxzLFxuICAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhID4gLmxtIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC5hcHAtbmF2LW1lbnUgLm1lbnUtcmlnaHQge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBpLFxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBzdmcsXG4uYXBwLW5hdi1tZW51IC5tZW51ID4gbGkubmF2LWl0ZW0tdGV4dC1vbmx5ID4gYSA+IGltZyxcbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5uYXYtaXRlbS10ZXh0LW9ubHkgPiBhID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5iYWRnZSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuXG4uYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBkaXYuZHJvcGRvd24tbWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBpLFxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gZGl2LmRyb3Bkb3duLW1lbnUgPiBsaS5uYXYtaXRlbS10ZXh0LW9ubHkgPiBhID4gc3ZnLFxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gZGl2LmRyb3Bkb3duLW1lbnUgPiBsaS5uYXYtaXRlbS10ZXh0LW9ubHkgPiBhID4gaW1nLFxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gdWwuZHJvcGRvd24tbWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBpLFxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gdWwuZHJvcGRvd24tbWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBzdmcsXG4uYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiB1bC5kcm9wZG93bi1tZW51ID4gbGkubmF2LWl0ZW0tdGV4dC1vbmx5ID4gYSA+IGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gZGl2LmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBpLFxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gZGl2LmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBzdmcsXG4uYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBkaXYuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0ubmF2LWl0ZW0tdGV4dC1vbmx5ID4gYSA+IGltZyxcbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IHVsLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBpLFxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gdWwuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0ubmF2LWl0ZW0tdGV4dC1vbmx5ID4gYSA+IHN2Zyxcbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IHVsLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtLm5hdi1pdGVtLXRleHQtb25seSA+IGEgPiBpbWcge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGRpdi5kcm9wZG93bi1tZW51ID4gbGkubmF2LWhlYWRlcixcbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IHVsLmRyb3Bkb3duLW1lbnUgPiBsaS5uYXYtaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy0zeCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cblxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gZGl2LmRyb3Bkb3duLW1lbnUgPiBsaTpub3QoLmRyb3Bkb3duLWhlYWRlcikgKyAubmF2LWhlYWRlcixcbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IHVsLmRyb3Bkb3duLW1lbnUgPiBsaTpub3QoLmRyb3Bkb3duLWhlYWRlcikgKyAubmF2LWhlYWRlciB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGRpdi5kcm9wZG93bi1tZW51ID4gbGkuZHJvcGRvd24taGVhZGVyICsgLm5hdi1oZWFkZXIsXG4uYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiB1bC5kcm9wZG93bi1tZW51ID4gbGkuZHJvcGRvd24taGVhZGVyICsgLm5hdi1oZWFkZXIge1xuICBtYXJnaW4tdG9wOiAtNHB4OyB9XG5cbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCB1bC5kcm9wZG93bi1tZW51IC5uYXYtaXRlbS1pY29uLW9ubHkgPiBhIC5tZW51LWl0ZW0tY29udGVudCxcbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCBkaXYuZHJvcGRvd24tbWVudSAubmF2LWl0ZW0taWNvbi1vbmx5ID4gYSAubWVudS1pdGVtLWNvbnRlbnQsIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIHVsLmRyb3Bkb3duLW1lbnUgLm5hdi1pdGVtLWljb24tb25seSA+IGEgLm1lbnUtaXRlbS1jb250ZW50LFxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgZGl2LmRyb3Bkb3duLW1lbnUgLm5hdi1pdGVtLWljb24tb25seSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCB1bC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIGkge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDZweDsgfVxuXG4uYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgdWwuZHJvcGRvd24tbWVudSA+IGxpID4gYSBpbWcge1xuICBoZWlnaHQ6IHVuc2V0OyB9XG5cbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCB1bC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5tZW51LWl0ZW0tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIHVsLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tdGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCB1bC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2Mge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcbiAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgdWwuZHJvcGRvd24tbWVudSA+IGxpID4gYSAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS1kZXNjIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCB1bC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmhvdmVyIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLXRpdGxlLCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgdWwuZHJvcGRvd24tbWVudSA+IGxpID4gYTpmb2N1cy12aXNpYmxlIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpOyB9XG5cbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCB1bC5kcm9wZG93bi1tZW51ID4gbGkubmF2LWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctM3gpIHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCB1bC5kcm9wZG93bi1tZW51ID4gbGkgLmJhZGdlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5sYWJlbCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuXG4uYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UgPiBsaSA+IGEgaSwgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWNvbGxhcHNlID4gbGkgPiBhIHN2ZywgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWNvbGxhcHNlID4gbGkgPiBhIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIHVsLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tZGVzYyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIHVsLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tdGl0bGUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIHVsLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tdGl0bGUge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTsgfVxuXG4ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgdWwuZHJvcGRvd24tbWVudSA+IGxpID4gYTpob3ZlciAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS10aXRsZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgdWwuZHJvcGRvd24tbWVudSA+IGxpID4gYTpob3ZlciAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS10aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTmF2aWdhdGlvbiBNZW51IG9uIE1vYmlsZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmVtYWlsLXZlcmlmaWNhdGlvbixcbiAgLmN1c3RvbS1pbnRlZ3JhdGlvbixcbiAgLmFwcC1oZWFkZXIsXG4gIC5hcHAtbWFpbixcbiAgLmFwcC1uYXYsXG4gIC5hcHAtbmF2LWhlYWRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgLmFwcC1uYXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDAxOyB9XG4gIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRvcDogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIG1hcmdpbjogMCB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LW1hcmdpbi1oKTtcbiAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbmF2YmFyLWZpeGVkKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYygyKiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LW1hcmdpbi1oKSkpO1xuICAgIHBhZGRpbmc6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtcGFkZGluZy12KSB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LXBhZGRpbmctaCk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1ib3gtc2hhZG93KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWJnKTtcbiAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1iZy1maWx0ZXIpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1iZy1maWx0ZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtYm9yZGVyLXJhZGl1cyk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDE1MHB4KTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSA+IC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLmxvZ28ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSB7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGk6bm90KC5kcm9wZG93bikge1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpub3QoLmRyb3Bkb3duKS5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtYmctYWN0aXZlKTsgfVxuICAgICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpub3QoLmRyb3Bkb3duKS5hY3RpdmUgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0IHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAgICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpub3QoLmRyb3Bkb3duKS5hY3RpdmUgPiBhOm5vdCguYnRuKSAubHMubHMtY2FyZXQge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2hvdzpub3QoLm5hdi1pdGVtLXNob3ctbWQpID4gYSAuaXRlbS10ZXh0LCAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGk6aG92ZXI6bm90KC5uYXYtaXRlbS1zaG93LW1kKSA+IGEgLml0ZW0tdGV4dCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2hvdzpub3QoLm5hdi1pdGVtLXNob3ctbWQpID4gYSAubHMubHMtY2FyZXQsIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpob3Zlcjpub3QoLm5hdi1pdGVtLXNob3ctbWQpID4gYSAubHMubHMtY2FyZXQge1xuICAgICAgICBjb2xvcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5tb2JpbGUtZGl2aWRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXItMik7XG4gICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNHgpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5tb2JpbGUtZGl2aWRlciA+IGEge1xuICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctYmFzZSk7IH1cbiAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGEuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1wYWRkaW5nLXYpIHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1wYWRkaW5nLWgpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1mb250LXNpemUpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWZvbnQtd2VpZ2h0KTsgfVxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tY29sb3IpOyB9XG4gICAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tc2l6ZSk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBzdmcgKyAuaXRlbS10ZXh0LFxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGltZyArIC5pdGVtLXRleHQsXG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSArIC5pdGVtLXRleHQsXG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciArIC5pdGVtLXRleHQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmctbGcpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gc3ZnLFxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LXN2Zy1pY29uLXNpemUpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLml0ZW0tdGV4dCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstY29sb3IpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLmxzLmxzLWNhcmV0IHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1jYXJldC1jb2xvcik7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYS5idG4ge1xuICAgICAgICBtYXJnaW46IHZhcigtLXNwYWNpbmctMngpIHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGk6bm90KC5zaG93KSAuZHJvcGRvd24tbWVudS1hcnJvdyB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saXN0LWJveC1zaGFkb3cpO1xuICAgICAgICBtYXJnaW46IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGlzdC1wYWRkaW5nLXYpIHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGlzdC1wYWRkaW5nLWgpO1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1hcnJvdy1ib3gge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IC0xNnB4O1xuICAgICAgICAgIGxlZnQ6IDUwJTsgfVxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtYXJyb3cge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpc3QtYmcpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tYmFzZSkgdmlzaWJpbGl0eSB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE0cyBlYXNlOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLnNob3cpIHtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1ib2R5ID4gLmRyb3Bkb3duLW1lbnUtY29udGVudCA+IGRpdjpub3QoLmRyb3Bkb3duLW1lbnUtcGFyZW50KSBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLW5hdi1kaXZpZGVyLW1hcmdpbi15KTsgfVxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1ib2R5ID4gLmRyb3Bkb3duLW1lbnUtY29udGVudCA+IGRpdjpub3QoLmRyb3Bkb3duLW1lbnUtcGFyZW50KSBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbmF2LWRpdmlkZXItbWFyZ2luLXkpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1wYXJlbnQgLm5hdi1oZWFkZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGlzdC1iZyk7IH1cbiAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXBhcmVudDpmaXJzdC1jaGlsZCAubmF2LWhlYWRlciB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSBsaSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saXN0LWJnKTsgfVxuICAgICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSBsaS5uYXYtZGl2aWRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLW5hdi1kaXZpZGVyLW1hcmdpbi15KSAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgbGkubmF2LWRpdmlkZXI6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRyb3Bkb3duLWRpdmlkZXItYmcpOyB9XG4gICAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IGxpLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWFjdGl2ZS1iZyk7IH1cbiAgICAgICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSBsaS5hY3RpdmUgPiBhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2Mge1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7IH1cbiAgICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgbGkgPiBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1iZyk7XG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstbGlzdC1wYWRkaW5nLXYpIHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1saXN0LXBhZGRpbmctaCk7IH1cbiAgICAgICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSBsaSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg1KTsgfVxuICAgICAgICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgbGkgPiBhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2Mge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7IH1cbiAgICAgICAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IGxpID4gYSAubWVudS1pdGVtLWNvbnRlbnQgLmxhYmVsLmxhYmVsLWRlZmF1bHQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KTsgfVxuICAgICAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IGxpID4gYSA+IHN2ZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LXN2Zy1pY29uLXNpemUpO1xuICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtc3ZnLWljb24tc2l6ZSk7IH1cbiAgICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgbGkgPiAubmF2LWhlYWRlci1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1saXN0LXBhZGRpbmctdikgdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWxpc3QtcGFkZGluZy1oKTsgfVxuICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAubmF2LWhlYWRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWxpc3QtcGFkZGluZy12KSB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstbGlzdC1wYWRkaW5nLWgpOyB9XG4gICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3Qge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgZmxleC1iYXNpczogMDsgfVxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgPiBpIHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc2l6ZS1zbSk7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgLm1lbnUtaXRlbS1jb250ZW50Lmhhcy1kZXNjIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlczsgfVxuICAgICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtID4gYSAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS1kZXNjIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7IH0gfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tZGVzYyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LXNpZGViYXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1jb250ZW50IHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saXN0LXNpZGViYXItYmcpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3gpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpOyB9XG4gICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxODBweDtcbiAgICAgICAgICB3aWR0aDogMTgwcHg7IH1cbiAgICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWdyYXBoaWMucHJlZGVmaW5lZC1ncmFwaGljIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGhlaWdodDogNzJweDsgfVxuICAgICAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1ncmFwaGljLnByZWRlZmluZWQtZ3JhcGhpYyAucHJvbW8tc2xpZGVyLWljb24ge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDcycHg7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3duIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyA+IGltZyxcbiAgICAgICAgICAubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWdyYXBoaWMgPiBzdmcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgLm5hdi1tb2JpbGUtZHJvcGRvd24gLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1ncmFwaGljICsgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1kZXNjIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpOyB9XG4gIC5sYWdvbS5tZW51LW9wZW4ubmF2LW1vYmlsZS1kcm9wZG93biAuYXBwLW5hdi1tZW51IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdG9wOiBjYWxjKHZhcigtLW1vYi1hcHAtbmF2LWhlYWRlci1oZWlnaHQpICsgdmFyKC0tc3BhY2luZy0yeCkpOyB9XG4gIC5sYWdvbS5tZW51LW9wZW46bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgLmxhZ29tLm1lbnUtb3Blbjpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5lbWFpbC12ZXJpZmljYXRpb24sXG4gIC5sYWdvbS5tZW51LW9wZW46bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSA+IC5jdXN0b20taW50ZWdyYXRpb24sXG4gIC5sYWdvbS5tZW51LW9wZW46bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLWhlYWRlcixcbiAgLmxhZ29tLm1lbnUtb3Blbjpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LWhlYWRlcixcbiAgLmxhZ29tLm1lbnUtb3Blbjpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbWFpbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLW1vYi1hcHAtbmF2LXdpZHRoKSk7IH1cbiAgLmxhZ29tLm1lbnUtb3Blbjpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbWFpbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmxhZ29tLm1lbnUtb3Blbjpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbWFpbjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAxMDAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1ob3Jpem9udGFsIC5kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGVmdDogdW5zZXQ7XG4gICAgcmlnaHQ6IC04MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gICAgb3ZlcmZsb3cteTogdW5zZXQgIWltcG9ydGFudDsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1ob3Jpem9udGFsIC5kcm9wZG93bi1tZW51LmRyb3Bkb3duLW1lbnUtLWZpeGVkIHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gY2FsYygyKiB2YXIoLS1sYXlvdXQtY29udGFpbmVyLWd1dHRlcikpKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1ob3Jpem9udGFsIC5kcm9wZG93bi1tZW51ID4gbGkge1xuICAgICAgd2lkdGg6IGNhbGMoY2FsYyh2YXIoLS1jb250YWluZXIteGwtbWF4LXdpZHRoKSAtIHZhcigtLWxheW91dC1jb250YWluZXItZ3V0dGVyKSkvNCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1ob3Jpem9udGFsIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg1KTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDUpO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTR4KTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1ob3Jpem9udGFsIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhID4gc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWhvcml6b250YWwgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6aG92ZXIsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1ob3Jpem9udGFsIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNFRUYzRkY7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXNlY29uZGFyeSk7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWhvcml6b250YWwgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWhvcml6b250YWwgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLm1lbnUtaXRlbS1kZXNjIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1ob3Jpem9udGFsIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24taG9yaXpvbnRhbCAuZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1ob3Jpem9udGFsIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHN2ZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgPiBzdmcsXG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCAuZHJvcGRvd24tbWVudSA+IGxpID4gYSA+IGltZyxcbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGEgPiBzdmcsXG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhID4gaW1nLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudSA+IGxpID4gYSA+IHN2ZyxcbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgPiBpbWcsXG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGEgPiBzdmcsXG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGEgPiBpbWcge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1kcm9wZG93bi1pY29uLXNpemUpO1xuICAgIG1pbi13aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1kcm9wZG93bi1pY29uLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1kcm9wZG93bi1pY29uLXNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIGltZyxcbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGEgaW1nLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudSA+IGxpID4gYSBpbWcsXG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGEgaW1nIHtcbiAgICBoZWlnaHQ6IHVuc2V0OyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZC5kcm9wZG93bi1leHRlbmRlZC1yaWdodCAuZHJvcGRvd24tbWVudSB7XG4gICAgcmlnaHQ6IGNhbGMoLTEqIHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy1oKSk7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCAuZHJvcGRvd24tbWVudSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgMDtcbiAgICBtaW4td2lkdGg6IHZhcigtLWV4dGVuZGVkLW5hdi1kcm9wZG93bi13aWR0aCk7IH1cbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tbWVudS1jb2xsYXBzZSB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgIHBhZGRpbmc6IDZweCAwOyB9XG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMngpIHZhcigtLXNwYWNpbmctNHgpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6aG92ZXIsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZXh0ZW5kZWQtbmF2LWxpbmstaG92ZXItYmcpO1xuICAgICAgICBjb2xvcjogdmFyKC0tZXh0ZW5kZWQtbmF2LWxpbmstaG92ZXItY29sb3IpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctNHgpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2Mge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1tZW51LWNvbGxhcHNlID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tbWVudS1jb2xsYXBzZSA+IGxpID4gYTpob3ZlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1tZW51LWNvbGxhcHNlID4gbGkgPiBhIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tbWVudS1jb2xsYXBzZSA+IGxpID4gYSAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS1kZXNjIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIGxpLm5hdi1oZWFkZXItY29sbGFwc2UgLm5hdi1oZWFkZXItaXRlbTpob3ZlciA+IC5pdGVtLWhlYWRlci10ZXh0ID4gaSxcbiAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1leHRlbmRlZCBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIgPiBiLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgbGkubmF2LWhlYWRlci1jb2xsYXBzZSAubmF2LWhlYWRlci1pdGVtOmZvY3VzLXZpc2libGUgPiAuaXRlbS1oZWFkZXItdGV4dCA+IGksXG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgbGkubmF2LWhlYWRlci1jb2xsYXBzZSAubmF2LWhlYWRlci1pdGVtOmZvY3VzLXZpc2libGUgPiBiIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgbGkubmF2LWhlYWRlci1jb2xsYXBzZSAubmF2LWhlYWRlci1pdGVtIHN2ZyB7XG4gICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1kcm9wZG93bi1pY29uLXNpemUpO1xuICAgICAgbWluLXdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWRyb3Bkb3duLWljb24tc2l6ZSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtZHJvcGRvd24taWNvbi1zaXplKTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgbGkubmF2LWhlYWRlci1jb2xsYXBzZSAuZHJvcGRvd24tbWVudSB7XG4gICAgbWFyZ2luOiAwIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKSB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tZXh0ZW5kZWQgbGkubmF2LWhlYWRlci1jb2xsYXBzZTpsYXN0LWNoaWxkIC5kcm9wZG93bi1tZW51IHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSB7XG4gICAgcG9zaXRpb246IHN0YXRpYzsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGxlZnQ6IHZhcigtLWxheW91dC1jb250YWluZXItZ3V0dGVyKTtcbiAgICAgIHJpZ2h0OiB2YXIoLS1sYXlvdXQtY29udGFpbmVyLWd1dHRlcik7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTN4KSB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtcGFyZW50IHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmbGV4LWJhc2lzOiAwOyB9XG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1ib2R5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWNvbHMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAubmF2LWhlYWRlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWhlYWRlci1jb2xvcik7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgICAgICAgcGFkZGluZzogdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLXYpIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWl0ZW0gKyAubmF2LWhlYWRlciB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICBtaW4td2lkdGg6IDE4MHB4OyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhID4gaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc2l6ZS1zbSk7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgLm1lbnUtaXRlbS1jb250ZW50Lmhhcy1kZXNjIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tdGl0bGUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyB9XG4gICAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tZGVzYyB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyB9IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtID4gYSAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS1kZXNjIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtaXRlbSAuZHJvcGRvd24tbWVudS1wYXJlbnQgYSAubWVudS1pdGVtLXRpdGxlIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1oZWFkZXItY29sb3IpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtaXRlbSAuZHJvcGRvd24tbWVudS1wYXJlbnQgYTpob3ZlciAubWVudS1pdGVtLXRpdGxlLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWl0ZW0gLmRyb3Bkb3duLW1lbnUtcGFyZW50IGE6Zm9jdXMtdmlzaWJsZSAubWVudS1pdGVtLXRpdGxlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1pdGVtIC5kcm9wZG93bi1tZW51LXBhcmVudDpoYXMoZGl2Lm5hdi1oZWFkZXIpIGEgLm1lbnUtaXRlbS10aXRsZSB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1pdGVtIC5kcm9wZG93bi1tZW51LXBhcmVudDpoYXMoZGl2Lm5hdi1oZWFkZXIpIGE6aG92ZXIgLm1lbnUtaXRlbS10aXRsZSwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1pdGVtIC5kcm9wZG93bi1tZW51LXBhcmVudDpoYXMoZGl2Lm5hdi1oZWFkZXIpIGE6Zm9jdXMtdmlzaWJsZSAubWVudS1pdGVtLXRpdGxlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LXNpZGViYXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy0zeCkgdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy00eCk7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1jb250ZW50IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDI3NnB4O1xuICAgICAgICAgIHdpZHRoOiAyNzZweDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1ncmFwaGljLnByZWRlZmluZWQtZ3JhcGhpYyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGhlaWdodDogNzJweDsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYy5wcmVkZWZpbmVkLWdyYXBoaWMgLnByb21vLXNsaWRlci1pY29uIHtcbiAgICAgICAgICAgIGhlaWdodDogNzJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWdyYXBoaWMgPiBpbWcsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyA+IHN2ZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyArIC5kcm9wZG93bi1tZW51LXNpZGViYXItZGVzYyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2cHg7IH1cbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW0gLm5hdi1oZWFkZXItdGV4dCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIGxpLm5hdi1oZWFkZXItY29sbGFwc2UgLm5hdi1oZWFkZXItaXRlbSAubHMtY2FyZXQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7IH1cbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIGxpICsgbGkubmF2LWhlYWRlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMTJweDsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkubmF2LWl0ZW0taWNvbi1vbmx5IC5iYWRnZTpub3QoLmJhZGdlLWRvdCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGModmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctdikgKyA2cHgpO1xuICAgIHJpZ2h0OiBjYWxjKHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLWgpIC0gMTNweCk7IH0gfVxuXG4ubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1vbmx5LWxvZ28gLmFwcC1uYXYtbWVudSA+IC5jb250YWluZXIge1xuICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtdG9wLmxhZ29tLWxheW91dC1jb25kZW5zZWQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLWljb24tb25seSAuYmFkZ2U6bm90KC5iYWRnZS1kb3QpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy12KSArIDZweCk7XG4gICAgcmlnaHQ6IGNhbGModmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpIC0gMTNweCk7IH0gfVxuXG4uYXBwLW5hdi1vbmx5LWxvZ28gLmFwcC1uYXYtaGVhZGVyID4gLmNvbnRhaW5lcixcbi5hcHAtbmF2LW9ubHktbG9nbyAuYXBwLW5hdi1tZW51ID4gLmNvbnRhaW5lciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFwcC1uYXYtb25seS1sb2dvIC5hcHAtbmF2LWhlYWRlciA+IC5jb250YWluZXIgPiAqOm5vdCgubG9nbyksXG4gIC5hcHAtbmF2LW9ubHktbG9nbyAuYXBwLW5hdi1tZW51ID4gLmNvbnRhaW5lciA+ICo6bm90KC5sb2dvKSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYXBwLW5hdi1vbmx5LWxvZ28gLmFwcC1uYXYtaGVhZGVyID4gLmNvbnRhaW5lciAubG9nbyxcbiAgLmFwcC1uYXYtb25seS1sb2dvIC5hcHAtbmF2LW1lbnUgPiAuY29udGFpbmVyIC5sb2dvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gQm9keVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ubm8tdHJhbnNpdGlvbiAqLCAubm8tdHJhbnNpdGlvbiAudGlsZSB7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubWFpbi1ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiB2YXIoLS1tYWluLWJvZHktcGFkZGluZy12KSAwOyB9XG4gIC5tYWluLWJvZHkuaGFzLWJhbm5lciB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5tYWluLWJvZHkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBCb2R5IFNpZGViYXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhZ2UtbG9naW4gLm1haW4tYm9keS5tYWluLWJvZHktaGFzLXNpZGViYXIgKyBwW3N0eWxlPVwidGV4dC1hbGlnbjpjZW50ZXI7XCJdIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogNHB4O1xuICBib3gtc2hhZG93OiB2YXIoLS1sb2dpbi1ib3gtc2hhZG93KTtcbiAgbGVmdDogY2FsYyg1MCUgLSB2YXIoLS1tYWluLWJvZHktc2lkZWJhci13aWR0aCkgLSA0MHB4KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS5tYWluLWJvZHktaGFzLXNpZGViYXIgKyBwW3N0eWxlPVwidGV4dC1hbGlnbjpjZW50ZXI7XCJdIHtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gdmFyKC0tbWFpbi1ib2R5LXNpZGViYXItd2lkdGgpICsgMTE1cHgpOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS5tYWluLWJvZHktaGFzLXNpZGViYXIgKyBwW3N0eWxlPVwidGV4dC1hbGlnbjpjZW50ZXI7XCJdIHtcbiAgICAgIGxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gIC5wYWdlLWxvZ2luLnJlZ2lzdGVyLXBhZ2UgLm1haW4tYm9keS5tYWluLWJvZHktaGFzLXNpZGViYXIgKyBwW3N0eWxlPVwidGV4dC1hbGlnbjpjZW50ZXI7XCJdIHtcbiAgICBsZWZ0OiAwOyB9IH1cblxuLm1haW4tYm9keS1oYXMtc2lkZWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoOyB9XG4gIC5tYWluLWJvZHktaGFzLXNpZGViYXItcmlnaHQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWFpbi1ib2R5LWhhcy1zaWRlYmFyIC5tYWluLWJvZHktY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tbWFpbi1ib2R5LXNpZGViYXItd2lkdGgpKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1tYWluLWJvZHktc2lkZWJhci1wYWRkaW5nLXYpIHZhcigtLW1haW4tYm9keS1zaWRlYmFyLXBhZGRpbmctaCk7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG5cbi5tYWluLWJvZHktc2lkZWJhciB7XG4gIHdpZHRoOiB2YXIoLS1tYWluLWJvZHktc2lkZWJhci13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLW1haW4tYm9keS1zaWRlYmFyLXBhZGRpbmctdikgdmFyKC0tbWFpbi1ib2R5LXNpZGViYXItcGFkZGluZy1oKTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tYWluLWJvZHktc2lkZWJhcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5tYWluLWJvZHktc2lkZWJhciAuc2lkZWJhci1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG87IH1cbiAgLm1haW4tYm9keS1zaWRlYmFyIC5zaWRlYmFyLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tYWluLWJvZHktc2lkZWJhci1wYWRkaW5nLXYpOyB9XG4gIC5tYWluLWJvZHktc2lkZWJhciAuc2lkZWJhci1uZXdzLWRhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG4gIC5tYWluLWJvZHktc2lkZWJhciAuc2lkZWJhci1uZXdzLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuICAubWFpbi1ib2R5LXNpZGViYXIgLnNpZGViYXItbmV3cy1kZXNjLFxuICAubWFpbi1ib2R5LXNpZGViYXIgLnNpZGViYXItbmV3cy1kZXNjIHAge1xuICAgIG1hcmdpbjogMDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBHcmlkXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5tYWluLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tYWluLWdyaWQucm93IHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLm1haW4tZ3JpZDpoYXMoLnN0b3JlLW9yZGVyLWNvbnRhaW5lcikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gQ29udGVudFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ubWFpbi1jb250ZW50IHtcbiAgZmxleDogMTsgfVxuXG4vKiBGb3Igc2NyZWVucyBhYm92ZSA5OTJweCBPTkxZICovXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc3VwcG9ydHRpY2tldHN1Ym1pdC1zdGVwdHdvIC5tYWluLWdyaWQge1xuICAgIGNvbHVtbi1nYXA6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpOyB9XG4gICAgLnBhZ2Utc3VwcG9ydHRpY2tldHN1Ym1pdC1zdGVwdHdvIC5tYWluLWdyaWQ6aGFzKC5vcGVuLXRpY2tldC1mb3JtKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgICAucGFnZS1zdXBwb3J0dGlja2V0c3VibWl0LXN0ZXB0d28gLm1haW4tZ3JpZCAubWFpbi1zaWRlYmFyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQgLm1haW4tY29udGVudC5tYWluLWNvbnRlbnQtbS13LFxuICAubGFnb20tbGF5b3V0LXRvcCAubWFpbi1jb250ZW50Lm1haW4tY29udGVudC1tLXcge1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKHZhcigtLW1haW4tc2lkZWJhci1sZy13aWR0aCkgKiAwLjgpIC0gdmFyKC0tbWFpbi1zaWRlYmFyLXNwYWNpbmctaCkpOyB9XG4gIGJvZHk6bm90KC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlKSAubWFpbi1zaWRlYmFyICsgLm1haW4tY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAodmFyKC0tbWFpbi1zaWRlYmFyLXdpZHRoKSAqIDAuOCArIHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpKSk7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTMyMHB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5tYWluLWNvbnRlbnQubWFpbi1jb250ZW50LW0tdyxcbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5tYWluLWNvbnRlbnQubWFpbi1jb250ZW50LW0tdyxcbiAgLmxhZ29tLWxheW91dC10b3AgLm1haW4tY29udGVudC5tYWluLWNvbnRlbnQtbS13IHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1haW4tc2lkZWJhci1sZy13aWR0aCkgLSB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKSk7IH1cbiAgYm9keTpub3QoLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUpIC5tYWluLXNpZGViYXIgKyAubWFpbi1jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICh2YXIoLS1tYWluLXNpZGViYXItd2lkdGgpICsgdmFyKC0tbWFpbi1zaWRlYmFyLXNwYWNpbmctaCkpKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAubWFpbi1zaWRlYmFyICsgLm1haW4tY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAodmFyKC0tbWFpbi1zaWRlYmFyLXdpZHRoKSArIHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpKSk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLm1haW4tY29udGVudCArIC5tYWluLXNpZGViYXIge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAubWFpbi1jb250ZW50ICsgLm1haW4tc2lkZWJhci5tYWluLXNpZGViYXItcmlnaHQge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tbWFpbi1zaWRlYmFyLXNwYWNpbmctaCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBTaWRlYmFyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuc2Nyb2xsLXVwIC5tYWluLXNpZGViYXIgLnNpZGViYXItc3RpY2t5IHtcbiAgICB0b3A6IGNhbGModmFyKC0tYXBwLW5hdi1oZWFkZXItaGVpZ2h0KSArIHZhcigtLW1haW4tc2lkZWJhci1zdGlja3ktdG9wKSk7IH1cbiAgLm1haW4tc2lkZWJhciB7XG4gICAgd2lkdGg6IHZhcigtLW1haW4tc2lkZWJhci13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTsgfVxuICAgIC5tYWluLXNpZGViYXItbGcge1xuICAgICAgd2lkdGg6IHZhcigtLW1haW4tc2lkZWJhci1sZy13aWR0aCk7IH1cbiAgICAubWFpbi1zaWRlYmFyIC5zaWRlYmFyLXN0aWNreSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiB2YXIoLS1tYWluLXNpZGViYXItc3RpY2t5LXRvcCk7IH1cbiAgICAgIC5tYWluLXNpZGViYXIgLnNpZGViYXItc3RpY2t5W2RhdGEtc2lkZWJhci1zdGlja3ldIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5tYWluLWNvbnRlbnQgKyAubWFpbi1zaWRlYmFyLFxuICAubGFnb20tbGF5b3V0LXRvcCAubWFpbi1jb250ZW50ICsgLm1haW4tc2lkZWJhciB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAubWFpbi1jb250ZW50ICsgLm1haW4tc2lkZWJhci5tYWluLXNpZGViYXItcmlnaHQsXG4gICAgLmxhZ29tLWxheW91dC10b3AgLm1haW4tY29udGVudCArIC5tYWluLXNpZGViYXIubWFpbi1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuLyogRm9yIHNjcmVlbnMgYmVsb3cgMTE5OXB4ICovXG5AbWVkaWEgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gIC5tYWluLWdyaWQgLm1haW4tc2lkZWJhciB7XG4gICAgd2lkdGg6IGNhbGModmFyKC0tbWFpbi1zaWRlYmFyLXdpZHRoKSAqIDAuOCk7IH1cbiAgICAubWFpbi1ncmlkIC5tYWluLXNpZGViYXItbGcge1xuICAgICAgd2lkdGg6IGNhbGModmFyKC0tbWFpbi1zaWRlYmFyLWxnLXdpZHRoKSAqIDAuOCk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLm1haW4tZ3JpZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5tYWluLWdyaWQgLm1haW4tc2lkZWJhciB7XG4gICAgICBvcmRlcjogMjtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnBhZ2Utdmlld2NhcnQgLm1haW4tZ3JpZCAubWFpbi1zaWRlYmFyLWxnIHtcbiAgICBtaW4td2lkdGg6IGNhbGModmFyKC0tbWFpbi1zaWRlYmFyLWxnLXdpZHRoKSAqIDAuOCk7IH0gfVxuXG4vKiBGb3Igc2NyZWVucyBiZWxvdyA5OTJweCAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5tYWluLWdyaWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWFpbi1ncmlkIC5tYWluLXNpZGViYXIge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tYWluLWJvZHktaGFzLXNpZGViYXIge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gVG9wXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5tYWluLXRvcCB7XG4gIHBhZGRpbmc6IHZhcigtLW1haW4tdG9wLXBhZGRpbmcpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1tYWluLXRvcC1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLW1haW4tdG9wLWJvcmRlci1ib3R0b20pO1xuICBib3gtc2hhZG93OiB2YXIoLS1tYWluLXRvcC1ib3gtc2hhZG93KTsgfVxuICAubWFpbi10b3AgLnRvcC1uYXYge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBIZWFkZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLm1haW4taGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLW1haW4taGVhZGVyLXBhZGRpbmctdik7IH1cbiAgLm1haW4taGVhZGVyLXRvcCB7XG4gICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1sZyk7IH1cbiAgICAubWFpbi1oZWFkZXItdG9wIC5zZWFyY2gtZ3JvdXAge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAubWFpbi1oZWFkZXItdG9wLCAubWFpbi1oZWFkZXItYm90dG9tIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAubWFpbi1oZWFkZXItdGl0bGUge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItdGl0bGUtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tbWFpbi1oZWFkZXItdGl0bGUtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tbWFpbi1oZWFkZXItdGl0bGUtZm9udC13ZWlnaHQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1tYWluLWhlYWRlci10aXRsZS1saW5lLWhlaWdodCk7IH1cbiAgICAubWFpbi1oZWFkZXItdGl0bGUgKyBwIHtcbiAgICAgIG1hcmdpbjogMTZweCAwIDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgLm1haW4taGVhZGVyLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgbWFyZ2luLXRvcDogMTJweDsgfVxuICAgIC5tYWluLWhlYWRlci1sYWJlbC1kZXNjIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWxhYmVsLWRlc2MtY29sb3IpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1sYWJlbC1iZyk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTsgfVxuICAgIC5tYWluLWhlYWRlci1sYWJlbC1uYW1lIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1sYWJlbC1uYW1lLWNvbG9yKTsgfVxuICAgIC5tYWluLWhlYWRlci1sYWJlbC1wcm9tby5sYWJlbC1zYXZpbmdzIHtcbiAgICAgIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgIC5tYWluLWhlYWRlci1sYWJlbC1wcm9tby5sYWJlbC1zYXZpbmdzIHtcbiAgICAgICAgICBhbGlnbi1pdGVtczogdW5zZXQ7IH0gfVxuICAgIC5tYWluLWhlYWRlci1sYWJlbC1wcm9tbyBpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICAgLm1haW4taGVhZGVyLWxhYmVsLXByb21vIGkge1xuICAgICAgICAgIGhlaWdodDogMjRweDsgfSB9XG4gICAgLm1haW4taGVhZGVyLWxhYmVsLXByb21vID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICBwYWRkaW5nLWlubGluZTogMTJweDsgfVxuICAgICAgLm1haW4taGVhZGVyLWxhYmVsLXByb21vID4gc3BhbiBiIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IDhweCAxMnB4OyB9XG4gICAgICAubWFpbi1oZWFkZXItbGFiZWwtcHJvbW8gPiBzcGFuIHNwYW4ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tbGFiZWwtc2F2aW5ncy1ib3JkZXIpO1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiA2cHg7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAxMnB4IDhweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgIC5tYWluLWhlYWRlci1sYWJlbC1wcm9tbyA+IHNwYW4ge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgIC5tYWluLWhlYWRlci1sYWJlbC1wcm9tbyAucHJvbW8taW5mby1pY29uIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubWFpbi1oZWFkZXIgLnNlYXJjaC1ncm91cCAuc2VhcmNoLWZpZWxkIHtcbiAgICBtYXgtd2lkdGg6IDI1NnB4OyB9XG4gICAgLm1haW4taGVhZGVyIC5zZWFyY2gtZ3JvdXAgLnNlYXJjaC1maWVsZDpoYXMoW2RhdGEtY2xlYXItdGFibGUtc2VhcmNoXSkgaW5wdXQge1xuICAgICAgcGFkZGluZy1yaWdodDogNDRweDsgfVxuICAgIC5tYWluLWhlYWRlciAuc2VhcmNoLWdyb3VwIC5zZWFyY2gtZmllbGQ6aGFzKFtkYXRhLWNsZWFyLXRhYmxlLXNlYXJjaF0pIGJ1dHRvbltkYXRhLWNsZWFyLXRhYmxlLXNlYXJjaF0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhzLXYpOyB9XG4gICAgICAubWFpbi1oZWFkZXIgLnNlYXJjaC1ncm91cCAuc2VhcmNoLWZpZWxkOmhhcyhbZGF0YS1jbGVhci10YWJsZS1zZWFyY2hdKSBidXR0b25bZGF0YS1jbGVhci10YWJsZS1zZWFyY2hdIGkge1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1idG4tdHJhbnNpdGlvbik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTsgfVxuICAgICAgLm1haW4taGVhZGVyIC5zZWFyY2gtZ3JvdXAgLnNlYXJjaC1maWVsZDpoYXMoW2RhdGEtY2xlYXItdGFibGUtc2VhcmNoXSkgYnV0dG9uW2RhdGEtY2xlYXItdGFibGUtc2VhcmNoXTpob3ZlciBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWxpbmstaG92ZXItY29sb3IpOyB9XG4gIC5tYWluLWhlYWRlciAuYnJlYWRjcnVtYiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNnB4IDAgMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IHZhcigtLW1haW4taGVhZGVyLWJyZWFkY3J1bWItZm9udC1zaXplKTsgfVxuICAgIC5tYWluLWhlYWRlciAuYnJlYWRjcnVtYiBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLm1haW4taGVhZGVyIC5icmVhZGNydW1iIGxpIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYnJlYWRjcnVtYi1jb2xvcik7IH1cbiAgICAgICAgLm1haW4taGVhZGVyIC5icmVhZGNydW1iIGxpIGE6Zm9jdXMtdmlzaWJsZSwgLm1haW4taGVhZGVyIC5icmVhZGNydW1iIGxpIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1icmVhZGNydW1iLWNvbG9yLWhvdmVyKTsgfVxuICAgIC5tYWluLWhlYWRlciAuYnJlYWRjcnVtYiA+IC5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJyZWFkY3J1bWItY29sb3ItYWN0aXZlKTsgfVxuICAgIC5tYWluLWhlYWRlciAuYnJlYWRjcnVtYiBzbWFsbCB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnBhZ2UtY29uZmlndXJlcHJvZHVjdGRvbWFpbiAubWFpbi1oZWFkZXItbGFiZWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLm1haW4taGVhZGVyLXRvcCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5tYWluLWhlYWRlciAuYnJlYWRjcnVtYiBsaTpmaXJzdC1vZi10eXBlIGE6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tYWluLWhlYWRlciAuc2VhcmNoLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gSGVhZGVyIEJhbm5lclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ubWFpbi1oZWFkZXItYmFubmVyLFxuLmxhZ29tLWxheW91dC1iYW5uZXIgLm1haW4taGVhZGVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLWJnKTtcbiAgcGFkZGluZzogdmFyKC0tbWFpbi1oZWFkZXItcGFkZGluZy12KSAwO1xuICBtYXJnaW46IDA7IH1cbiAgLm1haW4taGVhZGVyLWJhbm5lciAubWFpbi1oZWFkZXItdGl0bGUsXG4gIC5sYWdvbS1sYXlvdXQtYmFubmVyIC5tYWluLWhlYWRlciAubWFpbi1oZWFkZXItdGl0bGUge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLXRpdGxlLWNvbG9yKTsgfVxuICAgIC5tYWluLWhlYWRlci1iYW5uZXIgLm1haW4taGVhZGVyLXRpdGxlICsgcCxcbiAgICAubGFnb20tbGF5b3V0LWJhbm5lciAubWFpbi1oZWFkZXIgLm1haW4taGVhZGVyLXRpdGxlICsgcCB7XG4gICAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLWJyZWFkY3J1bWItY29sb3IpOyB9XG4gIC5tYWluLWhlYWRlci1iYW5uZXIgLm1haW4taGVhZGVyLWJvdHRvbSBsaTo6YmVmb3JlLFxuICAubGFnb20tbGF5b3V0LWJhbm5lciAubWFpbi1oZWFkZXIgLm1haW4taGVhZGVyLWJvdHRvbSBsaTo6YmVmb3JlIHtcbiAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLWJyZWFkY3J1bWItY29sb3IpOyB9XG4gIC5tYWluLWhlYWRlci1iYW5uZXItbGFiZWwtZGVzYyxcbiAgLmxhZ29tLWxheW91dC1iYW5uZXIgLm1haW4taGVhZGVyLWxhYmVsLWRlc2Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJhbm5lci1sYWJlbC1iZyk7XG4gICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJhbm5lci1sYWJlbC1kZXNjLWNvbG9yKTsgfVxuICAubWFpbi1oZWFkZXItYmFubmVyLWxhYmVsLW5hbWUsXG4gIC5sYWdvbS1sYXlvdXQtYmFubmVyIC5tYWluLWhlYWRlci1sYWJlbC1uYW1lIHtcbiAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLWxhYmVsLW5hbWUtY29sb3IpOyB9XG4gIC5tYWluLWhlYWRlci1iYW5uZXItbGFiZWwgLm1haW4taGVhZGVyLWxhYmVsLXByb21vLFxuICAubGFnb20tbGF5b3V0LWJhbm5lciAubWFpbi1oZWFkZXItbGFiZWwgLm1haW4taGVhZGVyLWxhYmVsLXByb21vIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1iYW5uZXItc2F2ZS1sYWJlbC1iZyk7XG4gICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJhbm5lci1zYXZlLWxhYmVsLWNvbG9yKTsgfVxuICAgIC5tYWluLWhlYWRlci1iYW5uZXItbGFiZWwgLm1haW4taGVhZGVyLWxhYmVsLXByb21vIC5maWxsLWNoYW5nZSxcbiAgICAubGFnb20tbGF5b3V0LWJhbm5lciAubWFpbi1oZWFkZXItbGFiZWwgLm1haW4taGVhZGVyLWxhYmVsLXByb21vIC5maWxsLWNoYW5nZSB7XG4gICAgICBmaWxsOiB2YXIoLS1tYWluLWhlYWRlci1iYW5uZXItc2F2ZS1sYWJlbC1jb2xvcik7IH1cbiAgICAubWFpbi1oZWFkZXItYmFubmVyLWxhYmVsIC5tYWluLWhlYWRlci1sYWJlbC1wcm9tbyA+IHNwYW4gc3BhbixcbiAgICAubGFnb20tbGF5b3V0LWJhbm5lciAubWFpbi1oZWFkZXItbGFiZWwgLm1haW4taGVhZGVyLWxhYmVsLXByb21vID4gc3BhbiBzcGFuIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLXNhdmUtbGFiZWwtYm9yZGVyKTsgfVxuICAubWFpbi1oZWFkZXItYmFubmVyIC5tYWluLWhlYWRlci1ib3R0b20gLmJyZWFkY3J1bWIgPiBsaSA+IGEsXG4gIC5sYWdvbS1sYXlvdXQtYmFubmVyIC5tYWluLWhlYWRlciAubWFpbi1oZWFkZXItYm90dG9tIC5icmVhZGNydW1iID4gbGkgPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLWJyZWFkY3J1bWItY29sb3IpOyB9XG4gIC5tYWluLWhlYWRlci1iYW5uZXIgLm1haW4taGVhZGVyLWJvdHRvbSAuYnJlYWRjcnVtYiA+IC5hY3RpdmUsXG4gIC5sYWdvbS1sYXlvdXQtYmFubmVyIC5tYWluLWhlYWRlciAubWFpbi1oZWFkZXItYm90dG9tIC5icmVhZGNydW1iID4gLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJhbm5lci1icmVhZGNydW1iLWNvbG9yLWFjdGl2ZSk7IH1cbiAgLm1haW4taGVhZGVyLWJhbm5lciAubWFpbi1oZWFkZXItYm90dG9tIC50ZXh0LWxpZ2h0ZXIsXG4gIC5sYWdvbS1sYXlvdXQtYmFubmVyIC5tYWluLWhlYWRlciAubWFpbi1oZWFkZXItYm90dG9tIC50ZXh0LWxpZ2h0ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1iYW5uZXItYnJlYWRjcnVtYi1jb2xvcik7IH1cblxuLmJhbm5lci1kb21haW4tcmVnaXN0ZXIgLm1haW4taGVhZGVyLWxhYmVsIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDE2cHg7IH1cbiAgLmJhbm5lci1kb21haW4tcmVnaXN0ZXIgLm1haW4taGVhZGVyLWxhYmVsLXByb21vIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IHZhcigtLXNlYXJjaC1ncm91cC1tYXgtd2lkdGgpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTWFpbiAtIFNlY3Rpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLm1haW4tc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDU2cHggMDsgfVxuICAubWFpbi1zZWN0aW9uOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTWFpbiAtIEJhbm5lclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ubWFpbi1iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLXNpdGUtYmFubmVyLXBhZGRpbmctdikgMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tc2l0ZS1iYW5uZXItYmcpOyB9XG4gIC5tYWluLWJhbm5lciA+ICoge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5tYWluLWJhbm5lci5oYXMtc3VibmF2IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTQ2cHg7IH1cbiAgLm1haW4tYmFubmVyIC5iYW5uZXItdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNpdGUtYmFubmVyLWVsZW1lbnQtc3BhY2luZyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXRlLWJhbm5lci10aXRsZS1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zaXRlLWJhbm5lci10aXRsZS1mb250LXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXNpdGUtYmFubmVyLXRpdGxlLWxpbmUtaGVpZ2h0KTsgfVxuICAubWFpbi1iYW5uZXIgLmJhbm5lci1kZXNjIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpdGUtYmFubmVyLWRlc2MtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tc2l0ZS1iYW5uZXItZGVzYy1mb250LXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXNpdGUtYmFubmVyLWRlc2MtbGluZS1oZWlnaHQpOyB9XG4gIC5tYWluLWJhbm5lciAuYmFubmVyLWFjdGlvbnMge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNpdGUtYmFubmVyLWVsZW1lbnQtc3BhY2luZyk7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5tYWluLWJhbm5lciB7XG4gICAgbWluLWhlaWdodDogYXV0bzsgfVxuICAucGFnZS10eXBlLWZ1bGwge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBGb290ZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLm1haW4tZm9vdGVyIHtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1tYWluLWZvb3Rlci1iZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLW1haW4tZm9vdGVyLWJveC1zaGFkb3cpOyB9XG4gIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstcGFkZGluZy12KSB2YXIoLS1tYWluLWZvb3Rlci1saW5rLXBhZGRpbmctaCk7XG4gICAgICBjb2xvcjogdmFyKC0tbWFpbi1mb290ZXItbGluay1jb2xvcik7XG4gICAgICBmb250LXNpemU6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstZm9udC1zaXplKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWxpbmUtaGVpZ2h0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWZvbnQtd2VpZ2h0KTtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYSA+IGksXG4gICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGEgPiBzdmcsXG4gICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGEgPiBpbWcge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1zaXplKTtcbiAgICAgICAgd2lkdGg6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1zaXplKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGEgPiBpOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYSA+IHN2Zzpub3QoOmxhc3QtY2hpbGQpLFxuICAgICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGEgPiBpbWc6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmcpOyB9XG4gICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGEgPiBpbWcge1xuICAgICAgICBoZWlnaHQ6IHVuc2V0OyB9XG4gICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGEgPiBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1jb2xvcik7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbWFpbi1mb290ZXItbGluay1pY29uLXNpemUpOyB9XG4gICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGEgPiBzdmcge1xuICAgICAgICB3aWR0aDogdmFyKC0tbWFpbi1mb290ZXItbGluay1pY29uLXNpemUpOyB9XG4gICAgICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYSA+IHN2Zzpub3QoLnN2Zy1pY29uKSA+IHBhdGgge1xuICAgICAgICAgIGZpbGw6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1jb2xvcik7IH1cbiAgICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYTpob3ZlciwgLm1haW4tZm9vdGVyIC5mb290ZXItbmF2ID4gbGkgPiBhOmZvY3VzLCAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGE6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYTpob3ZlciA+IGksIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYTpmb2N1cyA+IGksIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYTphY3RpdmUgPiBpIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1mb290ZXItbGluay1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYgPiBsaSA+IGE6aG92ZXIgc3ZnOm5vdCguc3ZnLWljb24pID4gcGF0aCwgLm1haW4tZm9vdGVyIC5mb290ZXItbmF2ID4gbGkgPiBhOmZvY3VzIHN2Zzpub3QoLnN2Zy1pY29uKSA+IHBhdGgsIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdiA+IGxpID4gYTphY3RpdmUgc3ZnOm5vdCguc3ZnLWljb24pID4gcGF0aCB7XG4gICAgICAgICAgZmlsbDogdmFyKC0tbWFpbi1mb290ZXItbGluay1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAubWFpbi1mb290ZXIgLmZvb3Rlci1uYXYtaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IDAgY2FsYygtMSAqIHZhcigtLW1haW4tZm9vdGVyLWgtbGluay1wYWRkaW5nLWgpKTsgfVxuICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLW5hdi1oID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLW1haW4tZm9vdGVyLWgtbGluay1wYWRkaW5nLXYpIHZhcigtLW1haW4tZm9vdGVyLWgtbGluay1wYWRkaW5nLWgpOyB9XG4gIC5tYWluLWZvb3RlciAuZm9vdGVyLWJvdHRvbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgMDtcbiAgICBib3JkZXItdG9wOiB2YXIoLS1tYWluLWZvb3Rlci1ib3JkZXItdG9wKTsgfVxuICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLWJvdHRvbSA+IC5jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1wYXltZW50LWdhdGV3YXkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1haW4tZm9vdGVyIC5mb290ZXItYm90dG9tOmhhcyguZm9vdGVyLXBheW1lbnQtZ2F0ZXdheSkgLmZvb3Rlci1jb3B5cmlnaHQge1xuICAgICAgbWluLXdpZHRoOiAyMjBweDsgfVxuICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLWJvdHRvbTpoYXMoLmZvb3Rlci1wYXltZW50LWdhdGV3YXkpIC5mb290ZXItbmF2IGEge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAubWFpbi1mb290ZXIgLmZvb3Rlci1jb3B5cmlnaHQge1xuICAgIGZsZXg6IDE7IH1cbiAgLm1haW4tZm9vdGVyIC5mb290ZXItcGF5bWVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLXBheW1lbnQtZ2F0ZXdheSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLXBheW1lbnQtZ2F0ZXdheSAuZ2F0ZXdheS1pY29uLWxnIHN2ZywgLm1haW4tZm9vdGVyIC5mb290ZXItcGF5bWVudC1nYXRld2F5IC5nYXRld2F5LWljb24tbGcgaW1nIHtcbiAgICAgICAgbWluLXdpZHRoOiA2MnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0MnB4OyB9XG4gICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1wYXltZW50LWdhdGV3YXkgc3ZnIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpOyB9XG4gICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1wYXltZW50LWdhdGV3YXkgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMycHg7XG4gICAgICAgIG1pbi13aWR0aDogNDhweDsgfVxuICAgIC5tYWluLWZvb3RlciAuZm9vdGVyLXBheW1lbnQtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cbiAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLWdyYXkgLmZvb3Rlci1wYXltZW50LWdhdGV3YXkgc3ZnIHtcbiAgICBiYWNrZ3JvdW5kOiAjRUZFRkYxOyB9XG4gIC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkgLmZpbGwtd2hpdGUsIC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5maWxsLXdoaXRlIHtcbiAgICBmaWxsOiAjZmZmOyB9XG4gIC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkgLmZpbGwtZ3JheSwgLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkgLmZpbGwtZ3JheSB7XG4gICAgZmlsbDogI0UwRTBFMDsgfVxuICAubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5maWxsLXRyYW5zcGFyZW50LCAubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZmlsbC10cmFuc3BhcmVudCB7XG4gICAgZmlsbDogdHJhbnNwYXJlbnQ7IH1cbiAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSAuZm9vdGVyLXBheW1lbnQtZ2F0ZXdheSBzdmcsIC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItcGF5bWVudC1nYXRld2F5IHN2ZyB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTsgfVxuICAubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItcGF5bWVudC1oZWFkZXIsIC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItcGF5bWVudC1oZWFkZXIge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1ib2R5LWNvbG9yKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLm1haW4tZm9vdGVyIC5mb290ZXItYm90dG9tIC5jb250YWluZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICByb3ctZ2FwOiAxNnB4OyB9XG4gIC5tYWluLWZvb3RlciAuZm9vdGVyLWJvdHRvbSBwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTsgfVxuICAubWFpbi1mb290ZXIgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1jb3B5cmlnaHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAubWFpbi1mb290ZXIgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1uYXYtaCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLm1haW4tZm9vdGVyIC5mb290ZXItYm90dG9tIC5mb290ZXItbmF2LWggLmRyb3Bkb3duLW1lbnUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTE2cHgpOyB9XG4gICAgICAubWFpbi1mb290ZXIgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1uYXYtaCAuZHJvcGRvd24tbWVudS5zaG93IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBGb290ZXIgRXh0ZW5kZWRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLm1haW4tZm9vdGVyLWV4dGVuZGVkIHtcbiAgYm9yZGVyLXRvcDogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtYm9yZGVyLXRvcCk7IH1cbiAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1wYWRkaW5nKSAwOyB9XG4gICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wID4gLmNvbnRhaW5lciB7XG4gICAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLTd4KTsgfVxuICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci1jb21wYW55LWxvZ28ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItY29tcGFueS1sb2dvIGltZyB7XG4gICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtbG9nby1oZWlnaHQpO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItY29tcGFueS1kZXNjIHtcbiAgICBtaW4td2lkdGg6IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXNpZGUtbWluLXdpZHRoKTtcbiAgICBtYXJnaW46IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLWRlc2MtbWFyZ2luKTtcbiAgICBjb2xvcjogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtZGVzYy1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1kZXNjLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLWRlc2MtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1kZXNjLWZvbnQtd2VpZ2h0KTsgfVxuICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci1jb21wYW55LXNvY2lhbHMge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLWNvbXBhbnktc29jaWFscyAuZm9vdGVyLXNvY2lhbC13aWRlIHtcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7IH1cbiAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItc2l0ZS1tYXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1zcGFjaW5nKSk7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLWNvbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1zcGFjaW5nKTsgfVxuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItbmF2IGxpID4gYTpob3ZlciwgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci1uYXYgbGkgPiBhOmFjdGl2ZSwgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci1uYXYgbGkgPiBhOmZvY3VzIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tbWFpbi1mb290ZXItbGluay1ob3Zlci1wYWRkaW5nLWgpOyB9XG4gICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci1uYXYgbGkgPiBhID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXNpdGUtbWFwIC5sYWJlbCB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdGl0bGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC10aXRsZS1tYXJnaW4tYm90dG9tKTtcbiAgICBjb2xvcjogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtdGl0bGUtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtdGl0bGUtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtdGl0bGUtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC10aXRsZS1mb250LXdlaWdodCk7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci10aXRsZSAuZm9vdGVyLWljb24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXRpdGxlID4gc3ZnLFxuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXRpdGxlID4gc3BhbiA+IHN2ZyxcbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci10aXRsZSA+IGksXG4gICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdGl0bGUgPiBpbWcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmcpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWljb24tc2l6ZSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1zaXplKTtcbiAgICAgIHdpZHRoOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWljb24tc2l6ZSk7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci10aXRsZSA+IGltZyB7XG4gICAgICBoZWlnaHQ6IHVuc2V0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLWJyYW5kIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAyODBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItbmF2LmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXRvcCA+IC5jb250YWluZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci10b3AgPiAuY29udGFpbmVyIC5kLWZsZXgge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLWNvbXBhbnkge1xuICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXBhZGRpbmcpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItY29tcGFueS1pbnRybyB7XG4gICAgICAgIGZsZXg6IDE7IH1cbiAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLWNvbXBhbnk6aGFzKCsgLmZvb3Rlci1wYXltZW50KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci1wYXltZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNngpOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIHtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5yb3cge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci1jb2wge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci1jb2wgLmZvb3Rlci10aXRsZTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogdmlzaWJsZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZTpob3ZlciwgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZTphY3RpdmUsIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItdGl0bGU6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstY29sb3IpOyB9XG4gICAgICAgICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci10b3AgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLXRpdGxlOmhvdmVyIC5mb290ZXItaWNvbiBzdmcgcGF0aCwgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZTphY3RpdmUgLmZvb3Rlci1pY29uIHN2ZyBwYXRoLCAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci10b3AgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLXRpdGxlOmZvY3VzIC5mb290ZXItaWNvbiBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgIGZpbGw6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstY29sb3IpOyB9XG4gICAgICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkIC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZSAuZm9vdGVyLWljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICByaWdodDogNXB4OyB9XG4gICAgICAgICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci10b3AgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLXRpdGxlIC5mb290ZXItaWNvbiBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmZvb3Rlci10b3AgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLXRpdGxlOm5vdCguY29sbGFwc2VkKSAuZm9vdGVyLWljb24gc3ZnIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAgICAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItdGl0bGU6bm90KC5jb2xsYXBzZWQpIC5mb290ZXItaWNvbiBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgIGZpbGw6IGFyKC0tbWFpbi1mb290ZXItbGluay1jb2xvcik7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQgLmNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLWNvbXBhbnkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZCAuZm9vdGVyLWNvbXBhbnktaW50cm8ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfSB9XG4gIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmcpOyB9XG4gICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkgLmZvb3Rlci1jb21wYW55LWRlc2Mge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdG90YWwtZm9udC1jb2xvcik7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItdGl0bGUge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdG90YWwtZm9udC1jb2xvcik7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItdGl0bGU6aG92ZXIsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZTphY3RpdmUsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH0gfVxuICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkgLmZvb3Rlci10b3AgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLXRpdGxlOmhvdmVyIC5mb290ZXItaWNvbiA+IHN2ZyA+IHBhdGgsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZTphY3RpdmUgLmZvb3Rlci1pY29uID4gc3ZnID4gcGF0aCwgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkgLmZvb3Rlci10b3AgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLXRpdGxlOmZvY3VzIC5mb290ZXItaWNvbiA+IHN2ZyA+IHBhdGgge1xuICAgICAgICBmaWxsOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkgLmZvb3Rlci1uYXYgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhOmhvdmVyLCAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZm9vdGVyLW5hdiA+IGxpID4gYTphY3RpdmUsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkgLmZvb3Rlci1uYXYgPiBsaSA+IGE6aG92ZXIgPiBpLCAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZm9vdGVyLW5hdiA+IGxpID4gYTphY3RpdmUgPiBpLCAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZm9vdGVyLW5hdiA+IGxpID4gYTpmb2N1cyA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhOmhvdmVyID4gc3ZnOm5vdCguc3ZnLWljb24pIHBhdGgsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhOmFjdGl2ZSA+IHN2Zzpub3QoLnN2Zy1pY29uKSBwYXRoLCAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZm9vdGVyLW5hdiA+IGxpID4gYTpmb2N1cyA+IHN2Zzpub3QoLnN2Zy1pY29uKSBwYXRoIHtcbiAgICAgICAgICBmaWxsOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZm9vdGVyLW5hdiA+IGxpID4gYSBzdmc6bm90KC5zdmctaWNvbikgcGF0aCB7XG4gICAgICAgIGZpbGw6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkgLmZvb3Rlci1jb3B5cmlnaHQge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdG90YWwtZm9udC1jb2xvcik7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuZm9vdGVyLWJvdHRvbSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcHJpbWFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZyk7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItY29tcGFueS1kZXNjIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdG90YWwtZm9udC1jb2xvcik7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItdG9wIC5mb290ZXItc2l0ZS1tYXAgLmZvb3Rlci10aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItdGl0bGU6aG92ZXIsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkgLmZvb3Rlci10b3AgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLXRpdGxlOmFjdGl2ZSwgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItdGl0bGU6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH0gfVxuICAgICAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItdGl0bGU6aG92ZXIgLmZvb3Rlci1pY29uID4gc3ZnID4gcGF0aCwgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSAuZm9vdGVyLXRvcCAuZm9vdGVyLXNpdGUtbWFwIC5mb290ZXItdGl0bGU6YWN0aXZlIC5mb290ZXItaWNvbiA+IHN2ZyA+IHBhdGgsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkgLmZvb3Rlci10b3AgLmZvb3Rlci1zaXRlLW1hcCAuZm9vdGVyLXRpdGxlOmZvY3VzIC5mb290ZXItaWNvbiA+IHN2ZyA+IHBhdGgge1xuICAgICAgICBmaWxsOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkgLmZvb3Rlci1uYXYgPiBsaSA+IGE6aG92ZXIsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkgLmZvb3Rlci1uYXYgPiBsaSA+IGE6YWN0aXZlLCAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhOmhvdmVyID4gaSwgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSAuZm9vdGVyLW5hdiA+IGxpID4gYTphY3RpdmUgPiBpLCAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhOmZvY3VzID4gaSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhOmhvdmVyID4gc3ZnOm5vdCguc3ZnLWljb24pIHBhdGgsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkgLmZvb3Rlci1uYXYgPiBsaSA+IGE6YWN0aXZlID4gc3ZnOm5vdCguc3ZnLWljb24pIHBhdGgsIC5tYWluLWZvb3Rlci1leHRlbmRlZC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkgLmZvb3Rlci1uYXYgPiBsaSA+IGE6Zm9jdXMgPiBzdmc6bm90KC5zdmctaWNvbikgcGF0aCB7XG4gICAgICAgICAgZmlsbDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhIHN2Zzpub3QoLnN2Zy1pY29uKSBwYXRoIHtcbiAgICAgICAgZmlsbDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItbmF2ID4gbGkgPiBhID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItY29weXJpZ2h0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdG90YWwtZm9udC1jb2xvcik7IH1cbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5mb290ZXItYm90dG9tIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgLm1haW4tZm9vdGVyLWV4dGVuZGVkLm1haW4tZm9vdGVyLWV4dGVuZGVkLWdyYXkge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1ncmFkaWVudC1oKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTM2MHB4O1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWxheW91dC1jb250YWluZXItZ3V0dGVyKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tbGF5b3V0LWNvbnRhaW5lci1ndXR0ZXIpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IC0gVG9wIE5hdmlnYXRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmxhZ29tLWxheW91dC10b3Auc2Nyb2xsaW5nIC5zdGlja3ktbmF2aWdhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmxhZ29tLWxheW91dC10b3AubWVudS1vcGVuLnNjcm9sbC1kb3duIC5zdGlja3ktbmF2aWdhdGlvbiwgLmxhZ29tLWxheW91dC10b3Auc2Nyb2xsLXVwIC5zdGlja3ktbmF2aWdhdGlvbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stb3ZlcmxheS1zaGFkb3cpO1xuICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbmF2YmFyLWZpeGVkKTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmxhZ29tLWxheW91dC10b3Auc2Nyb2xsZWQtdG9wIC5zdGlja3ktbmF2aWdhdGlvbi5zdGlja3ktbmF2aWdhdGlvbi0tZGVmYXVsdCAjaGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmxhZ29tLWxheW91dC10b3AgLnN0aWNreS1uYXZpZ2F0aW9uLnN0aWNreS1uYXZpZ2F0aW9uLS1zdGlja3kge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7IH1cblxuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTAwMjtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LXRvcC1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYXBwLW5hdi10b3AtYm9yZGVyLWJvdHRvbSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYXBwLW5hdi10b3AtYm94LXNoYWRvdyk7IH1cbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtaGVhZGVyIHtcbiAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbmF2YmFyLWJnKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgPiAuY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51ID4gLmNvbnRhaW5lcjpiZWZvcmUsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgPiAuY29udGFpbmVyOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSA+IC5jb250YWluZXItLWZpeGVkLWRyb3Bkb3duIC5tZW51ID4gbGkge1xuICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKSk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoKDIgKiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy12KSkgKyB2YXIoLS11aS1oZWlnaHQtYmFzZSkpO1xuICAgICAgICAvKiBtZW51IGl0ZW0gdW5kZXJsaW5lICovIH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgIHRvcDogY2FsYygxMDAlIC0gOHB4KTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGk6bm90KC5pcy1yaWdodCkgKyAuaXMtcmlnaHQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5pcy1yaWdodDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lbnUtaG92ZXI6bm90KC5zaG93KTpub3QoLnNmSG92ZXIpID4gYTpub3QoLmJ0bik6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstY29sb3IpOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lbnUtaG92ZXI6bm90KC5zaG93KTpub3QoLnNmSG92ZXIpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtaWNvbi1jb2xvcik7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lbnUtaG92ZXI6bm90KC5zaG93KTpub3QoLnNmSG92ZXIpID4gYTpub3QoLmJ0bik6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstY29sb3IpOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lbnUtaG92ZXI6bm90KC5zaG93KTpub3QoLnNmSG92ZXIpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtaWNvbi1jb2xvcik7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lbnUtaG92ZXIuc2ZIb3ZlciAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGhlaWdodDogY2FsYygoMiAqIHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLXYpKSArIHZhcigtLXVpLWhlaWdodC1iYXNlKSk7XG4gICAgICAgICAgcGFkZGluZzogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctdikgdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctaCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1jb2xvcik7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstZm9udC1zaXplKTtcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLWZvbnQtd2VpZ2h0KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLWxpbmUtaGVpZ2h0KTsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5scyxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5sbSxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiAubHMsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmxtIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWljb24tY29sb3IpO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtYmFzZSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGk6bm90KC5scy1jYXJldCksXG4gICAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5sczpub3QoLmxzLWNhcmV0KSxcbiAgICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLmxtOm5vdCgubHMtY2FyZXQpLFxuICAgICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmxzOm5vdCgubHMtY2FyZXQpLFxuICAgICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmxtOm5vdCgubHMtY2FyZXQpIHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gc3ZnIHtcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpob3Zlcjpub3QoLmJ0biksXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6Zm9jdXM6bm90KC5idG4pLFxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0biksXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOmhvdmVyOm5vdCguYnRuKSxcbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6Zm9jdXM6bm90KC5idG4pLFxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pLFxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6aG92ZXI6bm90KC5idG4pLFxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6Zm9jdXM6bm90KC5idG4pIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6aG92ZXI6bm90KC5idG4pID4gYixcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOmhvdmVyOm5vdCguYnRuKSA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpob3Zlcjpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOmZvY3VzOm5vdCguYnRuKSA+IGIsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpmb2N1czpub3QoLmJ0bikgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6Zm9jdXM6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pID4gYixcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOmhvdmVyOm5vdCguYnRuKSA+IGIsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6aG92ZXI6bm90KC5idG4pID4gaSxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpob3Zlcjpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpmb2N1czpub3QoLmJ0bikgPiBiLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOmZvY3VzOm5vdCguYnRuKSA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6Zm9jdXM6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSA+IGIsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpob3Zlcjpub3QoLmJ0bikgPiBiLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpob3Zlcjpub3QoLmJ0bikgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpob3Zlcjpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6Zm9jdXM6bm90KC5idG4pID4gYixcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6Zm9jdXM6bm90KC5idG4pID4gaSxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6Zm9jdXM6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGkge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtaWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDE4cHg7XG4gICAgICAgICAgcmlnaHQ6IDE4cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGk6bm90KC5uYXYtaXRlbS10ZXh0LW9ubHkpID4gYTpub3QoLmJ0bikgPiBpICsgc3BhbixcbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+IGE6bm90KC5idG4pID4gLmxzICsgc3BhbixcbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+IGE6bm90KC5idG4pID4gLmxtICsgc3BhbixcbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+IGE6bm90KC5idG4pID4gc3ZnICsgc3BhbixcbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+IGE6bm90KC5idG4pID4gaW1nICsgc3BhbixcbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciArIHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmctbGcpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpub3QoLnNob3cpOm5vdCguc2ZIb3ZlcikgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLmJhZGdlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyB2YXIoLS1zcGFjaW5nLTJ4KSk7XG4gICAgICAgICAgbGVmdDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctaCk7XG4gICAgICAgICAgcGFkZGluZzogNnB4IDA7XG4gICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWRyb3Bkb3duLXdpZHRoKTsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpID4gYSA+IGkubG0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNpemUtc20pO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IHN2ZyxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xuICAgICAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7IH1cbiAgICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtY29sbGFwc2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB1bnNldDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuaXMtcmlnaHQ6bm90KC5kcm9wZG93bi1tZWdhKSAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICByaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctaCk7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLnB1bGwtcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgIHJpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKTtcbiAgICAgICAgICBsZWZ0OiB1bnNldDsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW0ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XG4gICAgICAgIG1hcmdpbjogMCB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCkgdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMtbGcpO1xuICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgICBwYWRkaW5nOiA4cHggMDsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51IGxpLm5hdi1oZWFkZXItY29sbGFwc2UgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IC5sYWJlbC5sYWJlbC1kZWZhdWx0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgbGkubmF2LWl0ZW0tYnRuLmlzLXJpZ2h0IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgbGkubmF2LWl0ZW0tYnRuOmZpcnN0LWNoaWxkOm5vdCguaXMtcmlnaHQpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLWgpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51IGxpLm5hdi1pdGVtLWJ0bjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSBsaS5uYXYtaXRlbS1idG4gKyAubmF2LWl0ZW0tYnRuID4gLmJ0biB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1idG4tc3BhY2luZy1iZXR3ZWVuKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSBsaS5uYXYtaXRlbS1idG4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDsgfVxuICAgICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudSAubWVudSBsaS5uYXYtaXRlbS1idG4gKyAuZGFyay1tb2RlLXN3aXRjaGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLWgpOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wOm5vdCgucGFnZS11c2VyLWxvZ2dlZCkgLm15LWFjY291bnQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubGFnb20tbGF5b3V0LXRvcC5zY3JvbGwtdXAgLnN0aWNreS1uYXZpZ2F0aW9uIHtcbiAgICBtaW4taGVpZ2h0OiA2MHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5tb2RhbC1vcGVuLmxhZ29tLWxheW91dC10b3Age1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC5tb2RhbC1vcGVuLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtaGVhZGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC5tb2RhbC1vcGVuLmxhZ29tLWxheW91dC10b3AgLm9yZGVyLXN1bW1hcnktbW9iIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC5tb2RhbC1vcGVuLmxhZ29tLWxheW91dC10b3AgLmJvdHRvbS1hY3Rpb24tc3RpY2t5IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfSB9XG5cbi5tb2RhbC1vcGVuLmxhZ29tLWxheW91dC10b3Auc2Nyb2xsaW5nIC5zdGlja3ktbmF2aWdhdGlvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNjcm9sbGJhci13aWR0aCwgMTdweCk7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5tb2RhbC1vcGVuIC5hcHAtbmF2LWhlYWRlciB7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc2Nyb2xsYmFyLXdpZHRoLCAxN3B4KTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IC0gVG9wIENvbmRlbnNlZCBOYXZpZ2F0aW9uXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5sYWdvbS1sYXlvdXQtY29uZGVuc2VkIC5hcHAtbmF2LWhlYWRlciAubG9nbyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmxhZ29tLWxheW91dC1jb25kZW5zZWQgLmFwcC1uYXYtaGVhZGVyIC50b3AtbmF2IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYWdvbS1sYXlvdXQtY29uZGVuc2VkIC5hcHAtbmF2LWhlYWRlciAudG9wLW5hdiAuY2xpZW50LWF2YXRhci0tc21hbGwgaW1nIHtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgd2lkdGg6IDI0cHg7IH1cblxuLmxhZ29tLWxheW91dC1jb25kZW5zZWQgLmFwcC1uYXYtbWVudSAubG9nbyxcbi5sYWdvbS1sYXlvdXQtY29uZGVuc2VkIC5hcHAtbmF2LW1lbnUgLmxvZ28gPiBpbWcge1xuICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtbG9nby1oZWlnaHQpO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGFnb20tbGF5b3V0LWNvbmRlbnNlZCAuYXBwLW5hdi1oZWFkZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtaGVhZGVyLWhlaWdodCk7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLWhlYWRlci1ib3JkZXItYm90dG9tKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubGFnb20tbGF5b3V0LWNvbmRlbnNlZCAuYXBwLW5hdi1oZWFkZXIgLm15LWFjY291bnQgLmFjdGl2ZS1jbGllbnQgc3Bhbjpub3QoLml0ZW0tdGV4dCkge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAubGFnb20tbGF5b3V0LWNvbmRlbnNlZCAuYXBwLW5hdi1tZW51IC5sb2dvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1sb2dvLXNwYWNpbmcpOyB9XG4gIC5sYWdvbS1sYXlvdXQtY29uZGVuc2VkIC5hcHAtbmF2LW1lbnUgLm1lbnUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsZXg6IHVuc2V0O1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy1oKSk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAubGFnb20tbGF5b3V0LWNvbmRlbnNlZCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkge1xuICAgICAgbWluLWhlaWdodDogdmFyKC0tYXBwLW5hdi1oZWFkZXItaGVpZ2h0KTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1jb25kZW5zZWQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctdikgdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtY29uZGVuc2VkIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5uYXYtaXRlbS1idG46Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWNvbmRlbnNlZCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkubmF2LWl0ZW0tYnRuOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy1oKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1jb25kZW5zZWQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbGVmdDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWNvbmRlbnNlZCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkucHVsbC1yaWdodCAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHJpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctaCk7XG4gICAgICAgIGxlZnQ6IHVuc2V0OyB9XG4gICAgLmxhZ29tLWxheW91dC1jb25kZW5zZWQgLmFwcC1uYXYtbWVudSAubWVudSBsaTpub3QoLm5hdi1pdGVtLWJ0bikgKyBsaS5uYXYtaXRlbS1idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy1oKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtY29uZGVuc2VkIC5hcHAtbmF2LW1lbnUgLm1lbnUgbGkubmF2LWl0ZW0tYnRuICsgLmRhcmstbW9kZS1zd2l0Y2hlciB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IC0gVG9wIE5hdmlnYXRpb24gLSBTdHlsZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdiB1bC50b3AtbmF2ID4gbGkuZHJvcGRvd24tbWVudS1ob3Zlci5zZkhvdmVyIC5kcm9wZG93bi1tZW51IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnLWgpOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnLWgpOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUtcHJpbWFyeSAubWVudSA+IGxpID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUtc2Vjb25kYXJ5IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmFjdGl2ZSwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1wcmltYXJ5IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cywgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1zZWNvbmRhcnkgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6YWN0aXZlLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gLmxzLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmFjdGl2ZSA+IC5scywgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1wcmltYXJ5IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5scywgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1zZWNvbmRhcnkgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gLmxzLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMge1xuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLmxzLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubHMge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1wcmltYXJ5IC5tZW51ID4gbGkuZHJvcGRvd24tbWVudS1ob3Zlcjpub3QoLnNob3cpOm5vdCguc2ZIb3ZlcikgPiBhOm5vdCguYnRuKTpmb2N1cywgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1zZWNvbmRhcnkgLm1lbnUgPiBsaS5kcm9wZG93bi1tZW51LWhvdmVyOm5vdCguc2hvdyk6bm90KC5zZkhvdmVyKSA+IGE6bm90KC5idG4pOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUtcHJpbWFyeSAubWVudSA+IGxpLmRyb3Bkb3duLW1lbnUtaG92ZXI6bm90KC5zaG93KTpub3QoLnNmSG92ZXIpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUtc2Vjb25kYXJ5IC5tZW51ID4gbGkuZHJvcGRvd24tbWVudS1ob3Zlcjpub3QoLnNob3cpOm5vdCguc2ZIb3ZlcikgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5scyB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1zZWNvbmRhcnkgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1wcmltYXJ5IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6YWZ0ZXIsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUtc2Vjb25kYXJ5IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKTpob3ZlciwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1wcmltYXJ5IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6YWN0aXZlLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKTpmb2N1cywgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1zZWNvbmRhcnkgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKTpob3ZlciwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1zZWNvbmRhcnkgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKTphY3RpdmUsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUtc2Vjb25kYXJ5IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1wcmltYXJ5IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgPiBiLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pID4gYiB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1wcmltYXJ5IC5tZW51IC5uYXYtaXRlbS1idG4gLmJ0bi1wcmltYXJ5LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubWVudSAubmF2LWl0ZW0tYnRuIC5idG4tcHJpbWFyeSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ib3JkZXIpOyB9XG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1wcmltYXJ5IC5tZW51IC5uYXYtaXRlbS1idG4gLmJ0bi1wcmltYXJ5OmhvdmVyLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubWVudSAubmF2LWl0ZW0tYnRuIC5idG4tcHJpbWFyeTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUtcHJpbWFyeSAubG9nby10ZXh0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXNlY29uZGFyeSAubG9nby10ZXh0IHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51LXByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmctaCk7IH1cbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtbWVudS1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZy1oKTsgfSB9XG5cbi5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSxcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0biksXG4ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gaSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IGkge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtZmFkZWQtY29sb3IpOyB9XG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IGk6aG92ZXIsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IGk6aG92ZXIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IGk6aG92ZXIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gaTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmFjdGl2ZSwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cywgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmFjdGl2ZSwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6YWN0aXZlLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6YWN0aXZlLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gLmxzLWNhcmV0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmFjdGl2ZSA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTphY3RpdmUgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gLmxzLWNhcmV0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTphY3RpdmUgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTphY3RpdmUgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzID4gLmxzLWNhcmV0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTphY3RpdmUgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLWNhcmV0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gLmxzLWNhcmV0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTphY3RpdmUgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTphY3RpdmUgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMtY2FyZXQge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0IHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaTpob3ZlciwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGk6aG92ZXIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpOmhvdmVyLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuXG4ubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pLFxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pLFxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pLFxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0biksXG4ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6aG92ZXIsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTphY3RpdmUsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpmb2N1cywgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmhvdmVyLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6YWN0aXZlLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6Zm9jdXMsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmhvdmVyLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTphY3RpdmUsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmZvY3VzLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpob3ZlciwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6YWN0aXZlLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpmb2N1cyxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmhvdmVyLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6Zm9jdXMsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpob3ZlcixcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmFjdGl2ZSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmZvY3VzLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpob3ZlcixcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpmb2N1cyxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6aG92ZXIsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmFjdGl2ZSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpob3ZlciA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmhvdmVyID4gLmxzLWNhcmV0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlID4gaSxcbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLWNhcmV0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5scy1jYXJldCwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmhvdmVyID4gaSxcbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6aG92ZXIgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTphY3RpdmUgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTphY3RpdmUgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmZvY3VzID4gLmxzLWNhcmV0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpob3ZlciA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6aG92ZXIgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmFjdGl2ZSA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLWNhcmV0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGksXG4gICAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmhvdmVyID4gaSxcbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpob3ZlciA+IC5scy1jYXJldCwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6YWN0aXZlID4gaSxcbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTphY3RpdmUgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmZvY3VzID4gaSxcbiAgICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5scy1jYXJldCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpob3ZlciA+IC5scy1jYXJldCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLWNhcmV0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmZvY3VzID4gLmxzLWNhcmV0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpob3ZlciA+IGksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmhvdmVyID4gLmxzLWNhcmV0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTphY3RpdmUgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTphY3RpdmUgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmZvY3VzID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmhvdmVyID4gLmxzLWNhcmV0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmFjdGl2ZSA+IGksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLWNhcmV0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmZvY3VzID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5scy1jYXJldCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpob3ZlciA+IGksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6aG92ZXIgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6YWN0aXZlID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTphY3RpdmUgPiAubHMtY2FyZXQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmZvY3VzID4gLmxzLWNhcmV0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpob3ZlciAuaXRlbS10ZXh0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlIC5pdGVtLXRleHQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpmb2N1cyAuaXRlbS10ZXh0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6aG92ZXIgLml0ZW0tdGV4dCwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmFjdGl2ZSAuaXRlbS10ZXh0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6Zm9jdXMgLml0ZW0tdGV4dCwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6aG92ZXIgLml0ZW0tdGV4dCwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6YWN0aXZlIC5pdGVtLXRleHQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pOmZvY3VzIC5pdGVtLXRleHQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmhvdmVyIC5pdGVtLXRleHQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmFjdGl2ZSAuaXRlbS10ZXh0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpmb2N1cyAuaXRlbS10ZXh0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpob3ZlciAuaXRlbS10ZXh0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTphY3RpdmUgLml0ZW0tdGV4dCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6Zm9jdXMgLml0ZW0tdGV4dCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6aG92ZXIgLml0ZW0tdGV4dCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6YWN0aXZlIC5pdGVtLXRleHQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmZvY3VzIC5pdGVtLXRleHQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bik6aG92ZXIgLml0ZW0tdGV4dCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTphY3RpdmUgLml0ZW0tdGV4dCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKTpmb2N1cyAuaXRlbS10ZXh0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmhvdmVyIC5pdGVtLXRleHQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6YWN0aXZlIC5pdGVtLXRleHQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6Zm9jdXMgLml0ZW0tdGV4dCB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pIC5pdGVtLXRleHQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0LFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bikgLml0ZW0tdGV4dCxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pIC5pdGVtLXRleHQsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pIC5pdGVtLXRleHQsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pIC5pdGVtLXRleHQge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsIC5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0LFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IHVsLnRvcC1uYXYgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0IHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cblxuLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtcHJpbWFyeSB1bC50b3AtbmF2IC5teS1hY2NvdW50IC5hY3RpdmUtY2xpZW50IHNwYW46bm90KC5pdGVtLXRleHQpLCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgdWwudG9wLW5hdiAubXktYWNjb3VudCAuYWN0aXZlLWNsaWVudCBzcGFuOm5vdCguaXRlbS10ZXh0KSxcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgdWwudG9wLW5hdiAubXktYWNjb3VudCAuYWN0aXZlLWNsaWVudCBzcGFuOm5vdCguaXRlbS10ZXh0KSxcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB1bC50b3AtbmF2IC5teS1hY2NvdW50IC5hY3RpdmUtY2xpZW50IHNwYW46bm90KC5pdGVtLXRleHQpIHtcbiAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWZhZGVkLWNvbG9yKTsgfVxuXG4ubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LWhlYWRlciwgLmxhZ29tLWxheW91dC10b3AgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LWhlYWRlcixcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtaGVhZGVyLFxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LWhlYWRlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tdWktYmxvY2stc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LWhlYWRlciAubG9nby10ZXh0LCAubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtaGVhZGVyIC5sb2dvLXRleHQsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtaGVhZGVyIC5sb2dvLXRleHQsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1oZWFkZXIgLmxvZ28tdGV4dCB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmxhZ29tLWxheW91dC1sZWZ0LmxhZ29tLWRlcHRoLnBhZ2UtbG9naW4gLm1haW4tdG9wLFxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUubGFnb20tZGVwdGgucGFnZS1sb2dpbiAubWFpbi10b3Age1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ib2R5LWJnKTsgfVxuXG4ubGFnb20tbGF5b3V0LWxlZnQubGFnb20tZGVwdGgucGFnZS1sb2dpbiAubWFpbi1mb290ZXIsXG4ubGFnb20tbGF5b3V0LWxlZnQtd2lkZS5sYWdvbS1kZXB0aC5wYWdlLWxvZ2luIC5tYWluLWZvb3RlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJvZHktYmcpOyB9XG5cbi5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdiAubWVudSBsaS5hY3RpdmUgPiBhOmFmdGVyLFxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYgLm1lbnUgbGkuYWN0aXZlID4gYTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmxhZ29tLWxheW91dC1sZWZ0IC5tYWluLWhlYWRlcixcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5tYWluLWhlYWRlciB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5sYWdvbS1sYXlvdXQtbGVmdC5zY3JvbGxpbmcgLnN0aWNreS1uYXZpZ2F0aW9uLFxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUuc2Nyb2xsaW5nIC5zdGlja3ktbmF2aWdhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC5zY3JvbGwtdXAgLnN0aWNreS1uYXZpZ2F0aW9uLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZS5zY3JvbGwtdXAgLnN0aWNreS1uYXZpZ2F0aW9uIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stb3ZlcmxheS1zaGFkb3cpO1xuICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuM3M7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICAgIHotaW5kZXg6IHZhcigtLXppbmRleC1uYXZiYXItZml4ZWQpO1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmxhZ29tLWxheW91dC1sZWZ0LnNjcm9sbGVkLXRvcCAuc3RpY2t5LW5hdmlnYXRpb24uc3RpY2t5LW5hdmlnYXRpb24tLWRlZmF1bHQgI2hlYWRlcixcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlLnNjcm9sbGVkLXRvcCAuc3RpY2t5LW5hdmlnYXRpb24uc3RpY2t5LW5hdmlnYXRpb24tLWRlZmF1bHQgI2hlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5sYWdvbS1sYXlvdXQtbGVmdCAuc3RpY2t5LW5hdmlnYXRpb24uc3RpY2t5LW5hdmlnYXRpb24tLXN0aWNreSxcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5zdGlja3ktbmF2aWdhdGlvbi5zdGlja3ktbmF2aWdhdGlvbi0tc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwOyB9XG5cbi5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdiAubWVudS1wcmltYXJ5IGxpID4gYSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdiAubWVudS1wcmltYXJ5IGxpID4gYSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuXG4ubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYgLm1lbnUtcHJpbWFyeSBsaSA+IGEgaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYgLm1lbnUtcHJpbWFyeSBsaSA+IGEgaSAuYmFkZ2Uge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKSwgc2Fucy1zZXJpZjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtNnB4O1xuICAgIGxlZnQ6IDRweDsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdiAubWVudS1wcmltYXJ5IGxpID4gYSBpIC5iYWRnZS5iYWRnZS1wcmltYXJ5LWZhZGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1iYWRnZS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLXByaW1hcnktYmcpOyB9XG5cbi5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdiAubWVudS1wcmltYXJ5IGxpID4gYSAuaXRlbS10ZXh0IC5iYWRnZSB7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdiAubWVudS1wcmltYXJ5IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+IGEgLml0ZW0tdGV4dCAuYmFkZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2IC5tZW51LXByaW1hcnkgbGk6bm90KC5uYXYtaXRlbS10ZXh0LW9ubHkpID4gYSBzdmcgKyAuaXRlbS10ZXh0IC5uYXYtYmFkZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2IC5tZW51LXByaW1hcnkgbGk6bm90KC5uYXYtaXRlbS10ZXh0LW9ubHkpID4gYSBzdmcgKyAuaXRlbS10ZXh0IC5uYXYtYmFkZ2UuaGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYgLm1lbnUtcHJpbWFyeSBsaSA+IGEgaSAuYmFkZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubGFnb20tbGF5b3V0LWxlZnQgLmNvbnRhaW5lcixcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1tYWluIC5tYWluLXRvcCxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1tYWluIC5tYWluLXRvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQgLmNvbnRhaW5lcixcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWxheW91dC1sZWZ0LWNvbnRhaW5lci1ndXR0ZXIpICsgdmFyKC0tY29udGFpbmVyLXhsLW1heC13aWR0aCkpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tbGF5b3V0LWxlZnQtY29udGFpbmVyLWd1dHRlcik7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tbGF5b3V0LWxlZnQtY29udGFpbmVyLWd1dHRlcik7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IC0gTmF2aWdhdGlvblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4vKiBGb3Igc2NyZWVucyBhYm92ZSA5OTJweCBPTkxZICovXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hbGVydC5hbGVydC1mbG9hdGluZyxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFsZXJ0LmFsZXJ0LWZsb2F0aW5nIHtcbiAgICBsZWZ0OiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkdGgpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdjpub3QoLmFwcC1uYXYtb25seS1sb2dvKSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXY6bm90KC5hcHAtbmF2LW9ubHktbG9nbykge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwNDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtbGVmdC13aWR0aCk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYXBwLW5hdi1sZWZ0LWJveC1zaGFkb3cpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2Om5vdCguYXBwLW5hdi1vbmx5LWxvZ28pIC5jb250YWluZXIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXY6bm90KC5hcHAtbmF2LW9ubHktbG9nbykgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2IC5hcHAtbmF2LWhlYWRlciA+IC5jb250YWluZXIsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2IC5hcHAtbmF2LWhlYWRlciA+IC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYgLmFwcC1uYXYtaGVhZGVyIC50b3AtbmF2LFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdiAuYXBwLW5hdi1oZWFkZXIgLnRvcC1uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdzogLW1vei1zY3JvbGxiYXJzLW5vbmU7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgIHRvdWNoLWFjdGlvbjogYXV0bztcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBhdXRvO1xuICAgIGZsZXg6IDE7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSA+IC5jb250YWluZXIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSA+IC5jb250YWluZXIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpub3QoLmlzLXJpZ2h0KSArIC5pcy1yaWdodCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpOm5vdCguaXMtcmlnaHQpICsgLmlzLXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuaXMtcmlnaHQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5pcy1yaWdodDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0biksXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWZvbnQtd2VpZ2h0KTsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGkge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWNvbG9yKTsgfVxuICAgICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tc2l6ZSk7XG4gICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLml0ZW0tdGV4dCxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5pdGVtLXRleHQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAubWVudS1pdGVtLWNvbnRlbnQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLXRpdGxlLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2MsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tZGVzYyB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyB9IH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2MsXG4gICAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS1kZXNjIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IGxpID4gYSA+IGksXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSBsaSA+IGEgPiBpIHtcbiAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSk7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtZHJvcGRvd24taWNvbi1zaXplKTtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWFwcC1uYXYtbGVmdC1kcm9wZG93bi1pY29uLXNpemUpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1wYXJlbnQgKyAuZHJvcGRvd24tbWVudS1wYXJlbnQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LXBhcmVudCArIC5kcm9wZG93bi1tZW51LXBhcmVudCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5uYXYtaGVhZGVyLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAubmF2LWhlYWRlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstY29sb3IpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy12KSB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCk7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3Qge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgPiBzdmcsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgPiBpbWcsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtID4gYSA+IHN2ZyxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhID4gaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xuICAgICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhID4gaW1nLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgPiBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiB1bnNldDsgfVxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5tZW51LWl0ZW0tY29udGVudCxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtc2lkZWJhciB7XG4gICAgICAgICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItY29udGVudCxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1jb250ZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYy5wcmVkZWZpbmVkLWdyYXBoaWMsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYy5wcmVkZWZpbmVkLWdyYXBoaWMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MnB4OyB9XG4gICAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYy5wcmVkZWZpbmVkLWdyYXBoaWMgLnByb21vLXNsaWRlci1pY29uLFxuICAgICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYy5wcmVkZWZpbmVkLWdyYXBoaWMgLnByb21vLXNsaWRlci1pY29uIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyA+IGltZyxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyA+IHN2ZyxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1ncmFwaGljID4gaW1nLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWdyYXBoaWMgPiBzdmcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWdyYXBoaWMgKyAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWRlc2MsXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyArIC5kcm9wZG93bi1tZW51LXNpZGViYXItZGVzYyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTN4KTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiAubmF2LWl0ZW0tYnRuID4gLmJ0bixcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiAubmF2LWl0ZW0tYnRuID4gLmJ0biB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gLm5hdi1pdGVtLWJ0biA+IC5idG4gPiBzcGFuLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gLm5hdi1pdGVtLWJ0biA+IC5idG4gPiBzcGFuIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiAubmF2LWl0ZW0tYnRuICsgLm5hdi1pdGVtLWJ0bixcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiAubmF2LWl0ZW0tYnRuICsgLm5hdi1pdGVtLWJ0biB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudS1yaWdodCxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudS1sYW5ndWFnZSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51LXJpZ2h0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUtbGFuZ3VhZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51Ojotd2Via2l0LXNjcm9sbGJhcixcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICB3aWR0aDogMCAhaW1wb3J0YW50OyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW1haW4sXG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYm90dG9tLWFjdGlvbi1zdGlja3kuaXMtZml4ZWQsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbWFpbixcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmJvdHRvbS1hY3Rpb24tc3RpY2t5LmlzLWZpeGVkIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZHRoKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQ6aGFzKC5hcHAtbmF2LW9ubHktbG9nbykgLmFwcC1tYWluLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZTpoYXMoLmFwcC1uYXYtb25seS1sb2dvKSAuYXBwLW1haW4ge1xuICAgIG1hcmdpbi1sZWZ0OiB1bnNldDsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQucGFnZS10eXBlLWZ1bGwgLmFwcC1tYWluLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZS5wYWdlLXR5cGUtZnVsbCAuYXBwLW1haW4ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQgOi1tb3otYW55KGJvZHkpIC5hcHAtbmF2LW1lbnUsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIDotbW96LWFueShib2R5KSAuYXBwLW5hdi1tZW51IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNHB4ICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIG1hcmdpbi1ib3R0b206IC0xNHB4ICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsOyB9XG4gIC8qIFN0eWxlcyBmb3IgbGVmdCBuYXZpZ2F0aW9uIG9ubHkgKi9cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWhlYWRlciA+IC5jb250YWluZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDFweDsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcGFkZGluZzogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstcGFkZGluZy12KSB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1wYWRkaW5nLWgpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gc3ZnLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaW1nIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSkgIWltcG9ydGFudDsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtc3ZnLWljb24tc2l6ZSk7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LWxlZnQtc3ZnLWljb24tc2l6ZSk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGltZyB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LWxlZnQtc3ZnLWljb24tc2l6ZSk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuID4gc3ZnOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gPiBpbWc6Zmlyc3QtY2hpbGQsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gc3ZnOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiBpbWc6Zmlyc3QtY2hpbGQsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSA+IHN2ZzpmaXJzdC1jaGlsZCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgPiBpbWc6Zmlyc3QtY2hpbGQsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpbWc6Zmlyc3QtY2hpbGQsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpbWc6Zmlyc3QtY2hpbGQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5zZkhvdmVyIC5kcm9wZG93bi1tZW51LCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2hvdyAuZHJvcGRvd24tbWVudSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGk6bm90KC5zZkhvdmVyKSAuZHJvcGRvd24tbWVudSA+IGxpID4gYSAuYmFkZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWluLXdpZHRoOiB2YXIoLS1hcHAtbmF2LWxlZnQtZHJvcGRvd24td2lkdGgpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYXBwLW5hdi1sZWZ0LWJveC1zaGFkb3cpO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMnB4KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBib3JkZXI6IDA7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1ib2R5OmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy0zeCkgdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRhcmstbW9kZS1zd2l0Y2hlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRhcmstbW9kZS1zd2l0Y2hlciBsYWJlbCB7XG4gICAgICAgIG1hcmdpbjogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLXYpIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRhcmstbW9kZS1zd2l0Y2hlci5pcy1yaWdodDpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiAubmF2LWl0ZW0tYnRuIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1wYWRkaW5nLXYpIHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLXBhZGRpbmctaCk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpub3QoLm5hdi1pdGVtLXRleHQtb25seSkgPiBhOm5vdCguYnRuKSA+IGkgKyBzcGFuLFxuICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+IGE6bm90KC5idG4pID4gc3ZnICsgc3BhbixcbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpub3QoLm5hdi1pdGVtLXRleHQtb25seSkgPiBhOm5vdCguYnRuKSA+IGltZyArIHNwYW4sXG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGk6bm90KC5uYXYtaXRlbS10ZXh0LW9ubHkpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyICsgc3BhbiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstcGFkZGluZy1oKTsgfSB9XG5cbi5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW1haW4gdWwudG9wLW5hdiA+IGxpLmRyb3Bkb3duLW1lbnUtaG92ZXIuc2ZIb3ZlciAuZHJvcGRvd24tbWVudSxcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbWFpbiB1bC50b3AtbmF2ID4gbGkuZHJvcGRvd24tbWVudS1ob3Zlci5zZkhvdmVyIC5kcm9wZG93bi1tZW51IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItY29sbGFwc2UgLm5hdi1oZWFkZXItaXRlbSxcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1jb2xsYXBzZSAubmF2LWhlYWRlci1pdGVtIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1jb2xsYXBzZSAubmF2LWhlYWRlci1pdGVtIC5uYXYtaGVhZGVyLXRleHQsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1jb2xsYXBzZSAubmF2LWhlYWRlci1pdGVtIC5uYXYtaGVhZGVyLXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWNvbGxhcHNlIC5kcm9wZG93bi1tZW51LFxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWNvbGxhcHNlIC5kcm9wZG93bi1tZW51IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tY29sbGFwc2UtYmcpO1xuICBtYXJnaW46IDRweCB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCkgdmFyKC0tc3BhY2luZy0xeCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMtbGcpO1xuICBtaW4td2lkdGg6IHVuc2V0O1xuICBwYWRkaW5nOiA2cHggMDtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICB3aWR0aDogY2FsYygxMDAlIC0gKDIgKiB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCkpKTtcbiAgZmxvYXQ6IG5vbmU7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1jb2xsYXBzZSAuZHJvcGRvd24tbWVudSA+IGxpID4gYSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWNvbGxhcHNlIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgICB3aGl0ZS1zcGFjZTogdW5zZXQ7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1jb2xsYXBzZSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlcixcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWNvbGxhcHNlIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiA2cHggdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgLSBTdHlsZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLmxhZ29tLWxheW91dC1sZWZ0LmxhZ29tLWRlcHRoOm5vdCgucGFnZS1sb2dpbikgLm1haW4tZm9vdGVyOm5vdCgubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5KTpub3QoLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkpOm5vdCgubWFpbi1mb290ZXItZXh0ZW5kZWQtZ3JheSksXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAubGFnb20tbGF5b3V0LWxlZnQtd2lkZS5sYWdvbS1kZXB0aDpub3QoLnBhZ2UtbG9naW4pIC5tYWluLWZvb3Rlcjpub3QoLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSk6bm90KC5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5KTpub3QoLm1haW4tZm9vdGVyLWV4dGVuZGVkLWdyYXkpIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xuQHN1cHBvcnRzICgtd2Via2l0LWh5cGhlbnM6IG5vbmUpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93biB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24gPiBhIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd246aG92ZXIgPiBhOm5vdCguYnRuKSBzdmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duOmhvdmVyID4gYTpub3QoLmJ0bikgLml0ZW0tdGV4dCB7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd246aG92ZXIgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd246aG92ZXIgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd246aG92ZXIgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH0gfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LWJnKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikge1xuICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzLXZpc2libGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1ob3Zlci1iZyk7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpOmZpcnN0LWNoaWxkLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cy12aXNpYmxlID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzLXZpc2libGUgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzLXZpc2libGUgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0biksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstaG92ZXItYmcpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgPiBzdmc6Zmlyc3QtY2hpbGQsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKSA+IHN2ZzpmaXJzdC1jaGlsZCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5zZkhvdmVyID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pID4gc3ZnOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmU6bm90KC5vcGVuKSA+IGE6bm90KC5idG4pLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3Blbjpub3QoLm9wZW4pID4gYTpub3QoLmJ0biksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlOm5vdCgub3BlbikgPiBhOm5vdCguYnRuKSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuOm5vdCgub3BlbikgPiBhOm5vdCguYnRuKSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1hY3RpdmUtYmcpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pID4gaSxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSA+IGksXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0LFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLWhlYWRlcixcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5LFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staWNvbi1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staWNvbi1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4sIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItYmcpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lcixcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSxcbiAgICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikub3BlbiA+IHN2ZzpmaXJzdC1jaGlsZCwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiBzdmc6Zmlyc3QtY2hpbGQsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSA+IHN2ZzpmaXJzdC1jaGlsZCwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciA+IHN2ZzpmaXJzdC1jaGlsZCwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IHN2ZzpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuID4gc3ZnOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gc3ZnOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IHN2ZzpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiAuYmFkZ2UtZG90LFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmJhZGdlLWRvdCB7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlOm5vdCgub3BlbikgPiBhOm5vdCguYnRuKSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmU6bm90KC5vcGVuKSA+IGE6bm90KC5idG4pIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtYmcpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSA+IGk6Zmlyc3QtY2hpbGQsIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24taGVhZGVyLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZGFyay1tb2RlLXN3aXRjaGVyLmlzLXJpZ2h0Omxhc3QtY2hpbGQsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZGFyay1tb2RlLXN3aXRjaGVyLmlzLXJpZ2h0Omxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLXNlY29uZGFyeS1kaXZpZGVyLWJvcmRlci1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS1kZXNjLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tZGVzYyB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktZmFkZWQtY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnksXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0biksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lcixcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWNvbG9yKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staWNvbi1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staWNvbi1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikub3BlbiwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItYmcpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikub3BlbiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lcixcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksXG4gICAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLFxuICAgICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikub3BlbiA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikub3BlbiA+IHN2ZzpmaXJzdC1jaGlsZCwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gc3ZnOmZpcnN0LWNoaWxkLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlID4gc3ZnOmZpcnN0LWNoaWxkLCAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciA+IHN2ZzpmaXJzdC1jaGlsZCwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlID4gc3ZnOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IHN2ZzpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmJhZGdlLWRvdCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmJhZGdlLWRvdCB7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZTpub3QoLm9wZW4pID4gYTpub3QoLmJ0biksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmU6bm90KC5vcGVuKSA+IGE6bm90KC5idG4pIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWFjdGl2ZS1iZyk7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0biksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikge1xuICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCwgLmxhZ29tLWxheW91dC1sZWZ0IC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pY29uLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24taGVhZGVyLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRhcmstbW9kZS1zd2l0Y2hlci5pcy1yaWdodDpsYXN0LWNoaWxkLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZGFyay1tb2RlLXN3aXRjaGVyLmlzLXJpZ2h0Omxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLXNlY29uZGFyeS1kaXZpZGVyLWJvcmRlci1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2MsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2Mge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWZhZGVkLWNvbG9yKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgLSBDb250YWluZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdCAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWxheW91dC1sZWZ0LWNvbnRhaW5lci1ndXR0ZXIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWxheW91dC1sZWZ0LWNvbnRhaW5lci1ndXR0ZXIpOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCAtIEJvdHRvbSBTdGlja3lcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuQG1lZGlhIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQucGFnZS1jbGllbnRhcmVhZG9tYWlucyAuYm90dG9tLWFjdGlvbi1zdGlja3kgLmNvbnRlbnQtYWN0aW9ucyxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUucGFnZS1jbGllbnRhcmVhZG9tYWlucyAuYm90dG9tLWFjdGlvbi1zdGlja3kgLmNvbnRlbnQtYWN0aW9ucyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQucGFnZS1jbGllbnRhcmVhZG9tYWlucyAuYm90dG9tLWFjdGlvbi1zdGlja3kgLmNvbnRlbnQtZHJvcGRvd24sXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlLnBhZ2UtY2xpZW50YXJlYWRvbWFpbnMgLmJvdHRvbS1hY3Rpb24tc3RpY2t5IC5jb250ZW50LWRyb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQucGFnZS1jbGllbnRhcmVhZG9tYWlucyAuYm90dG9tLWFjdGlvbi1zdGlja3kgLmNvbnRlbnQgKyAuY29udGVudCxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUucGFnZS1jbGllbnRhcmVhZG9tYWlucyAuYm90dG9tLWFjdGlvbi1zdGlja3kgLmNvbnRlbnQgKyAuY29udGVudCB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgV2lkZSAtIE5hdmlnYXRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2Om5vdCguYXBwLW5hdi1vbmx5LWxvZ28pIHtcbiAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtd2lkdGgpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSB7XG4gICAgcGFkZGluZzogMDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikge1xuICAgICAgcGFkZGluZzogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLXYpIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKTtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gc3ZnICsgLml0ZW0tdGV4dCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaW1nICsgLml0ZW0tdGV4dCxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSArIC5pdGVtLXRleHQsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgKyAuaXRlbS10ZXh0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc3BhY2luZy1sZyk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gYiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IHN2ZyxcbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaW1nIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1zdmctaWNvbi1zaXplKTtcbiAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXN2Zy1pY29uLXNpemUpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGltZyB7XG4gICAgICAgIGhlaWdodDogdW5zZXQ7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGk6bm90KC5vcGVuKSA+IGE6bm90KC5idG4pOmhvdmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLWhvdmVyLXBhZGRpbmctaCkgKyB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctaCkpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5zaG93LCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuaXRlbS1vcGVuLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2ZIb3ZlciB7XG4gICAgICB6LWluZGV4OiAxMDAwOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIC5kcm9wZG93bi1tZW51LCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiAuZHJvcGRvd24tbWVudSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLnNob3cgLmRyb3Bkb3duLW1lbnUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5pdGVtLW9wZW4gLmRyb3Bkb3duLW1lbnUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5zZkhvdmVyIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkubmF2LWl0ZW0tdGV4dC1vbmx5ID4gYTpub3QoLmJ0bikgPiBzdmcgKyAuaXRlbS10ZXh0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5uYXYtaXRlbS10ZXh0LW9ubHkgPiBhOm5vdCguYnRuKSA+IGkgKyAuaXRlbS10ZXh0LFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5uYXYtaXRlbS10ZXh0LW9ubHkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgKyAuaXRlbS10ZXh0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGE6bm90KC5idG4pOmhvdmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLWgpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctaCk7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZGFyay1tb2RlLXN3aXRjaGVyIGxhYmVsIHtcbiAgICAgIG1hcmdpbjogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLXYpIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kYXJrLW1vZGUtc3dpdGNoZXIuaXMtcmlnaHQ6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDJweCB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1wYWRkaW5nLWgpIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctdik7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctaCkgKyBjYWxjKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXN2Zy1pY29uLXNpemUpIC8gMikpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgYm9yZGVyLWxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWJvcmRlci1sZWZ0KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgdmFyKC0tdWktbmF2LWxpbmstYm9yZGVyLXJhZGl1cykgdmFyKC0tdWktbmF2LWxpbmstYm9yZGVyLXJhZGl1cykgMDsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaSA+IGE6bm90KC5idG4pLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1wYWRkaW5nLWgpIC0gY2FsYyh2YXIoLS1hcHAtbmF2LWxlZnQtZHJvcGRvd24taWNvbi1zaXplKSAvIDIpKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSA+IGkge1xuICAgICAgICAgIG1hcmdpbjogMCBjYWxjKCh2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKSAtIHZhcigtLWFwcC1uYXYtbGVmdC1kcm9wZG93bi1pY29uLXNpemUpKSAvIDIgKyB2YXIoLS1zcGFjaW5nLTJ4KSkgMCBjYWxjKCh2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKSAtIHZhcigtLWFwcC1uYXYtbGVmdC1kcm9wZG93bi1pY29uLXNpemUpKSAvIDIpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpLm5hdi1kaXZpZGVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkubmF2LWRpdmlkZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0ubmF2LWRpdmlkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpOmhvdmVyOm5vdCguYWN0aXZlKSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGk6Zm9jdXM6bm90KC5hY3RpdmUpID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaTphY3RpdmU6bm90KC5hY3RpdmUpID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyOm5vdCguYWN0aXZlKSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1czpub3QoLmFjdGl2ZSkgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6YWN0aXZlOm5vdCguYWN0aXZlKSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXI6bm90KC5hY3RpdmUpID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1czpub3QoLmFjdGl2ZSkgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZTpub3QoLmFjdGl2ZSkgPiBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWhvdmVyLXBhZGRpbmctaCkpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGk6aG92ZXI6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaTpob3Zlcjpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1kYW5nZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGk6Zm9jdXM6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaTpmb2N1czpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1kYW5nZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGk6YWN0aXZlOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGk6YWN0aXZlOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWRhbmdlciwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpob3Zlcjpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1kYW5nZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1czpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1pbmZvLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6Zm9jdXM6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtZGFuZ2VyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6YWN0aXZlOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmU6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtZGFuZ2VyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXI6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtZGFuZ2VyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXM6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtZGFuZ2VyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZTpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1pbmZvLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZTpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1kYW5nZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTJweCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkuYWN0aXZlID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tbGluay1ob3Zlci1wYWRkaW5nLWgpKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpLmFjdGl2ZSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkuYWN0aXZlID4gYSAuYmFkZ2UtZGFuZ2VyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSA+IGEgLmJhZGdlLWRhbmdlciwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhIC5iYWRnZS1pbmZvLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGEgLmJhZGdlLWRhbmdlciB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkgLmJhZGdlLWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkgLmJhZGdlLWRhbmdlciwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpIC5iYWRnZS1pbmZvLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgLmJhZGdlLWRhbmdlciwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSAuYmFkZ2UtaW5mbywgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSAuYmFkZ2UtZGFuZ2VyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkgLm1lbnUtaXRlbS1jb250ZW50LCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgLm1lbnUtaXRlbS1jb250ZW50LCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1jb2xsYXBzZSAubmF2LWhlYWRlci1pdGVtIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW0gLm5hdi1oZWFkZXItdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tbWVudS1jb2xsYXBzZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cy1sZyk7XG4gICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgcGFkZGluZzogNnB4IDA7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKSk7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tbWVudS1jb2xsYXBzZSAubmF2LWRpdmlkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1wYXJlbnQgKyAuZHJvcGRvd24tbWVudS1wYXJlbnQge1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAubmF2LWhlYWRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCk7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4OyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLXVpLW5hdi1saW5rLWJvcmRlci1yYWRpdXMpIHZhcigtLXVpLW5hdi1saW5rLWJvcmRlci1yYWRpdXMpIDA7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgPiBzdmcsXG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhID4gaW1nIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xuICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtID4gYSA+IGltZyB7XG4gICAgICAgIGhlaWdodDogdW5zZXQ7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgLm1lbnUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtc2lkZWJhciB7XG4gICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWdyYXBoaWMucHJlZGVmaW5lZC1ncmFwaGljIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDcycHg7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYy5wcmVkZWZpbmVkLWdyYXBoaWMgLnByb21vLXNsaWRlci1pY29uIHtcbiAgICAgICAgICBoZWlnaHQ6IDcycHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1ncmFwaGljID4gaW1nLFxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyA+IHN2ZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyArIC5kcm9wZG93bi1tZW51LXNpZGViYXItZGVzYyB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzIC5jbGllbnQtYWxlcnRzLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGlbbWVudWl0ZW1uYW1lPVwiQWxlcnRfMFwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSA+IGkge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLWJ0biB7XG4gICAgcGFkZGluZzogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLXYpIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5uYXYtaXRlbS1idG4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctaCkgKyBjYWxjKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXN2Zy1pY29uLXNpemUpIC8gMiAtIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKSkpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLWJ0biArIC5uYXYtaXRlbS1idG4ge1xuICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IFdpZGUgLSBOYXZpZ2F0aW9uIFN0eWxlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi8qIEZvciBzY3JlZW5zIGFib3ZlIDk5MnB4IE9OTFkgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4ge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstYWN0aXZlLWJnKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tdWktbmF2LWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1vcGVuLWJnKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmhvdmVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmZvY3VzLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTphY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpob3ZlciwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6YWN0aXZlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tbGluay1ob3Zlci1iZyk7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmhvdmVyID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpmb2N1cyA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpob3ZlciA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1cyA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSB7XG4gICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6aG92ZXIgPiBhID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpmb2N1cyA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmFjdGl2ZSA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIgPiBhID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTphY3RpdmUgPiBhID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1cyA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6YWN0aXZlID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSA+IGEgPiBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWxpbmstaWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1kZWZhdWx0IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlIGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LWRlZmF1bHQgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUgYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtZGVmYXVsdCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlIGEge1xuICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWJsb2NrLWRpdmlkZXItYWN0aXZlLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLW9wZW4tYmctb24tcHJpbWFyeSk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IC5iYWRnZS1kb3Qge1xuICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZGFyay1tb2RlLXN3aXRjaGVyLmlzLXJpZ2h0Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW0sXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtIGIsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW0gc3BhbiA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtIGIsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtIHNwYW4gPiBpIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWljb24taG92ZXItY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOm5vdCguYnRuKSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0bikgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUgPiBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6aG92ZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6Zm9jdXMsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cywgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6aG92ZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1iZyk7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6aG92ZXIgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmZvY3VzID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTphY3RpdmUgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6aG92ZXIgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1cyA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmFjdGl2ZSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTphY3RpdmUgPiBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpob3ZlciA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmZvY3VzID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMgPiBhID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpob3ZlciA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1cyA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUgPiBhID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItaWNvbi1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWJnKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaWNvbi1hY3RpdmUtY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW06bm90KC5jb2xsYXBzZWQpLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmhvdmVyLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmZvY3VzLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCksXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmhvdmVyLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSBiLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW06bm90KC5jb2xsYXBzZWQpIHNwYW4gPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIgYixcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmhvdmVyIHNwYW4gPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW06Zm9jdXMgYixcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmZvY3VzIHNwYW4gPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgYixcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgc3BhbiA+IGksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIgYixcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpob3ZlciBzcGFuID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBiLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmZvY3VzIHNwYW4gPiBpIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItaWNvbi1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1jb2xsYXBzZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tb3Blbi1iZy1vbi1wcmltYXJ5KTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtcHJpbWFyeSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1wcmltYXJ5IHtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyLTIpICFpbXBvcnRhbnQ7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtaW5mbyB7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWluZm8tbGlnaHRlci0yKSAhaW1wb3J0YW50OyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1kYW5nZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtZGFuZ2VyIHtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtd2FybmluZywgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC13YXJuaW5nIHtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtd2FybmluZy1saWdodGVyLTIpICFpbXBvcnRhbnQ7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LXN1Y2Nlc3MsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtc3VjY2VzcyB7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MtbGlnaHRlci0yKSAhaW1wb3J0YW50OyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMgPiBsaTpub3QoOmxhc3Qtb2YtdHlwZSk6YWZ0ZXIsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGk6bm90KDpsYXN0LW9mLXR5cGUpOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUge1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItYWN0aXZlLWNvbG9yKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1vcGVuLWJnLW9uLXNlY29uZGFyeSk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmJhZGdlLWRvdCB7XG4gICAgb3V0bGluZS1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZGFyay1tb2RlLXN3aXRjaGVyLmlzLXJpZ2h0Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItY29sb3IpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlciwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXIge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtIGIsXG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbSBzcGFuID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbSBiLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtIHNwYW4gPiBpIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0biksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUgPiBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWljb24taG92ZXItY29sb3IpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmhvdmVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6Zm9jdXMsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTphY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cywgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItYmcpOyB9XG4gICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6aG92ZXIgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6Zm9jdXMgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cyA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6aG92ZXIgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMgPiBhLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmhvdmVyID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpmb2N1cyA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6Zm9jdXMgPiBhID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUgPiBhID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cyA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1pY29uLWNvbG9yKTsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWJnKTsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGEsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlID4gYSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAgICAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlID4gYSA+IGksIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSA+IGEgPiBpLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1pY29uLWFjdGl2ZS1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSxcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmhvdmVyLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW06Zm9jdXMsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW06bm90KC5jb2xsYXBzZWQpLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmhvdmVyLFxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSBiLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgc3BhbiA+IGksXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmhvdmVyIGIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmhvdmVyIHNwYW4gPiBpLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBiLFxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBzcGFuID4gaSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgYixcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSBzcGFuID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmhvdmVyIGIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpob3ZlciBzcGFuID4gaSxcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmZvY3VzIGIsXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBzcGFuID4gaSB7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItaWNvbi1jb2xvcik7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb2xsYXBzZSwgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLmRyb3Bkb3duLW1lbnUtY29sbGFwc2Uge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLW9wZW4tYmctb24tc2Vjb25kYXJ5KTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1wcmltYXJ5LCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtcHJpbWFyeSB7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlci0yKSAhaW1wb3J0YW50OyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LWluZm8sIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1pbmZvIHtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtaW5mby1saWdodGVyLTIpICFpbXBvcnRhbnQ7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtZGFuZ2VyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtZGFuZ2VyIHtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC13YXJuaW5nLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtd2FybmluZyB7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci0yKSAhaW1wb3J0YW50OyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LXN1Y2Nlc3MsIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1zdWNjZXNzIHtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTIpICFpbXBvcnRhbnQ7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGk6bm90KDpsYXN0LW9mLXR5cGUpOmFmdGVyLCAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGk6bm90KDpsYXN0LW9mLXR5cGUpOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IFdpZGUgLSBCb2R5XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi8qIEZvciBzY3JlZW5zIGFib3ZlIDk5MnB4IE9OTFkgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW1haW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtd2lkdGgpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hbGVydC5hbGVydC1mbG9hdGluZyB7XG4gICAgbGVmdDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtd2lkdGgpOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlLnBhZ2UtdHlwZS1mdWxsIC5hcHAtbWFpbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlLnBhZ2UtdHlwZS1mdWxsIC5hcHAtbWFpbiAubWFpbi1ib2R5IHtcbiAgICBtYXJnaW4tdG9wOiAwcHg7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IFdpZGUgLSBDb250ZW50XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmlzLWFmZml4ZWQgLm9yZGVyLXN1bW1hcnkge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteGxnKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgV2lkZSAtIENvbnRhaW5lclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG5AbWVkaWEgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5vcmRlci1zdW1tYXJ5LW1vYiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5vcmRlci1zdW1tYXJ5LW1vYiAuc3VtbWFyeS1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLm9yZGVyLXN1bW1hcnktbW9iIC5zdW1tYXJ5LWNvbnRhaW5lciAub3JkZXItc3VtbWFyeS1hY3Rpb25zIGJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLm1haW4tY29udGVudCB7XG4gICAgbWluLWhlaWdodDogMHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5vcmRlci1zdW1tYXJ5LW1vYiB7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5vcmRlci1zdW1tYXJ5LW1vYiAuc3VtbWFyeS1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgV2lkZSAtIEJvdHRvbSBTdGlja3lcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5ib3R0b20tYWN0aW9uLXN0aWNreS5pcy1maXhlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXdpZHRoKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgV2lkZSAtIE1haW5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmxhZ29tLWxheW91dC13aWRlIC5tYWluLXNpZGViYXIge1xuICBvcmRlcjogMjtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAucGFuZWwtc2lkZWJhciA+IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMlIC0gMTZweCk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmhpZGRlbi1zbSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgV2lkZSAtIE9yZGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzE5Ljk4cHgpIHtcbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgI3N0aWNreS1zaWRlYmFyLmlzLWFmZml4ZWQgLmlubmVyLXdyYXBwZXItc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5tYWluLWdyaWQtb3JkZXIgLm1haW4tY29udGVudCAub3JkZXItc2lkZWJhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLm1haW4tZ3JpZC1vcmRlciAubWFpbi1jb250ZW50IC5vcmRlci1jb250ZW50IHtcbiAgICBmbGV4OiB1bnNldDsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAub3JkZXItc3VtbWFyeS1tb2IgLnRvdGFsLWR1ZS10b2RheSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLm9yZGVyLXN1bW1hcnktbW9iIC5idG4uaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5jYXRlZ29yaWVzLWNvbGxhcHNlZC52aXNpYmxlLXhzIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAub3JkZXItc3VtbWFyeS1tb2Ige1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXdpZHRoKTtcbiAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbmF2YmFyLWZpeGVkKTtcbiAgICB3aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICBib3R0b206IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICByaWdodDogMDsgfVxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5vcmRlci1zdW1tYXJ5LW1vYiAuYnRuIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAub3JkZXItc3VtbWFyeS1tb2Ige1xuICAgIGxlZnQ6IDA7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk5hdmlnYXRpb24gTWVudSBvbiBNb2JpbGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbmF2YmFyLWZpeGVkKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IHZhcigtLW1vYi1hcHAtbmF2LXdpZHRoKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1tb2ItYXBwLW5hdi1tZW51LXBhZGRpbmctaCkgMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYXBwLW5hdi1sZWZ0LWJveC1zaGFkb3cpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1vYi1hcHAtbmF2LWJnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtMSAqIHZhcigtLW1vYi1hcHAtbmF2LXdpZHRoKSAtIDI0cHgpKTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubG9nbyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikge1xuICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1jb2xvcik7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWhvdmVyLWJnKTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGk6Zmlyc3QtY2hpbGQsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzLXZpc2libGUgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cy12aXNpYmxlID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1ob3Zlci1iZyk7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSA+IHN2ZzpmaXJzdC1jaGlsZCwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLnNmSG92ZXIgPiBhOm5vdCguYnRuKSA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2ZIb3ZlciA+IGE6bm90KC5idG4pID4gc3ZnOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmU6bm90KC5vcGVuKSA+IGE6bm90KC5idG4pLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3Blbjpub3QoLm9wZW4pID4gYTpub3QoLmJ0bikge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstYWN0aXZlLWJnKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pID4gaSxcbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSA+IGksXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pID4gLmxzLWNhcmV0IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctdikgdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLWgpO1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gc3ZnICsgLml0ZW0tdGV4dCxcbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpbWcgKyAuaXRlbS10ZXh0LFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGkgKyAuaXRlbS10ZXh0LFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgKyAuaXRlbS10ZXh0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktbmF2LWxpbmstaWNvbi1zcGFjaW5nLWxnKTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gc3ZnLFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1zdmctaWNvbi1zaXplKTtcbiAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtc3ZnLWljb24tc2l6ZSk7IH1cbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiBpbWcge1xuICAgICAgICAgIGhlaWdodDogdW5zZXQ7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaTpub3QoLm9wZW4pID4gYTpub3QoLmJ0bik6aG92ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1ob3Zlci1wYWRkaW5nLWgpICsgdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLWgpKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5zaG93LCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuaXRlbS1vcGVuLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2ZIb3ZlciB7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7IH1cbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSAuZHJvcGRvd24tbWVudSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5zaG93IC5kcm9wZG93bi1tZW51LCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuaXRlbS1vcGVuIC5kcm9wZG93bi1tZW51LCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuc2ZIb3ZlciAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGE6bm90KC5idG4pID4gc3ZnICsgLml0ZW0tdGV4dCxcbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5uYXYtaXRlbS10ZXh0LW9ubHkgPiBhOm5vdCguYnRuKSA+IGkgKyAuaXRlbS10ZXh0LFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciArIC5pdGVtLXRleHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLXRleHQtb25seSA+IGE6bm90KC5idG4pOmhvdmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctaCk7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5uYXYtaXRlbS10ZXh0LW9ubHkgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctaCk7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kYXJrLW1vZGUtc3dpdGNoZXIgbGFiZWwge1xuICAgICAgICBtYXJnaW46IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy12KSB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctaCk7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kYXJrLW1vZGUtc3dpdGNoZXIuaXMtcmlnaHQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAycHggdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tcGFkZGluZy1oKSB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1wYWRkaW5nLXYpO1xuICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctaCkgKyBjYWxjKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXN2Zy1pY29uLXNpemUpIC8gMikpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWJvcmRlci1sZWZ0KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS11aS1uYXYtbGluay1ib3JkZXItcmFkaXVzKSB2YXIoLS11aS1uYXYtbGluay1ib3JkZXItcmFkaXVzKSAwOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkgPiBhOm5vdCguYnRuKSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpID4gYTpub3QoLmJ0biksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tcGFkZGluZy1oKSAtIGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSkgLyAyKSk7IH1cbiAgICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpID4gYTpub3QoLmJ0bikgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSA+IGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGNhbGMoKHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLXNpemUpIC0gdmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSkpIC8gMiArIHZhcigtLXNwYWNpbmctMngpKSAwIGNhbGMoKHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLXNpemUpIC0gdmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSkpIC8gMik7IH1cbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaS5uYXYtZGl2aWRlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLm5hdi1kaXZpZGVyLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLm5hdi1kaXZpZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGk6aG92ZXI6bm90KC5hY3RpdmUpID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaTpmb2N1czpub3QoLmFjdGl2ZSkgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpOmFjdGl2ZTpub3QoLmFjdGl2ZSkgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6aG92ZXI6bm90KC5hY3RpdmUpID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzOm5vdCguYWN0aXZlKSA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmU6bm90KC5hY3RpdmUpID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3Zlcjpub3QoLmFjdGl2ZSkgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzOm5vdCguYWN0aXZlKSA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlOm5vdCguYWN0aXZlKSA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWhvdmVyLXBhZGRpbmctaCkpOyB9XG4gICAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaTpob3Zlcjpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1pbmZvLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpOmhvdmVyOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWRhbmdlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaTpmb2N1czpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1pbmZvLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpOmZvY3VzOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWRhbmdlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaTphY3RpdmU6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgPiBsaTphY3RpdmU6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtZGFuZ2VyLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6aG92ZXI6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWRhbmdlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1czpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1kYW5nZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmU6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmFjdGl2ZTpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1kYW5nZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXI6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3Zlcjpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1kYW5nZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXM6bm90KC5hY3RpdmUpID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1czpub3QoLmFjdGl2ZSkgPiBhIC5iYWRnZS1kYW5nZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlOm5vdCguYWN0aXZlKSA+IGEgLmJhZGdlLWRhbmdlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEycHgpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkuYWN0aXZlID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWxpbmstaG92ZXItcGFkZGluZy1oKSk7IH1cbiAgICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSA+IGxpLmFjdGl2ZSA+IGEgLmJhZGdlLWluZm8sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkuYWN0aXZlID4gYSAuYmFkZ2UtZGFuZ2VyLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlID4gYSAuYmFkZ2UtaW5mbywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSA+IGEgLmJhZGdlLWRhbmdlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhIC5iYWRnZS1pbmZvLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGEgLmJhZGdlLWRhbmdlciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctM3gpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkgLmJhZGdlLWluZm8sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkgLmJhZGdlLWRhbmdlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpIC5iYWRnZS1pbmZvLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgLmJhZGdlLWRhbmdlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSAuYmFkZ2UtaW5mbywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSAuYmFkZ2UtZGFuZ2VyIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpID4gbGkgLm1lbnUtaXRlbS1jb250ZW50LCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgLm1lbnUtaXRlbS1jb250ZW50LCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgZmxleC1ncm93OiAxOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItY29sbGFwc2UgLm5hdi1oZWFkZXItaXRlbSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1jb2xsYXBzZSAubmF2LWhlYWRlci1pdGVtIC5uYXYtaGVhZGVyLXRleHQge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmRyb3Bkb3duLW1lbnUtY29sbGFwc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMtbGcpO1xuICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgICBwYWRkaW5nOiA2cHggMDtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCkpO1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1tZW51LWNvbGxhcHNlIC5uYXYtZGl2aWRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWNvbGxhcHNlIC5uYXYtaGVhZGVyLWl0ZW0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LXBhcmVudCArIC5kcm9wZG93bi1tZW51LXBhcmVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAubmF2LWhlYWRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LWxpc3Qge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLXVpLW5hdi1saW5rLWJvcmRlci1yYWRpdXMpIHZhcigtLXVpLW5hdi1saW5rLWJvcmRlci1yYWRpdXMpIDA7IH1cbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtID4gYSA+IHN2ZyxcbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtID4gYSA+IGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xuICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1pdGVtID4gYSA+IGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiB1bnNldDsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29udGVudCAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtc2lkZWJhciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1jb250ZW50IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1ncmFwaGljLnByZWRlZmluZWQtZ3JhcGhpYyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGhlaWdodDogNzJweDsgfVxuICAgICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWdyYXBoaWMucHJlZGVmaW5lZC1ncmFwaGljIC5wcm9tby1zbGlkZXItaWNvbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDcycHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyA+IGltZyxcbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LXNpZGViYXItZ3JhcGhpYyA+IHN2ZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWdyYXBoaWMgKyAuZHJvcGRvd24tbWVudS1zaWRlYmFyLWRlc2Mge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMgLmNsaWVudC1hbGVydHMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGlbbWVudWl0ZW1uYW1lPVwiQWxlcnRfMFwiXSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikge1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pID4gaSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4OyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLWJ0biB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctdikgdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLWgpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkubmF2LWl0ZW0tYnRuIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1wYWRkaW5nLWgpICsgY2FsYyh2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1zdmctaWNvbi1zaXplKSAvIDIgLSB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctaCkpKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm5hdi1pdGVtLWJ0biArIC5uYXYtaXRlbS1idG4ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstYWN0aXZlLWJnKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUge1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLXVpLW5hdi1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1vcGVuLWJnKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmhvdmVyLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpmb2N1cywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpob3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1cywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWxpbmstaG92ZXItYmcpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpob3ZlciA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmZvY3VzID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6aG92ZXIgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpob3ZlciA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpmb2N1cyA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTphY3RpdmUgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6aG92ZXIgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1cyA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmFjdGl2ZSA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTphY3RpdmUgPiBhID4gaSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWxpbmstaWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUgYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUgYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstZm9udC1zaXplKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1mb250LXdlaWdodCk7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSxcbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGkge1xuICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tY29sb3IpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcbiAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tc2l6ZSk7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLml0ZW0tdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gLml0ZW0tdGV4dC5pdGVtLXRleHQtYmFkZ2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgbGkgPiBhID4gaSB7XG4gICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtbGVmdC1kcm9wZG93bi1pY29uLXNpemUpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1hcHAtbmF2LWxlZnQtZHJvcGRvd24taWNvbi1zaXplKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhIC5tZW51LWl0ZW0tY29udGVudCAubWVudS1pdGVtLWRlc2Mge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7IH1cbiAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWljb24tY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWljb24tY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWJnKTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikub3BlbiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gPiBzdmc6Zmlyc3QtY2hpbGQsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuc2ZIb3ZlciA+IHN2ZzpmaXJzdC1jaGlsZCwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLmFjdGl2ZSA+IHN2ZzpmaXJzdC1jaGlsZCwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBzdmc6Zmlyc3QtY2hpbGQsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzID4gc3ZnOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmJhZGdlLWRvdCB7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmU6bm90KC5vcGVuKSA+IGE6bm90KC5idG4pIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtYmcpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0biksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kYXJrLW1vZGUtc3dpdGNoZXIuaXMtcmlnaHQ6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tZGVzYyB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktZmFkZWQtY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIC5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuIC5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUge1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWJsb2NrLWRpdmlkZXItYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1vcGVuLWJnLW9uLXByaW1hcnkpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IC5iYWRnZS1kb3Qge1xuICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRhcmstbW9kZS1zd2l0Y2hlci5pcy1yaWdodDpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbSxcbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW0sXG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbSBiLFxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW0gc3BhbiA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtIGIsXG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW0gc3BhbiA+IGkge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpub3QoLmJ0biksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0biksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGE6bm90KC5idG4pLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0biksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6aG92ZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6Zm9jdXMsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6aG92ZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWJnKTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmhvdmVyID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpmb2N1cyA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6Zm9jdXMgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cyA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmhvdmVyID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6Zm9jdXMgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTphY3RpdmUgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cyA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmZvY3VzID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmFjdGl2ZSA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTphY3RpdmUgPiBhID4gaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWljb24tY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtYmcpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmUgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhID4gaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW06bm90KC5jb2xsYXBzZWQpLFxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIsXG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpmb2N1cywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW06bm90KC5jb2xsYXBzZWQpLFxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmhvdmVyLFxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSBiLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgc3BhbiA+IGksXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmhvdmVyIGIsXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmhvdmVyIHNwYW4gPiBpLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBiLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBzcGFuID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW06bm90KC5jb2xsYXBzZWQpIGIsXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgc3BhbiA+IGksXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpob3ZlciBiLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIgc3BhbiA+IGksXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBiLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW06Zm9jdXMgc3BhbiA+IGkge1xuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWljb24tY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAuZHJvcGRvd24tbWVudS1jb2xsYXBzZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1vcGVuLWJnLW9uLXByaW1hcnkpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LXByaW1hcnksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtcHJpbWFyeSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyLTIpICFpbXBvcnRhbnQ7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtaW5mbywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1pbmZvIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1kYW5nZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtZGFuZ2VyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci0yKSAhaW1wb3J0YW50OyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LXdhcm5pbmcsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtd2FybmluZyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtd2FybmluZy1saWdodGVyLTIpICFpbXBvcnRhbnQ7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudS5jbGllbnQtYWxlcnRzID4gbGkgPiBhOm5vdCguYnRuKSBpLnRleHQtc3VjY2VzcywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1zdWNjZXNzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51LmNsaWVudC1hbGVydHMgPiBsaTpub3QoOmxhc3Qtb2YtdHlwZSk6YWZ0ZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdC5jbGllbnQtYWxlcnRzID4gbGk6bm90KDpsYXN0LW9mLXR5cGUpOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmRyb3Bkb3duLW1lZ2EgLm1lbnUtaXRlbS1jb250ZW50IC5tZW51LWl0ZW0tZGVzYyB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktZmFkZWQtY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5scyB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG4gIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stYmcpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWNvbG9yKTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staWNvbi1jb2xvcik7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKSA+IGkge1xuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWljb24tY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikub3BlbiwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpob3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItYmcpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5vcGVuID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLm9wZW4gPiBzdmc6Zmlyc3QtY2hpbGQsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5zZkhvdmVyID4gaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pLnNmSG92ZXIgPiBzdmc6Zmlyc3QtY2hpbGQsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKS5hY3RpdmUgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikuYWN0aXZlID4gc3ZnOmZpcnN0LWNoaWxkLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpOmZpcnN0LWNoaWxkLFxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiBzdmc6Zmlyc3QtY2hpbGQsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IHN2ZzpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSA+IGE6bm90KC5idG4pIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiAuYmFkZ2UtZG90IHtcbiAgICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmU6bm90KC5vcGVuKSA+IGE6bm90KC5idG4pIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWFjdGl2ZS1iZyk7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSA+IGk6Zmlyc3QtY2hpbGQsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiA+IGE6bm90KC5idG4pID4gaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staWNvbi1hY3RpdmUtY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kYXJrLW1vZGUtc3dpdGNoZXIuaXMtcmlnaHQ6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYSAubWVudS1pdGVtLWNvbnRlbnQgLm1lbnUtaXRlbS1kZXNjIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1mYWRlZC1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLmFjdGl2ZSAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5hY3RpdmUgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiAuZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5vcGVuIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkub3BlbiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSB7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLXNlY29uZGFyeS1ibG9jay1kaXZpZGVyLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpLm9wZW4sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLW9wZW4tYmctb24tc2Vjb25kYXJ5KTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IC5iYWRnZS1kb3Qge1xuICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kYXJrLW1vZGUtc3dpdGNoZXIuaXMtcmlnaHQ6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbSxcbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtLFxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW0gYixcbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW0gc3BhbiA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5uYXYtaGVhZGVyLWl0ZW0gYixcbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtIHNwYW4gPiBpIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1pY29uLWhvdmVyLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOm5vdCguYnRuKSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0biksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkgPiBhOm5vdCguYnRuKSBzcGFuLm1lbnUtaXRlbS10aXRsZSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6bm90KC5idG4pID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpub3QoLmJ0bikgc3Bhbi5tZW51LWl0ZW0tdGl0bGUgPiBpIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaWNvbi1ob3Zlci1jb2xvcik7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpob3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmZvY3VzLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpob3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpmb2N1cywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItYmcpOyB9XG4gICAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpob3ZlciA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpmb2N1cyA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTphY3RpdmUgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTpob3ZlciA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6Zm9jdXMgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmFjdGl2ZSA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cyA+IGEsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTphY3RpdmUgPiBhIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IGxpOmhvdmVyID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiBsaTpmb2N1cyA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGk6YWN0aXZlID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmFjdGl2ZSA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpOmhvdmVyID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGk6Zm9jdXMgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaTphY3RpdmUgPiBhID4gaSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtOmhvdmVyID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbTpmb2N1cyA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW06YWN0aXZlID4gYSA+IGkge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWljb24tY29sb3IpOyB9XG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0ID4gbGkuYWN0aXZlLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWJnKTsgfVxuICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaS5hY3RpdmUgPiBhLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAgICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlID4gYSA+IGksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgPiAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IGxpLmFjdGl2ZSA+IGEgPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCA+IC5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSA+IGkge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCksXG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmhvdmVyLFxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpmb2N1cywgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCksXG4gICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpob3ZlcixcbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgYixcbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgc3BhbiA+IGksXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51IC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIgYixcbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpob3ZlciBzcGFuID4gaSxcbiAgICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBiLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudSAubmF2LWhlYWRlci1pdGVtOmZvY3VzIHNwYW4gPiBpLCAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSBiLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgc3BhbiA+IGksXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmhvdmVyIGIsXG4gICAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCAubmF2LWhlYWRlci1pdGVtOmhvdmVyIHNwYW4gPiBpLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBiLFxuICAgICAgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QgLm5hdi1oZWFkZXItaXRlbTpmb2N1cyBzcGFuID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1pY29uLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IC5kcm9wZG93bi1tZW51LWNvbGxhcHNlIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLW9wZW4tYmctb24tc2Vjb25kYXJ5KTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LXByaW1hcnksIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1wcmltYXJ5IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LWluZm8sIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1pbmZvIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LWRhbmdlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LWRhbmdlciB7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LXdhcm5pbmcsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC13YXJuaW5nIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpID4gYTpub3QoLmJ0bikgaS50ZXh0LXN1Y2Nlc3MsIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0LmNsaWVudC1hbGVydHMgPiBsaSA+IGE6bm90KC5idG4pIGkudGV4dC1zdWNjZXNzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgLmRyb3Bkb3duLW1lbnUuY2xpZW50LWFsZXJ0cyA+IGxpOm5vdCg6bGFzdC1vZi10eXBlKTphZnRlciwgLmxhZ29tOm5vdCgubmF2LW1vYmlsZS1kcm9wZG93bikgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaSAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2UpIC5kcm9wZG93bi1tZW51LWxpc3QuY2xpZW50LWFsZXJ0cyA+IGxpOm5vdCg6bGFzdC1vZi10eXBlKTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgICAubGFnb206bm90KC5uYXYtbW9iaWxlLWRyb3Bkb3duKSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudSA+IGxpID4gYTpub3QoLmJ0bikgPiAubHMge1xuICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAgIC5sYWdvbTpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5scyB7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgV2lkZSAtIFBhY2thZ2UgLSBwYWdlIHVwZ3JhZGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTYyMHB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlLnBhZ2UtdXBncmFkZSAubWFpbi1jb250ZW50IC5zZWN0aW9uLWJvZHkgLnBhY2thZ2Uge1xuICAgIHBhZGRpbmc6IDI0cHg7IH1cbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZS5wYWdlLXVwZ3JhZGUgLm1haW4tY29udGVudCAuc2VjdGlvbi1ib2R5IC5wYWNrYWdlLWFjdGlvbnMge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlLnBhZ2UtdXBncmFkZSAubWFpbi1jb250ZW50IC5zZWN0aW9uLWJvZHkgLnBhY2thZ2UtYWN0aW9ucyAuYnRuIHtcbiAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhsZyk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Ub3AgTmF2IC0gR2VuZXJhbFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG51bC50b3AtbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICB1bC50b3AtbmF2ID4gbGksXG4gIHVsLnRvcC1uYXYgPiBhOm5vdCguYnRuKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pLCB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmhvdmVyLCB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmZvY3VzLCB1bC50b3AtbmF2ID4gbGkuc2hvdyA+IGE6bm90KC5idG4pOmFjdGl2ZSxcbiAgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0LFxuICB1bC50b3AtbmF2ID4gbGkub3BlbiA+IGE6bm90KC5idG4pLFxuICB1bC50b3AtbmF2ID4gbGkub3BlbiA+IGE6bm90KC5idG4pOmhvdmVyLFxuICB1bC50b3AtbmF2ID4gbGkub3BlbiA+IGE6bm90KC5idG4pOmZvY3VzLFxuICB1bC50b3AtbmF2ID4gbGkub3BlbiA+IGE6bm90KC5idG4pOmFjdGl2ZSxcbiAgdWwudG9wLW5hdiA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0LFxuICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0biksXG4gIHVsLnRvcC1uYXYgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKTpob3ZlcixcbiAgdWwudG9wLW5hdiA+IGxpLmFjdGl2ZSA+IGE6bm90KC5idG4pOmZvY3VzLFxuICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6YWN0aXZlLFxuICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgLml0ZW0tdGV4dCB7XG4gICAgY29sb3I6IHZhcigtLXRvcC1uYXYtbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSA+IGksXG4gICAgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCwgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpob3ZlciA+IGksXG4gICAgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpob3ZlciA+IC5scy1jYXJldCwgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpmb2N1cyA+IGksXG4gICAgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5scy1jYXJldCwgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKTphY3RpdmUgPiBpLFxuICAgIHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLWNhcmV0LFxuICAgIHVsLnRvcC1uYXYgPiBsaS5zaG93ID4gYTpub3QoLmJ0bikgLml0ZW0tdGV4dCA+IGksXG4gICAgdWwudG9wLW5hdiA+IGxpLnNob3cgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0ID4gLmxzLWNhcmV0LFxuICAgIHVsLnRvcC1uYXYgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgPiBpLFxuICAgIHVsLnRvcC1uYXYgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsXG4gICAgdWwudG9wLW5hdiA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKTpob3ZlciA+IGksXG4gICAgdWwudG9wLW5hdiA+IGxpLm9wZW4gPiBhOm5vdCguYnRuKTpob3ZlciA+IC5scy1jYXJldCxcbiAgICB1bC50b3AtbmF2ID4gbGkub3BlbiA+IGE6bm90KC5idG4pOmZvY3VzID4gaSxcbiAgICB1bC50b3AtbmF2ID4gbGkub3BlbiA+IGE6bm90KC5idG4pOmZvY3VzID4gLmxzLWNhcmV0LFxuICAgIHVsLnRvcC1uYXYgPiBsaS5vcGVuID4gYTpub3QoLmJ0bik6YWN0aXZlID4gaSxcbiAgICB1bC50b3AtbmF2ID4gbGkub3BlbiA+IGE6bm90KC5idG4pOmFjdGl2ZSA+IC5scy1jYXJldCxcbiAgICB1bC50b3AtbmF2ID4gbGkub3BlbiA+IGE6bm90KC5idG4pIC5pdGVtLXRleHQgPiBpLFxuICAgIHVsLnRvcC1uYXYgPiBsaS5vcGVuID4gYTpub3QoLmJ0bikgLml0ZW0tdGV4dCA+IC5scy1jYXJldCxcbiAgICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgPiBpLFxuICAgIHVsLnRvcC1uYXYgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCxcbiAgICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6aG92ZXIgPiBpLFxuICAgIHVsLnRvcC1uYXYgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKTpob3ZlciA+IC5scy1jYXJldCxcbiAgICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpLFxuICAgIHVsLnRvcC1uYXYgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5scy1jYXJldCxcbiAgICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6YWN0aXZlID4gaSxcbiAgICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLWNhcmV0LFxuICAgIHVsLnRvcC1uYXYgPiBsaS5hY3RpdmUgPiBhOm5vdCguYnRuKSAuaXRlbS10ZXh0ID4gaSxcbiAgICB1bC50b3AtbmF2ID4gbGkuYWN0aXZlID4gYTpub3QoLmJ0bikgLml0ZW0tdGV4dCA+IC5scy1jYXJldCB7XG4gICAgICBjb2xvcjogdmFyKC0tdG9wLW5hdi1saW5rLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuICB1bC50b3AtbmF2ID4gbGk6bm90KC5uYXYtaXRlbS10ZXh0LW9ubHkpID4gYSAuaXRlbS10ZXh0Lml0ZW0tdGV4dC1iYWRnZSAuYmFkZ2UtZG90LFxuICB1bC50b3AtbmF2ID4gbGk6bm90KC5uYXYtaXRlbS10ZXh0LW9ubHkpID4gYSAuaXRlbS10ZXh0Lml0ZW0tdGV4dC1iYWRnZSAuYmFkZ2UtaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB1bC50b3AtbmF2ID4gbGk6bm90KC5uYXYtaXRlbS1pY29uLW9ubHkpID4gYSA+IGk6bm90KC5scy1jYXJldCkge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgdWwudG9wLW5hdiA+IGxpLm5hdi1pdGVtLWljb24tb25seSA+IGE6aGFzKD4gc3Bhbi5iYWRnZTpub3QoLmhpZGRlbik6bm90KC5vcGFjaXR5LTApKSB7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgICB1bC50b3AtbmF2ID4gbGkubmF2LWl0ZW0taWNvbi1vbmx5ID4gYTpoYXMoPiBzcGFuLmJhZGdlOm5vdCguaGlkZGVuKTpub3QoLm9wYWNpdHktMCkpIC5iYWRnZSB7XG4gICAgICByaWdodDogOHB4OyB9XG4gIHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiB2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy12KSB2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy1oKTtcbiAgICBjb2xvcjogdmFyKC0tdG9wLW5hdi1saW5rLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IGksXG4gICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiAubHMtY2FyZXQsXG4gICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XG4gICAgICBjb2xvcjogdmFyKC0tdG9wLW5hdi1saW5rLWljb24tY29sb3IpO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgIHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyLCB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cywgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6YWN0aXZlIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IHZhcigtLXRvcC1uYXYtbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgIHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gaSxcbiAgICAgIHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pOmhvdmVyID4gLmxzLWNhcmV0LFxuICAgICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6aG92ZXIgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSwgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiBpLFxuICAgICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6Zm9jdXMgPiAubHMtY2FyZXQsXG4gICAgICB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTpmb2N1cyA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpLCB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKTphY3RpdmUgPiBpLFxuICAgICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLmxzLWNhcmV0LFxuICAgICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bik6YWN0aXZlID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGkge1xuICAgICAgICBjb2xvcjogdmFyKC0tdG9wLW5hdi1saW5rLWljb24taG92ZXItY29sb3IpOyB9XG4gICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiBzdmcge1xuICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7IH1cbiAgICB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IC5scy1jYXJldCB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSA+IGk6bm90KC5scy1jYXJldCkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc2l6ZSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc2l6ZSk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktbmF2LWxpbmstaWNvbi1zaXplKTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAgIHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gaTpub3QoLmxzLWNhcmV0KSArIC5iYWRnZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIHJpZ2h0OiAtNHB4OyB9XG4gICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiBzdmcsXG4gICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gc3ZnIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpOyB9XG4gICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiAuY2xpZW50LWF2YXRhciArIC5pdGVtLXRleHQ6bm90KDplbXB0eSksXG4gICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiAuY2xpZW50LWF2YXRhciArIC5hY3RpdmUtY2xpZW50LFxuICAgIHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciArIC5pdGVtLXRleHQ6bm90KDplbXB0eSksXG4gICAgdWwudG9wLW5hdiA+IGxpID4gYTpub3QoLmJ0bikgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyICsgLmFjdGl2ZS1jbGllbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc3BhY2luZyk7IH1cbiAgICB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKS5idG4tbG9nZ2VkLWluLWFkbWluIGkge1xuICAgICAgY29sb3I6IHZhcigtLXRvcC1uYXYtbGluay1pY29uLWNvbG9yKTtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIHVsLnRvcC1uYXYgPiBsaSA+IGE6bm90KC5idG4pIC5sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgICB1bC50b3AtbmF2ID4gbGkgPiBhOm5vdCguYnRuKSAubG0tYmFza2V0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDsgfVxuICB1bC50b3AtbmF2ID4gbGkub3JkZXItbmVnLTEgPiBhOm5vdCguYnRuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIHVsLnRvcC1uYXYgPiBsaSA+IGxhYmVsLnN3aXRjaCB7XG4gICAgbWFyZ2luOiB2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy12KSB2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy1oKTsgfVxuICB1bC50b3AtbmF2ID4gbGk6bGFzdC1jaGlsZCA+IGE6bm90KC5idG4pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIHVsLnRvcC1uYXYgPiBsaTpsYXN0LWNoaWxkID4gbGFiZWwuc3dpdGNoIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgdWwudG9wLW5hdiA+IGxpID4gLmJ0biB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIHVsLnRvcC1uYXYgPiBsaS5uYXYtaXRlbS1jYXJ0IC5iYWRnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gIHVsLnRvcC1uYXYgLnRvb2x0aXAtaW5uZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMjAwcHg7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcbiAgICB3aWR0aDogMjUwcHg7IH1cbiAgdWwudG9wLW5hdiAjbGFuZ3VhZ2VDaG9vc2VyQ29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMjg4cHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICByaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgdWwudG9wLW5hdiAuYWNjb3VudCAuZHJvcGRvd24tbWVudSB7XG4gICAgbWluLXdpZHRoOiAyMDJweDsgfVxuICB1bC50b3AtbmF2IC5hZG1pbi1tYXNxdWVyYWRlLW5vdGljZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgbWFyZ2luOiAxMnB4OyB9XG4gIHVsLnRvcC1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogY2FsYygxMDAlICsgdmFyKC0tc3BhY2luZy0xeCkpOyB9XG4gICAgdWwudG9wLW5hdiAuZHJvcGRvd24tbWVudTpub3QoLmRyb3Bkb3duLWxpc3QpIHtcbiAgICAgIG1heC1oZWlnaHQ6IHZhcigtLW5hdmJhci1kcm9wZG93bi1tYXgtaGVpZ2h0KTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblRvcCBOYXYgLSBSZXNwb25zaXZlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICB1bC50b3AtbmF2IGxpLm5hdi1pdGVtLXRleHQtb25seSAubGFuZ3VhZ2UtZmxhZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB1bC50b3AtbmF2IGxpLm5hdi1pdGVtLWNhcnQgPiBhOm5vdCguYnRuKSB7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tdG9wLW5hdi1saW5rLXBhZGRpbmctaCk7IH1cbiAgdWwudG9wLW5hdiBsaS5uYXYtaXRlbS1jYXJ0Lm5hdi1pdGVtLWljb24tb25seSA+IGEge1xuICAgIG1heC1oZWlnaHQ6IDM2cHg7IH1cbiAgdWwudG9wLW5hdiBsaS5uYXYtaXRlbS1jYXJ0Lm5hdi1pdGVtLWljb24tb25seSAuYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGModmFyKC0tdG9wLW5hdi1saW5rLXBhZGRpbmctdikgLSAycHgpO1xuICAgIHJpZ2h0OiBjYWxjKHZhcigtLXRvcC1uYXYtbGluay1wYWRkaW5nLWgpIC0gMTRweCk7XG4gICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDsgfVxuICB1bC50b3AtbmF2IGxpLm5hdi1pdGVtLXRleHQtb25seSBhOm5vdCguYnRuKSBpLFxuICB1bC50b3AtbmF2IGxpLm5hdi1pdGVtLXRleHQtb25seSBhOm5vdCguYnRuKSBzdmcsXG4gIHVsLnRvcC1uYXYgbGkubmF2LWl0ZW0tdGV4dC1vbmx5IGE6bm90KC5idG4pIGltZyxcbiAgdWwudG9wLW5hdiBsaS5uYXYtaXRlbS10ZXh0LW9ubHkgYTpub3QoLmJ0bikgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICB1bC50b3AtbmF2IGxpLmFjY291bnQgLml0ZW0tdGV4dCxcbiAgdWwudG9wLW5hdiBsaS5hY2NvdW50ID4gYSA+IGIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB1bC50b3AtbmF2IGxpOm5vdCgubmF2LWl0ZW0tY3VycmVuY3kpID4gYSAuaXRlbS10ZXh0LFxuICB1bC50b3AtbmF2IGxpOm5vdCgubmF2LWl0ZW0tY3VycmVuY3kpID4gYSAuYWN0aXZlLWNsaWVudCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHVsLnRvcC1uYXYgbGk6bm90KC5uYXYtaXRlbS1jdXJyZW5jeSkgPiBhIC5jbGllbnQtYXZhdGFyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgdWwudG9wLW5hdiAubmF2LWl0ZW0tY2FydCAuYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICByaWdodDogLTRweDsgfSB9XG5cbkBtZWRpYSBwcmludCB7XG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIGE6bm90KC5idG4pIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50OyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtYmFzZSkgc29saWQgI2FkYjViZDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIEBwYWdlIHtcbiAgICBzaXplOiB2YXIoLS1wcmludC1wYWdlLXNpemUpOyB9XG4gIGJvZHkge1xuICAgIG1pbi13aWR0aDogdmFyKC0tcHJpbnQtYm9keS1taW4td2lkdGgpICFpbXBvcnRhbnQ7IH1cbiAgLmNvbnRhaW5lciB7XG4gICAgbWluLXdpZHRoOiB2YXIoLS1wcmludC1ib2R5LW1pbi13aWR0aCkgIWltcG9ydGFudDsgfVxuICAubmF2YmFyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5iYWRnZSB7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtYmFzZSkgc29saWQgIzAwMDsgfVxuICAudGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDsgfVxuICAgIC50YWJsZSB0ZCxcbiAgICAudGFibGUgdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gIC50YWJsZS1ib3JkZXJlZCB0aCxcbiAgLnRhYmxlLWJvcmRlcmVkIHRkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7IH1cbiAgLnRhYmxlLWRhcmsge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gICAgLnRhYmxlLWRhcmsgdGgsXG4gICAgLnRhYmxlLWRhcmsgdGQsXG4gICAgLnRhYmxlLWRhcmsgdGhlYWQgdGgsXG4gICAgLnRhYmxlLWRhcmsgdGJvZHkgKyB0Ym9keSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7IH1cbiAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7IH0gfVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1tb25vc3BhY2UpO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5jb2RlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1jb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2RlLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29kZS1iZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xuICBwYWRkaW5nOiAwIDRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb2RlLWxpbmUtaGVpZ2h0KTsgfVxuICBhID4gY29kZSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxua2JkIHtcbiAgcGFkZGluZzogdmFyKC0ta2JkLXBhZGRpbmcteSkgdmFyKC0ta2JkLXBhZGRpbmcteCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0ta2JkLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0ta2JkLWJnKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLWtiZC1ib3gtc2hhZG93KTsgfVxuICBrYmQga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tbmVzdGVkLWtiZC1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1uZXN0ZWQta2JkLWZvbnQtd2VpZ2h0KTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLXByZS1wYWRkaW5nKTtcbiAgbWFyZ2luOiAwIDAgMTJweDtcbiAgZm9udC1zaXplOiB2YXIoLS1wcmUtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXByZS1saW5lLWhlaWdodCk7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogdmFyKC0tcHJlLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJlLWJnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJlLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXByZS1ib3JkZXItcmFkaXVzKTsgfVxuICBwcmUgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmNvZGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktbW9ub3NwYWNlKTsgfVxuXG50YWJsZSxcbi50YWJsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGFibGUtYmcpO1xuICBib3JkZXItY29sbGFwc2U6IHVuc2V0O1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgLyogSUUgMTEgKi8gfVxuICB0YWJsZTpiZWZvcmUsXG4gIC50YWJsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDdweDtcbiAgICB0b3A6IDdweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1saWdodGVyLTQpOyB9XG4gIHRhYmxlIC5zc2wtaW5mbyBpbWcsXG4gIC50YWJsZSAuc3NsLWluZm8gaW1nIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgd2lkdGg6IDEycHg7IH1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS10YWJsZS10ZC1wYWRkaW5nKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXRhYmxlLXRkLXBhZGRpbmcpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG50YWJsZSxcbi50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgdGFibGU6YmVmb3JlLFxuICAudGFibGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lOyB9XG4gIHRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICB0YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudGFibGUgPiB0Ym9keSA+IHRyID4gdGgge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLXRoLWJnKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdGFibGUtYm9yZGVyLWNvbG9yKTtcbiAgICBoZWlnaHQ6IHZhcigtLXRhYmxlLXRoLWhlaWdodCk7XG4gICAgcGFkZGluZzogdmFyKC0tdGFibGUtdGgtcGFkZGluZyk7XG4gICAgdmVydGljYWwtYWxpZ246IHZhcigtLXRhYmxlLXZlcnRpY2FsLWFsaWduKTtcbiAgICBjb2xvcjogdmFyKC0tdGFibGUtdGgtZm9udC1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS10YWJsZS10aC1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10YWJsZS10aC1mb250LXdlaWdodCk7XG4gICAgdGV4dC1hbGlnbjogdmFyKC0tdGFibGUtaG9yaXpvbnRhbC1hbGlnbik7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICB0YWJsZSA+IHRoZWFkID4gdHIgPiB0aDpmb2N1cy12aXNpYmxlLFxuICAgIHRhYmxlID4gdGJvZHkgPiB0ciA+IHRoOmZvY3VzLXZpc2libGUsXG4gICAgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmZvY3VzLXZpc2libGUsXG4gICAgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoOmZvY3VzLXZpc2libGUge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgICB0YWJsZSA+IHRoZWFkID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICB0YWJsZSA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAudGFibGUgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tdGFibGUtdGgtZmlyc3QtbGFzdC1wYWRkaW5nKTsgfVxuICAgIHRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gICAgdGFibGUgPiB0Ym9keSA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgICAudGFibGUgPiB0aGVhZCA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgICAudGFibGUgPiB0Ym9keSA+IHRyID4gdGg6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS10YWJsZS10aC1maXJzdC1sYXN0LXBhZGRpbmcpOyB9XG4gIHRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuICB0YWJsZSA+IHRmb290ID4gdHIgPiB0ZCxcbiAgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLXRkLWJnKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdGFibGUtYm9yZGVyLWNvbG9yKTtcbiAgICBoZWlnaHQ6IHZhcigtLXRhYmxlLXRkLWhlaWdodCk7XG4gICAgcGFkZGluZzogdmFyKC0tdGFibGUtdGQtcGFkZGluZyk7XG4gICAgdmVydGljYWwtYWxpZ246IHZhcigtLXRhYmxlLXZlcnRpY2FsLWFsaWduKTtcbiAgICBjb2xvcjogdmFyKC0tdGFibGUtdGQtZm9udC1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS10YWJsZS10ZC1mb250LXNpemUpO1xuICAgIHRleHQtYWxpZ246IHZhcigtLXRhYmxlLWhvcml6b250YWwtYWxpZ24pOyB9XG4gICAgdGFibGUgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gICAgdGFibGUgPiB0Zm9vdCA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAgIC50YWJsZSA+IHRmb290ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXRhYmxlLXRkLWZpcnN0LWxhc3QtcGFkZGluZyk7IH1cbiAgICB0YWJsZSA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAgIHRhYmxlID4gdGZvb3QgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gICAgLnRhYmxlID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdGFibGUtdGQtZmlyc3QtbGFzdC1wYWRkaW5nKTsgfVxuICAgIHRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIGE6bm90KC5idG4pOmZvY3VzLXZpc2libGUsXG4gICAgdGFibGUgPiB0Zm9vdCA+IHRyID4gdGQgYTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSxcbiAgICAudGFibGUgPiB0Ym9keSA+IHRyID4gdGQgYTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSxcbiAgICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGQgYTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1iZykgMHB4IDBweCAwcHggM3B4LCB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXIpIDBweCAwcHggMHB4IDRweDsgfVxuICB0YWJsZSA+IHRib2R5ID4gdHJbZGF0YS11cmxdLFxuICAudGFibGUgPiB0Ym9keSA+IHRyW2RhdGEtdXJsXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgdGFibGUgPiB0Ym9keSA+IHRyW2RhdGEtdXJsXSA+IHRkLFxuICAgIC50YWJsZSA+IHRib2R5ID4gdHJbZGF0YS11cmxdID4gdGQge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgdGFibGUgPiB0Ym9keSA+IHRyW2RhdGEtdXJsXTpoYXModGQ6Zm9jdXMtdmlzaWJsZSksXG4gICAgLnRhYmxlID4gdGJvZHkgPiB0cltkYXRhLXVybF06aGFzKHRkOmZvY3VzLXZpc2libGUpIHtcbiAgICAgIG91dGxpbmU6IGJsYWNrIHNvbGlkIDFweDsgfVxuICAgICAgdGFibGUgPiB0Ym9keSA+IHRyW2RhdGEtdXJsXTpoYXModGQ6Zm9jdXMtdmlzaWJsZSkgdGQsXG4gICAgICAudGFibGUgPiB0Ym9keSA+IHRyW2RhdGEtdXJsXTpoYXModGQ6Zm9jdXMtdmlzaWJsZSkgdGQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10YWJsZS1iZy1ob3Zlcik7IH1cbiAgICB0YWJsZSA+IHRib2R5ID4gdHJbZGF0YS11cmxdOmhvdmVyID4gdGQsIHRhYmxlID4gdGJvZHkgPiB0cltkYXRhLXVybF06Zm9jdXMtdmlzaWJsZSA+IHRkLFxuICAgIC50YWJsZSA+IHRib2R5ID4gdHJbZGF0YS11cmxdOmhvdmVyID4gdGQsXG4gICAgLnRhYmxlID4gdGJvZHkgPiB0cltkYXRhLXVybF06Zm9jdXMtdmlzaWJsZSA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLWJnLWhvdmVyKTsgfVxuICB0YWJsZSA+IGNhcHRpb24gKyB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGgsXG4gIHRhYmxlID4gY2FwdGlvbiArIHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCxcbiAgdGFibGUgPiBjb2xncm91cCArIHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgdGFibGUgPiBjb2xncm91cCArIHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCxcbiAgdGFibGUgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkID4gdGgsXG4gIHRhYmxlID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLFxuICAudGFibGUgPiBjYXB0aW9uICsgdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLFxuICAudGFibGUgPiBjYXB0aW9uICsgdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLFxuICAudGFibGUgPiBjb2xncm91cCArIHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgLnRhYmxlID4gY29sZ3JvdXAgKyB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGQsXG4gIC50YWJsZSA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgLnRhYmxlID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCA+IHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9XG4gIHRhYmxlID4gdGJvZHkgKyB0Ym9keSxcbiAgLnRhYmxlID4gdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7IH1cblxuLnRhYmxlLWNvbmRlbnNlZCA+IHRoZWFkID4gdHIgPiB0aCxcbi50YWJsZS1jb25kZW5zZWQgPiB0Ym9keSA+IHRyID4gdGgsXG4udGFibGUtY29uZGVuc2VkID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgcGFkZGluZzogdmFyKC0tdGFibGUtY29uZGVuc2VkLWNlbGwtdGgtcGFkZGluZyk7IH1cblxuLnRhYmxlLWNvbmRlbnNlZCA+IHRoZWFkID4gdHIgPiB0ZCxcbi50YWJsZS1jb25kZW5zZWQgPiB0Ym9keSA+IHRyID4gdGQsXG4udGFibGUtY29uZGVuc2VkID4gdGZvb3QgPiB0ciA+IHRkIHtcbiAgcGFkZGluZzogdmFyKC0tdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZyk7IH1cblxuLnRhYmxlLWNvbmRlbnNlZCA+IHRoZWFkID4gdHIgPiB0aCxcbi50YWJsZS1jb25kZW5zZWQgPiB0aGVhZCA+IHRyID4gdGQsXG4udGFibGUtY29uZGVuc2VkID4gdGJvZHkgPiB0ciA+IHRoLFxuLnRhYmxlLWNvbmRlbnNlZCA+IHRib2R5ID4gdHIgPiB0ZCxcbi50YWJsZS1jb25kZW5zZWQgPiB0Zm9vdCA+IHRyID4gdGgsXG4udGFibGUtY29uZGVuc2VkID4gdGZvb3QgPiB0ciA+IHRkIHtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAudGFibGUtY29uZGVuc2VkID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LW9mLXR5cGUsXG4gIC50YWJsZS1jb25kZW5zZWQgPiB0aGVhZCA+IHRyID4gdGQ6Zmlyc3Qtb2YtdHlwZSxcbiAgLnRhYmxlLWNvbmRlbnNlZCA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1vZi10eXBlLFxuICAudGFibGUtY29uZGVuc2VkID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LW9mLXR5cGUsXG4gIC50YWJsZS1jb25kZW5zZWQgPiB0Zm9vdCA+IHRyID4gdGg6Zmlyc3Qtb2YtdHlwZSxcbiAgLnRhYmxlLWNvbmRlbnNlZCA+IHRmb290ID4gdHIgPiB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnRhYmxlLWNvbmRlbnNlZCA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LW9mLXR5cGUsXG4gIC50YWJsZS1jb25kZW5zZWQgPiB0aGVhZCA+IHRyID4gdGQ6bGFzdC1vZi10eXBlLFxuICAudGFibGUtY29uZGVuc2VkID4gdGJvZHkgPiB0ciA+IHRoOmxhc3Qtb2YtdHlwZSxcbiAgLnRhYmxlLWNvbmRlbnNlZCA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LW9mLXR5cGUsXG4gIC50YWJsZS1jb25kZW5zZWQgPiB0Zm9vdCA+IHRyID4gdGg6bGFzdC1vZi10eXBlLFxuICAudGFibGUtY29uZGVuc2VkID4gdGZvb3QgPiB0ciA+IHRkOmxhc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4udGFibGUtY29uZGVuc2VkID4gdGhlYWQgPiB0cjpob3Zlcixcbi50YWJsZS1jb25kZW5zZWQgPiB0Ym9keSA+IHRyOmhvdmVyLFxuLnRhYmxlLWNvbmRlbnNlZCA+IHRmb290ID4gdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7IH1cbiAgLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0aCxcbiAgLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkLFxuICAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGgsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0ZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGFibGUtYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItYm90dG9tOiAwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDBweDsgfVxuICAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCB0ciB0aDpsYXN0LWNoaWxkLFxuICAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSB0ciB0aDpsYXN0LWNoaWxkLFxuICAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCB0ciB0aDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDBweCAhaW1wb3J0YW50OyB9XG4gIC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkIHRyIHRkOmxhc3QtY2hpbGQsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRib2R5IHRyIHRkOmxhc3QtY2hpbGQsXG4gIC50YWJsZS1ib3JkZXJlZCA+IHRmb290IHRyIHRkOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoLFxuICAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDsgfVxuXG4udGFibGUtc3RyaXBlZCA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhYmxlLWJnLWFjY2VudCk7IH1cblxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhYmxlLWJnLWhvdmVyKTsgfVxuXG50YWJsZSBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiB0YWJsZS1jb2x1bW47IH1cblxudGFibGUgdGRbY2xhc3MqPVwiY29sLVwiXSxcbnRhYmxlIHRoW2NsYXNzKj1cImNvbC1cIl0ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuXG4udGFibGUtYWN0aXZlLFxuLnRhYmxlLWFjdGl2ZSA+IHRoLFxuLnRhYmxlLWFjdGl2ZSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFibGUtYmctYWN0aXZlKTsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhYmxlLWJnLWhvdmVyKTsgfVxuICAudGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciA+IHRkLFxuICAudGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWJsZS1iZy1ob3Zlcik7IH1cblxuLnRhYmxlLXN1Y2Nlc3MsXG4udGFibGUtc3VjY2VzcyA+IHRoLFxuLnRhYmxlLXN1Y2Nlc3MgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MtbGlnaHRlci00KTsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMyk7IH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyID4gdGQsXG4gIC50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMyk7IH1cblxuLnRhYmxlLWluZm8sXG4udGFibGUtaW5mbyA+IHRoLFxuLnRhYmxlLWluZm8gPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWluZm8tbGlnaHRlci0zKTsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMik7IH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyID4gdGQsXG4gIC50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMik7IH1cblxuLnRhYmxlLXdhcm5pbmcsXG4udGFibGUtd2FybmluZyA+IHRoLFxuLnRhYmxlLXdhcm5pbmcgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci00KTsgfVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItMyk7IH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyID4gdGQsXG4gIC50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItMyk7IH1cblxuLnRhYmxlLWRhbmdlcixcbi50YWJsZS1kYW5nZXIgPiB0aCxcbi50YWJsZS1kYW5nZXIgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG5cbi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMyk7IH1cbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0ZCxcbiAgLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMyk7IH1cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAwLjAxJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbGluZS1oZWlnaHQtYmFzZSkgKiAwLjc1KTtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSA+IHRib2R5ID4gdHIgPiB0aCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSA+IHRmb290ID4gdHIgPiB0ZCB7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICBib3JkZXI6IDA7IH1cbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpsYXN0LWNoaWxkID4gdGgsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpsYXN0LWNoaWxkID4gdGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0cjpsYXN0LWNoaWxkID4gdGgsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0cjpsYXN0LWNoaWxkID4gdGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7IH0gfVxuXG4jbGlua2VkLWFjY291bnRzIC50YWJsZS1jb250YWluZXIudGFibGUtcmVzcG9uc2l2ZSB7XG4gIG92ZXJmbG93LXg6IHZpc2libGU7IH1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgbWluLXdpZHRoOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IHZhcigtLWxlZ2VuZC1jb2xvcik7XG4gIGJvcmRlcjogMDsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWlucHV0LWxhYmVsLW1hcmdpbi1ib3R0b20pO1xuICBjb2xvcjogdmFyKC0taW5wdXQtbGFiZWwtY29sb3IpO1xuICBmb250LXNpemU6IHZhcigtLWlucHV0LWxhYmVsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1pbnB1dC1sYWJlbC1mb250LXdlaWdodCk7IH1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuc2VsZWN0W211bHRpcGxlXSxcbnNlbGVjdFtzaXplXSB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KTE7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7IH1cblxuaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKSxcbnNlbGVjdDpub3QoLmZvcm0tY29udHJvbCksXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcbiAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taW5wdXQtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0taW5wdXQtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKSxcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpLFxuICAgIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbCksXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lOyB9IH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzLFxuICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzLFxuICAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1pbnB1dC1ib3gtc2hhZG93KSwgdmFyKC0taW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7IH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKTo6cGxhY2Vob2xkZXIsXG4gIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbCk6OnBsYWNlaG9sZGVyLFxuICAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKTpob3ZlcixcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKTpob3ZlcixcbiAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKTpob3ZlcixcbiAgLmZvcm0tY29udHJvbDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0taW5wdXQtaG92ZXItY29sb3IpOyB9XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICAuZm9ybS1jb250cm9sOmhvdmVyOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdmFyKC0taW5wdXQtaG92ZXItcGxhY2Vob2xkZXItY29sb3IpOyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKTpmb2N1cyxcbiAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKTpmb2N1cyxcbiAgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtY29sb3IpOyB9XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICAuZm9ybS1jb250cm9sOmZvY3VzOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtcGxhY2Vob2xkZXItY29sb3IpOyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKTo6LW1zLWV4cGFuZCxcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKTo6LW1zLWV4cGFuZCxcbiAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKTo6LW1zLWV4cGFuZCxcbiAgLmZvcm0tY29udHJvbDo6LW1zLWV4cGFuZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKTpkaXNhYmxlZCwgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOmhvdmVyLCBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLmZvcm0tY29udHJvbCk6ZGlzYWJsZWQ6Zm9jdXMsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF0sIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF06aG92ZXIsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF06Zm9jdXMsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtyZWFkb25seV0sIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtyZWFkb25seV06aG92ZXIsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtyZWFkb25seV06Zm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLmZvcm0tY29udHJvbCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLmZvcm0tY29udHJvbCk6aG92ZXIsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLmZvcm0tY29udHJvbCk6Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbCk6ZGlzYWJsZWQsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbCk6ZGlzYWJsZWQ6aG92ZXIsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbCk6ZGlzYWJsZWQ6Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbClbZGlzYWJsZWRdLFxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpW2Rpc2FibGVkXTpob3ZlcixcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbClbcmVhZG9ubHldLFxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpW3JlYWRvbmx5XTpob3ZlcixcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKVtyZWFkb25seV06Zm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKTpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbCk6Zm9jdXMsXG4gIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbCk6ZGlzYWJsZWQsXG4gIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbCk6ZGlzYWJsZWQ6aG92ZXIsXG4gIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbCk6ZGlzYWJsZWQ6Zm9jdXMsXG4gIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbClbZGlzYWJsZWRdLFxuICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpW2Rpc2FibGVkXTpob3ZlcixcbiAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF06Zm9jdXMsXG4gIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbClbcmVhZG9ubHldLFxuICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpW3JlYWRvbmx5XTpob3ZlcixcbiAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKVtyZWFkb25seV06Zm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKTpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbCk6Zm9jdXMsXG4gIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsXG4gIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQ6aG92ZXIsXG4gIC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQ6Zm9jdXMsXG4gIC5mb3JtLWNvbnRyb2xbZGlzYWJsZWRdLFxuICAuZm9ybS1jb250cm9sW2Rpc2FibGVkXTpob3ZlcixcbiAgLmZvcm0tY29udHJvbFtkaXNhYmxlZF06Zm9jdXMsXG4gIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldLFxuICAuZm9ybS1jb250cm9sW3JlYWRvbmx5XTpob3ZlcixcbiAgLmZvcm0tY29udHJvbFtyZWFkb25seV06Zm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAuZm9ybS1jb250cm9sLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLmZvcm0tY29udHJvbDpob3ZlcixcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOjpwbGFjZWhvbGRlciwgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOmhvdmVyOjpwbGFjZWhvbGRlciwgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOmZvY3VzOjpwbGFjZWhvbGRlciwgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpW2Rpc2FibGVkXTo6cGxhY2Vob2xkZXIsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF06aG92ZXI6OnBsYWNlaG9sZGVyLCBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLmZvcm0tY29udHJvbClbZGlzYWJsZWRdOmZvY3VzOjpwbGFjZWhvbGRlciwgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpW3JlYWRvbmx5XTo6cGxhY2Vob2xkZXIsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtyZWFkb25seV06aG92ZXI6OnBsYWNlaG9sZGVyLCBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLmZvcm0tY29udHJvbClbcmVhZG9ubHldOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpW2Rpc2FibGVkXTo6cGxhY2Vob2xkZXIsXG4gICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF06aG92ZXI6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbClbZGlzYWJsZWRdOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpW3JlYWRvbmx5XTo6cGxhY2Vob2xkZXIsXG4gICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKVtyZWFkb25seV06aG92ZXI6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbClbcmVhZG9ubHldOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOjpwbGFjZWhvbGRlcixcbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOmRpc2FibGVkOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpW2Rpc2FibGVkXTo6cGxhY2Vob2xkZXIsXG4gICAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF06aG92ZXI6OnBsYWNlaG9sZGVyLFxuICAgIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbClbZGlzYWJsZWRdOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpW3JlYWRvbmx5XTo6cGxhY2Vob2xkZXIsXG4gICAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKVtyZWFkb25seV06aG92ZXI6OnBsYWNlaG9sZGVyLFxuICAgIHNlbGVjdDpub3QoLmZvcm0tY29udHJvbClbcmVhZG9ubHldOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICAuZm9ybS1jb250cm9sOmRpc2FibGVkOjpwbGFjZWhvbGRlcixcbiAgICAuZm9ybS1jb250cm9sOmRpc2FibGVkOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICAuZm9ybS1jb250cm9sOmRpc2FibGVkOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICAuZm9ybS1jb250cm9sW2Rpc2FibGVkXTo6cGxhY2Vob2xkZXIsXG4gICAgLmZvcm0tY29udHJvbFtkaXNhYmxlZF06aG92ZXI6OnBsYWNlaG9sZGVyLFxuICAgIC5mb3JtLWNvbnRyb2xbZGlzYWJsZWRdOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICAuZm9ybS1jb250cm9sW3JlYWRvbmx5XTo6cGxhY2Vob2xkZXIsXG4gICAgLmZvcm0tY29udHJvbFtyZWFkb25seV06aG92ZXI6OnBsYWNlaG9sZGVyLFxuICAgIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuZm9ybS1jb250cm9sOmhvdmVyOjpwbGFjZWhvbGRlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuZm9ybS1jb250cm9sOmZvY3VzOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdmFyKC0taW5wdXQtZGlzYWJsZWQtY29sb3ItcGxhY2Vob2xkZXIpOyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOm5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLmZvcm0tY29udHJvbCksXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLmZvcm0tY29udHJvbClbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCguZm9ybS1jb250cm9sKSxcbiAgc2VsZWN0Om5vdCguZm9ybS1jb250cm9sKVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICBzZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpLFxuICAuZm9ybS1jb250cm9sW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGN1cnNvcjogdmFyKC0tY3Vyc29yLWRpc2FibGVkKTsgfVxuXG50ZXh0YXJlYTpub3QoI21lc3NhZ2UpLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9hcnJvdy1kcm9wLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA1MCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teDogY2FsYygxMDAlIC0gMTFweCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtYmcpOyB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2w6aG92ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYXJyb3ctZHJvcC5zdmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogNTAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2FsYygxMDAlIC0gMTFweCk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBzZWxlY3QuZm9ybS1jb250cm9sIG9wdGlvbiB7XG4gICAgY29sb3I6IHZhcigtLXNlbGVjdC1vcHRpb24tY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlbGVjdC1vcHRpb24tYmcpOyB9XG5cbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hlY2tib3gtc3BhY2luZyk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNoZWNrYm94LXNwYWNpbmcpO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnJhZGlvIGxhYmVsLFxuICAuY2hlY2tib3ggbGFiZWwge1xuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5yYWRpby1pbmxpbmUgKyAucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSArIC5jaGVja2JveC1pbmxpbmUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl1bZGlzYWJsZWRdLCBpbnB1dFt0eXBlPVwicmFkaW9cIl0uZGlzYWJsZWQsXG5maWVsZHNldFtkaXNhYmxlZF0gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5kaXNhYmxlZCxcbmZpZWxkc2V0W2Rpc2FibGVkXVxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItZGlzYWJsZWQpOyB9XG5cbi5yYWRpby1pbmxpbmUuZGlzYWJsZWQsXG5maWVsZHNldFtkaXNhYmxlZF0gLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUuZGlzYWJsZWQsXG5maWVsZHNldFtkaXNhYmxlZF1cbi5jaGVja2JveC1pbmxpbmUge1xuICBjdXJzb3I6IHZhcigtLWN1cnNvci1kaXNhYmxlZCk7IH1cblxuLnJhZGlvLmRpc2FibGVkIGxhYmVsLFxuZmllbGRzZXRbZGlzYWJsZWRdIC5yYWRpbyBsYWJlbCxcbi5jaGVja2JveC5kaXNhYmxlZCBsYWJlbCxcbmZpZWxkc2V0W2Rpc2FibGVkXVxuLmNoZWNrYm94IGxhYmVsIHtcbiAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItZGlzYWJsZWQpOyB9XG5cbi5pbnB1dC1sZyB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTtcbiAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1sZy12KSB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpOyB9XG4gIC5pbnB1dC1sZyBzZWxlY3Qge1xuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTsgfVxuICAuaW5wdXQtbGcgdGV4dGFyZWEsXG4gIC5pbnB1dC1sZyBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTtcbiAgcGFkZGluZzogMCB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1sZy1ib3JkZXItcmFkaXVzKTsgfVxuXG4uZm9ybS1ncm91cC1sZyBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTsgfVxuXG4uZm9ybS1ncm91cC1sZyB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4uZm9ybS1ncm91cC1sZyBzZWxlY3RbbXVsdGlwbGVdLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZm9ybS1ncm91cC1sZyAuZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTtcbiAgbWluLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSl2YXIoLS1mb250LXNpemUtbGcpO1xuICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWxnLXZlcnRpY2FsKTEgdmFyKC0tdWktcGFkZGluZy1sZy1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpOyB9XG5cbi5oYXMtZmVlZGJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmhhcy1mZWVkYmFjayAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7IH1cblxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5pbnB1dC14cyxcbi5mb3JtLWNvbnRyb2wteHMsXG4uaW5wdXQtZ3JvdXAteHMgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXhzID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXhzID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC14cyk7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmcteHMtdikgdmFyKC0tdWktcGFkZGluZy14cy1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC14cy1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQteHMtbGluZS1oZWlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC14cy1ib3JkZXItcmFkaXVzKTsgfVxuXG4uaW5wdXQtc20sXG4uZm9ybS1jb250cm9sLXNtLFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtc20pO1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLXNtLXYpIHZhcigtLXVpLXBhZGRpbmctc20taCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQtc20tZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LXNtLWxpbmUtaGVpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7IH1cblxuLmlucHV0LWxnLFxuLmZvcm0tY29udHJvbC1sZyxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTtcbiAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1sZy12KSB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xuICBmb250LXNpemU6IHZhcigtLWlucHV0LWxnLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbnB1dC1sZy1saW5lLWhlaWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpOyB9XG5cbi5oYXMtc3VjY2VzcyAuaGVscC1ibG9jayxcbi5oYXMtc3VjY2VzcyAuY29udHJvbC1sYWJlbCxcbi5oYXMtc3VjY2VzcyAucmFkaW8sXG4uaGFzLXN1Y2Nlc3MgLmNoZWNrYm94LFxuLmhhcy1zdWNjZXNzIC5yYWRpby1pbmxpbmUsXG4uaGFzLXN1Y2Nlc3MgLmNoZWNrYm94LWlubGluZSxcbi5oYXMtc3VjY2Vzcy5yYWRpbyBsYWJlbCxcbi5oYXMtc3VjY2Vzcy5jaGVja2JveCBsYWJlbCxcbi5oYXMtc3VjY2Vzcy5yYWRpby1pbmxpbmUgbGFiZWwsXG4uaGFzLXN1Y2Nlc3MuY2hlY2tib3gtaW5saW5lIGxhYmVsIHtcbiAgY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvcik7IH1cblxuLmhhcy1zdWNjZXNzIC5mb3JtLWNvbnRyb2wge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmhhcy1zdWNjZXNzIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1kYXJrZXIpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDZweCB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXIpOyB9XG5cbi5oYXMtc3VjY2VzcyAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTQpOyB9XG5cbi5oYXMtc3VjY2VzcyAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvcik7IH1cblxuLmhhcy1zdWNjZXNzIC5jaGVja2JveCBsYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpOyB9XG5cbi5oYXMtc3VjY2VzcyAucmFkaW8tc3R5bGVkLFxuLmhhcy1zdWNjZXNzIC5jaGVja2JveC1zdHlsZWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MpOyB9XG4gIC5oYXMtc3VjY2VzcyAucmFkaW8tc3R5bGVkLmNoZWNrZWQsXG4gIC5oYXMtc3VjY2VzcyAuY2hlY2tib3gtc3R5bGVkLmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcyk7IH1cblxuLmhhcy13YXJuaW5nIC5oZWxwLWJsb2NrLFxuLmhhcy13YXJuaW5nIC5jb250cm9sLWxhYmVsLFxuLmhhcy13YXJuaW5nIC5yYWRpbyxcbi5oYXMtd2FybmluZyAuY2hlY2tib3gsXG4uaGFzLXdhcm5pbmcgLnJhZGlvLWlubGluZSxcbi5oYXMtd2FybmluZyAuY2hlY2tib3gtaW5saW5lLFxuLmhhcy13YXJuaW5nLnJhZGlvIGxhYmVsLFxuLmhhcy13YXJuaW5nLmNoZWNrYm94IGxhYmVsLFxuLmhhcy13YXJuaW5nLnJhZGlvLWlubGluZSBsYWJlbCxcbi5oYXMtd2FybmluZy5jaGVja2JveC1pbmxpbmUgbGFiZWwge1xuICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTsgfVxuXG4uaGFzLXdhcm5pbmcgLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtd2FybmluZyk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTsgfVxuICAuaGFzLXdhcm5pbmcgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nLWRhcmtlcik7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgNnB4IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyKTsgfVxuXG4uaGFzLXdhcm5pbmcgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgY29sb3I6IHZhcigtLXRleHQtd2FybmluZy1jb2xvcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtd2FybmluZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci00KTsgfVxuXG4uaGFzLXdhcm5pbmcgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpOyB9XG5cbi5oYXMtd2FybmluZyAuY2hlY2tib3ggbGFiZWwge1xuICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTsgfVxuXG4uaGFzLXdhcm5pbmcgLnJhZGlvLXN0eWxlZCxcbi5oYXMtd2FybmluZyAuY2hlY2tib3gtc3R5bGVkIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nKTsgfVxuICAuaGFzLXdhcm5pbmcgLnJhZGlvLXN0eWxlZC5jaGVja2VkLFxuICAuaGFzLXdhcm5pbmcgLmNoZWNrYm94LXN0eWxlZC5jaGVja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmcpOyB9XG5cbi5oYXMtZXJyb3IgLmhlbHAtYmxvY2ssXG4uaGFzLWVycm9yIC5jb250cm9sLWxhYmVsLFxuLmhhcy1lcnJvciAucmFkaW8sXG4uaGFzLWVycm9yIC5jaGVja2JveCxcbi5oYXMtZXJyb3IgLnJhZGlvLWlubGluZSxcbi5oYXMtZXJyb3IgLmNoZWNrYm94LWlubGluZSxcbi5oYXMtZXJyb3IucmFkaW8gbGFiZWwsXG4uaGFzLWVycm9yLmNoZWNrYm94IGxhYmVsLFxuLmhhcy1lcnJvci5yYWRpby1pbmxpbmUgbGFiZWwsXG4uaGFzLWVycm9yLmNoZWNrYm94LWlubGluZSBsYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cblxuLmhhcy1lcnJvciAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXIpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7IH1cbiAgLmhhcy1lcnJvciAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1kYXJrZXIpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwgMCAwIDZweCB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlcik7IH1cblxuLmhhcy1lcnJvciAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG5cbi5oYXMtZXJyb3IgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cblxuLmhhcy1lcnJvciAuY2hlY2tib3ggbGFiZWwge1xuICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpOyB9XG5cbi5oYXMtZXJyb3IgLnJhZGlvLXN0eWxlZCxcbi5oYXMtZXJyb3IgLmNoZWNrYm94LXN0eWxlZCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyKTsgfVxuICAuaGFzLWVycm9yIC5yYWRpby1zdHlsZWQuY2hlY2tlZCxcbiAgLmhhcy1lcnJvciAuY2hlY2tib3gtc3R5bGVkLmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXIpOyB9XG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTsgfVxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLmZvcm0taW5saW5lIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmZvcm0taW5saW5lIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAuZm9ybS1pbmxpbmUgLmlucHV0LWdyb3VwLFxuICAgIC5mb3JtLWlubGluZSAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5mb3JtLWlubGluZSAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1mb3JtLXRleHQtbWFyZ2luLXRvcCk7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5mb3JtLWlubGluZSAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS11aS1wYWRkaW5nLWJhc2UtdikgKyB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tdWktcGFkZGluZy1iYXNlLXYpICsgdmFyKC0taW5wdXQtYm9yZGVyLXdpZHRoKSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LWxpbmUtaGVpZ2h0KTsgfVxuICAuY29sLWZvcm0tbGFiZWwuY29sLWNoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5jb2wtZm9ybS1sYWJlbC5jb2wtY2hlY2tib3ggPiAuY2hlY2tib3gtc3R5bGVkIHtcbiAgICAgIG1hcmdpbi10b3A6IDNweDsgfVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS11aS1wYWRkaW5nLWxnLXYpICsgdmFyKC0taW5wdXQtYm9yZGVyLXdpZHRoKSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXVpLXBhZGRpbmctbGctdikgKyB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpKTtcbiAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1sZy1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGctbGluZS1oZWlnaHQpOyB9XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLXVpLXBhZGRpbi1zbS12KSArIHZhcigtLWlucHV0LWJvcmRlci13aWR0aCkpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS11aS1wYWRkaW4tc20tdikgKyB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpKTtcbiAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1zbS1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtc20tbGluZS1oZWlnaHQpOyB9XG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtdikgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0taW5wdXQtbGFiZWwtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpIDA7IH1cbiAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNtLCAuZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2xbc2l6ZV0sIHNlbGVjdC5mb3JtLWNvbnRyb2xbbXVsdGlwbGVdIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbSk7IH1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1mb3JtLXRleHQtbWFyZ2luLXRvcCk7IH1cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC12YXIoLS1mb3JtLWdyaWQtZ3V0dGVyLXdpZHRoKS8yO1xuICBtYXJnaW4tbGVmdDogLXZhcigtLWZvcm0tZ3JpZC1ndXR0ZXItd2lkdGgpLzI7IH1cbiAgLmZvcm0tcm93ID4gLmNvbCxcbiAgLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWZvcm0tZ3JpZC1ndXR0ZXItd2lkdGgpLzI7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1mb3JtLWdyaWQtZ3V0dGVyLXdpZHRoKS8yOyB9XG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1mb3JtLWNoZWNrLWlucHV0LWd1dHRlcik7IH1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IHZhcigtLWZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXkpO1xuICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLWZvcm0tY2hlY2staW5wdXQtZ3V0dGVyKSk7IH1cbiAgLmZvcm0tY2hlY2staW5wdXRbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14KTsgfVxuICAuZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14KTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG4udmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAjMzZDMDU1OyB9XG5cbi52YWxpZC10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteCk7XG4gIG1hcmdpbi10b3A6IC4xcmVtO1xuICBmb250LXNpemU6IHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTQsIDE5MiwgODUsIHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTsgfVxuICAuZm9ybS1yb3cgPiAuY29sID4gLnZhbGlkLXRvb2x0aXAsXG4gIC5mb3JtLXJvdyA+IFtjbGFzcyo9XCJjb2wtXCJdID4gLnZhbGlkLXRvb2x0aXAge1xuICAgIGxlZnQ6IHZhcigtLWZvcm0tZ3JpZC1ndXR0ZXItd2lkdGgpLzI7IH1cblxuLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsXG4uaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXG4uaXMtdmFsaWQgfiAudmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMzNkMwNTU7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlLWlubmVyKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItcXVhcnRlcikgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLXVpLWhlaWdodC1iYXNlLWlubmVyLWhhbGYpIHZhcigtLXVpLWhlaWdodC1iYXNlLWlubmVyLWhhbGYpOyB9XG4gIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzM2QzA1NTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1pbnB1dC1mb2N1cy13aWR0aCkgcmdiYSg1NCwgMTkyLCA4NSwgMC4yNSk7IH1cblxuLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZS1pbm5lcik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCB2YXIoLS11aS1oZWlnaHQtYmFzZS1pbm5lci1xdWFydGVyKSByaWdodCB2YXIoLS11aS1oZWlnaHQtYmFzZS1pbm5lci1xdWFydGVyKTsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZCwgLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMzNkMwNTU7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kKSwgdmFyKC0tY3VzdG9tLXNlbGVjdC1iZykgdmFyKC0tZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkKSB2YXIoLS1jdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24pL3ZhcigtLWN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplKSBuby1yZXBlYXQ7IH1cbiAgLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6dmFsaWQ6Zm9jdXMsIC5jdXN0b20tc2VsZWN0LmlzLXZhbGlkOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMzNkMwNTU7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0taW5wdXQtZm9jdXMtd2lkdGgpIHJnYmEoNTQsIDE5MiwgODUsIDAuMjUpOyB9XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogIzM2QzA1NTsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAudmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgY29sb3I6ICMzNkMwNTU7IH1cbiAgLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICMzNkMwNTU7IH1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzU5ZDA3NDtcbiAgYmFja2dyb3VuZDogIzU5ZDA3NCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjNzJkNzg5LCAjNTlkMDc0KSByZXBlYXQteDsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1pbnB1dC1mb2N1cy13aWR0aCkgcmdiYSg1NCwgMTkyLCA4NSwgMC4yNSk7IH1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzM2QzA1NTsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6dmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzM2QzA1NTsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6dmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogIzM2QzA1NTtcbiAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0taW5wdXQtZm9jdXMtd2lkdGgpIHJnYmEoNTQsIDE5MiwgODUsIDAuMjUpOyB9XG5cbi5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IHZhcigtLWZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICBjb2xvcjogI2Q5MjYzMjsgfVxuXG4uaW52YWxpZC10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteCk7XG4gIG1hcmdpbi10b3A6IC4xcmVtO1xuICBmb250LXNpemU6IHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjE3LCAzOCwgNTAsIHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTsgfVxuICAuZm9ybS1yb3cgPiAuY29sID4gLmludmFsaWQtdG9vbHRpcCxcbiAgLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0gPiAuaW52YWxpZC10b29sdGlwIHtcbiAgICBsZWZ0OiB2YXIoLS1mb3JtLWdyaWQtZ3V0dGVyLXdpZHRoKS8yOyB9XG5cbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAsXG4uaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNkOTI2MzI7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlLWlubmVyKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB2YXIoLS11aS1oZWlnaHQtYmFzZS1pbm5lci1xdWFydGVyKSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItaGFsZikgdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItaGFsZik7IH1cbiAgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2Q5MjYzMjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1pbnB1dC1mb2N1cy13aWR0aCkgcmdiYSgyMTcsIDM4LCA1MCwgMC4yNSk7IH1cblxuLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOmludmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItcXVhcnRlcikgcmlnaHQgdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItcXVhcnRlcik7IH1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZCwgLmN1c3RvbS1zZWxlY3QuaXMtaW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogI2Q5MjYzMjtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jdXN0b20tc2VsZWN0LWJhY2tncm91bmQpLCB2YXIoLS1jdXN0b20tc2VsZWN0LWJnKSB2YXIoLS1mb3JtLWZlZWRiYWNrLWljb24taW52YWxpZCkgdmFyKC0tY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uKS92YXIoLS1jdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZSkgbm8tcmVwZWF0OyB9XG4gIC53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2Q5MjYzMjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1pbnB1dC1mb2N1cy13aWR0aCkgcmdiYSgyMTcsIDM4LCA1MCwgMC4yNSk7IH1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogI2Q5MjYzMjsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBjb2xvcjogI2Q5MjYzMjsgfVxuICAud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICNkOTI2MzI7IH1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNlMTUxNWI7XG4gIGJhY2tncm91bmQ6ICNlMTUxNWIgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2U1NmI3NCwgI2UxNTE1YikgcmVwZWF0LXg7IH1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWlucHV0LWZvY3VzLXdpZHRoKSByZ2JhKDIxNywgMzgsIDUwLCAwLjI1KTsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI2Q5MjYzMjsgfVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tZmlsZS1sYWJlbCwgLmN1c3RvbS1maWxlLWlucHV0LmlzLWludmFsaWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICNkOTI2MzI7IH1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjZDkyNjMyO1xuICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1pbnB1dC1mb2N1cy13aWR0aCkgcmdiYSgyMTcsIDM4LCA1MCwgMC4yNSk7IH1cblxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0biksXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSxcbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogdmFyKC0tYnRuLWJhc2UtZm9udC13ZWlnaHQpO1xuICBmb250LWZhbWlseTogdmFyKC0tYnRuLWZvbnQtZmFtaWx5KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlcjogdmFyKC0tYnRuLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gIHdoaXRlLXNwYWNlOiB2YXIoLS1idG4td2hpdGUtc3BhY2UpO1xuICBvdXRsaW5lOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtdikgdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xuICBmb250LXNpemU6IHZhcigtLWJ0bi1iYXNlLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLWJhc2UtYm9yZGVyLXJhZGl1cyk7XG4gIHRyYW5zaXRpb246IHZhcigtLWJ0bi10cmFuc2l0aW9uKTsgfVxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLFxuICAgIC5idG4ge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmhvdmVyLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpob3ZlcixcbiAgLmJ0bjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6Zm9jdXMsIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmZvY3VzLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZm9jdXMsXG4gIC5idG46Zm9jdXMsXG4gIC5idG4uZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYnRuLWZvY3VzLWJveC1zaGFkb3cpOyB9XG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmRpc2FibGVkLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpkaXNhYmxlZCxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZGlzYWJsZWQsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmRpc2FibGVkLFxuICAuYnRuLmRpc2FibGVkLFxuICAuYnRuOmRpc2FibGVkIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSxcbiAgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgICAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1ib3JkZXIpOyB9XG4gICAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAgIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLFxuICAgICAgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1idG4tZm9jdXMtYm94LXNoYWRvdyksIHZhcigtLWJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7IH1cbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikgaSxcbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikgLmxzLFxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSAubG0sXG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pIC5mYSxcbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikgLmZhcyxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgaSxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmxzLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSAubG0sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIC5mYSxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmZhcyxcbiAgLmJ0biBpLFxuICAuYnRuIC5scyxcbiAgLmJ0biAubG0sXG4gIC5idG4gLmZhLFxuICAuYnRuIC5mYXMge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYnRuLWJhc2UtaWNvbi1zcGFjaW5nKTsgfVxuICAgIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pIGk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSAubHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSAubG06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSAuZmE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSAuZmFzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgaTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIC5sczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIC5sbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIC5mYTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIC5mYXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAuYnRuIGk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAuYnRuIC5sczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5idG4gLmxtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmJ0biAuZmE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAuYnRuIC5mYXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLWJhc2UtaWNvbi1zcGFjaW5nKTsgfVxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSAuYnRuLWljb24sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIC5idG4taWNvbixcbiAgLmJ0biAuYnRuLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5mbGV4LXJvdy1yZXZlcnNlIGksXG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmZsZXgtcm93LXJldmVyc2UgLmxzLFxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5mbGV4LXJvdy1yZXZlcnNlIC5sbSxcbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSAuZmEsXG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmZsZXgtcm93LXJldmVyc2UgLmZhcyxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSBpLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5mbGV4LXJvdy1yZXZlcnNlIC5scyxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSAubG0sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmZsZXgtcm93LXJldmVyc2UgLmZhLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5mbGV4LXJvdy1yZXZlcnNlIC5mYXMsXG4gIC5idG4uZmxleC1yb3ctcmV2ZXJzZSBpLFxuICAuYnRuLmZsZXgtcm93LXJldmVyc2UgLmxzLFxuICAuYnRuLmZsZXgtcm93LXJldmVyc2UgLmxtLFxuICAuYnRuLmZsZXgtcm93LXJldmVyc2UgLmZhLFxuICAuYnRuLmZsZXgtcm93LXJldmVyc2UgLmZhcyB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWJ0bi1iYXNlLWljb24tc3BhY2luZyk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSBpOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSAubHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5mbGV4LXJvdy1yZXZlcnNlIC5sbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmZsZXgtcm93LXJldmVyc2UgLmZhOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSAuZmFzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSBpOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSAubHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5mbGV4LXJvdy1yZXZlcnNlIC5sbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmZsZXgtcm93LXJldmVyc2UgLmZhOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZmxleC1yb3ctcmV2ZXJzZSAuZmFzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmJ0bi5mbGV4LXJvdy1yZXZlcnNlIGk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAuYnRuLmZsZXgtcm93LXJldmVyc2UgLmxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmJ0bi5mbGV4LXJvdy1yZXZlcnNlIC5sbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5idG4uZmxleC1yb3ctcmV2ZXJzZSAuZmE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAuYnRuLmZsZXgtcm93LXJldmVyc2UgLmZhczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1idG4tYmFzZS1pY29uLXNwYWNpbmcpOyB9XG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIGksXG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIC5scyxcbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuaWNvbi1hbmltYXRpb24gLmxtLFxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5pY29uLWFuaW1hdGlvbiAuZmEsXG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIC5mYXMsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIGksXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIC5scyxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuaWNvbi1hbmltYXRpb24gLmxtLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5pY29uLWFuaW1hdGlvbiAuZmEsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIC5mYXMsXG4gIC5idG4uaWNvbi1hbmltYXRpb24gaSxcbiAgLmJ0bi5pY29uLWFuaW1hdGlvbiAubHMsXG4gIC5idG4uaWNvbi1hbmltYXRpb24gLmxtLFxuICAuYnRuLmljb24tYW5pbWF0aW9uIC5mYSxcbiAgLmJ0bi5pY29uLWFuaW1hdGlvbiAuZmFzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIC5idG4tdGV4dCxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuaWNvbi1hbmltYXRpb24gLmJ0bi10ZXh0LFxuICAuYnRuLmljb24tYW5pbWF0aW9uIC5idG4tdGV4dCB7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZy1yaWdodCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBwYWRkaW5nLWxlZnQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5pY29uLWFuaW1hdGlvbiAuYnRuLWljb24sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIC5idG4taWNvbixcbiAgLmJ0bi5pY29uLWFuaW1hdGlvbiAuYnRuLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5pY29uLWFuaW1hdGlvbjpob3ZlciAuYnRuLXRleHQsIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uOmZvY3VzLXZpc2libGUgLmJ0bi10ZXh0LFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5pY29uLWFuaW1hdGlvbjpob3ZlciAuYnRuLXRleHQsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uOmZvY3VzLXZpc2libGUgLmJ0bi10ZXh0LFxuICAuYnRuLmljb24tYW5pbWF0aW9uOmhvdmVyIC5idG4tdGV4dCxcbiAgLmJ0bi5pY29uLWFuaW1hdGlvbjpmb2N1cy12aXNpYmxlIC5idG4tdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTN4KTsgfVxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5pY29uLWFuaW1hdGlvbjpob3Zlci5mbGV4LXJvdy1yZXZlcnNlIC5idG4tdGV4dCwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuaWNvbi1hbmltYXRpb246Zm9jdXMtdmlzaWJsZS5mbGV4LXJvdy1yZXZlcnNlIC5idG4tdGV4dCxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuaWNvbi1hbmltYXRpb246aG92ZXIuZmxleC1yb3ctcmV2ZXJzZSAuYnRuLXRleHQsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uOmZvY3VzLXZpc2libGUuZmxleC1yb3ctcmV2ZXJzZSAuYnRuLXRleHQsXG4gIC5idG4uaWNvbi1hbmltYXRpb246aG92ZXIuZmxleC1yb3ctcmV2ZXJzZSAuYnRuLXRleHQsXG4gIC5idG4uaWNvbi1hbmltYXRpb246Zm9jdXMtdmlzaWJsZS5mbGV4LXJvdy1yZXZlcnNlIC5idG4tdGV4dCB7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uOmhvdmVyIC5idG4taWNvbiwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuaWNvbi1hbmltYXRpb246Zm9jdXMtdmlzaWJsZSAuYnRuLWljb24sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uOmhvdmVyIC5idG4taWNvbixcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuaWNvbi1hbmltYXRpb246Zm9jdXMtdmlzaWJsZSAuYnRuLWljb24sXG4gIC5idG4uaWNvbi1hbmltYXRpb246aG92ZXIgLmJ0bi1pY29uLFxuICAuYnRuLmljb24tYW5pbWF0aW9uOmZvY3VzLXZpc2libGUgLmJ0bi1pY29uIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uIC5idG4taWNvbixcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuaWNvbi1hbmltYXRpb24gLmJ0bi1pY29uLFxuICAuYnRuLmljb24tYW5pbWF0aW9uIC5idG4taWNvbiB7XG4gICAgbGVmdDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpOyB9XG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmljb24tYW5pbWF0aW9uLmZsZXgtcm93LXJldmVyc2UgLmJ0bi1pY29uLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5pY29uLWFuaW1hdGlvbi5mbGV4LXJvdy1yZXZlcnNlIC5idG4taWNvbixcbiAgLmJ0bi5pY29uLWFuaW1hdGlvbi5mbGV4LXJvdy1yZXZlcnNlIC5idG4taWNvbiB7XG4gICAgcmlnaHQ6IHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcbiAgICBsZWZ0OiB1bnNldDsgfVxuXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIHtcbiAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJvcmRlcik7IH1cbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6aG92ZXIsIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmZvY3VzLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTphY3RpdmUsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmhvdmVyLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJvcmRlcik7IH1cblxuLmJ0bi5idG4taWNvbiB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xuICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xuICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDsgfVxuICAuYnRuLmJ0bi1pY29uOmhvdmVyLCAuYnRuLmJ0bi1pY29uOmFjdGl2ZSwgLmJ0bi5idG4taWNvbjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgLmJ0bi5idG4taWNvbiA+IGkge1xuICAgIG1hcmdpbjogMDsgfVxuXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmJ0bi1kZWZhdWx0IHtcbiAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWRlZmF1bHQtYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWJvcmRlcik7IH1cbiAgLmJ0bi1kZWZhdWx0OmZvY3VzLCAuYnRuLWRlZmF1bHQ6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1kZWZhdWx0LmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1kZWZhdWx0OmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPiAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLWRlZmF1bHQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAuYnRuLWRlZmF1bHQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuYnRuLWRlZmF1bHQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuYnRuLWRlZmF1bHQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWRlZmF1bHQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4tZGVmYXVsdDphY3RpdmUsIC5idG4tZGVmYXVsdC5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kZWZhdWx0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLWRlZmF1bHQuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLmJ0bi1kZWZhdWx0W2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kZWZhdWx0IHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAuYnRuLWRlZmF1bHQuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAuYnRuLWRlZmF1bHRbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kZWZhdWx0IC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTsgfVxuICAuYnRuLWRlZmF1bHQuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksIC5idG4tZGVmYXVsdFtkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCkge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogMC42OyB9XG4gIC5idG4tZGVmYXVsdCAuYmFkZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtY29sb3IpOyB9XG4gIC5idG4tZGVmYXVsdCBpLmxzLWNhcmV0IHtcbiAgICBjb2xvcjogdmFyKC0tZGVjb3JhdGlvbi1pY29ucyk7IH1cblxuLmJ0bi1wcmltYXJ5IHtcbiAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJvcmRlcik7IH1cbiAgLmJ0bi1wcmltYXJ5OmZvY3VzLCAuYnRuLXByaW1hcnk6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5LmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1wcmltYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLXByaW1hcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsIC5idG4tcHJpbWFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAuYnRuLXByaW1hcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tcHJpbWFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1wcmltYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuYnRuLXByaW1hcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuYnRuLXByaW1hcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tcHJpbWFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5idG4tcHJpbWFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5idG4tcHJpbWFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5idG4tcHJpbWFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4tcHJpbWFyeTphY3RpdmUsIC5idG4tcHJpbWFyeS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLXByaW1hcnkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLmJ0bi1wcmltYXJ5W2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5IHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAuYnRuLXByaW1hcnkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAuYnRuLXByaW1hcnlbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5IC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTsgfVxuICAuYnRuLXByaW1hcnkuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksIC5idG4tcHJpbWFyeVtkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCkge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogMC42OyB9XG4gIC5idG4tcHJpbWFyeSAuYmFkZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktY29sb3IpOyB9XG5cbi5idG4tcHJpbWFyeS1mYWRlZCB7XG4gIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ib3JkZXIpOyB9XG4gIC5idG4tcHJpbWFyeS1mYWRlZDpmb2N1cywgLmJ0bi1wcmltYXJ5LWZhZGVkOmZvY3VzLXZpc2libGUsIC5idG4tcHJpbWFyeS1mYWRlZC5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tcHJpbWFyeS1mYWRlZDpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tcHJpbWFyeS1mYWRlZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tcHJpbWFyeS1mYWRlZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1wcmltYXJ5LWZhZGVkOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlcik7IH1cbiAgICAuYnRuLXByaW1hcnktZmFkZWQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuYnRuLXByaW1hcnktZmFkZWQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnktZmFkZWQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tcHJpbWFyeS1mYWRlZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5idG4tcHJpbWFyeS1mYWRlZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5idG4tcHJpbWFyeS1mYWRlZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5idG4tcHJpbWFyeS1mYWRlZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5LWZhZGVkOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeS1mYWRlZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnktZmFkZWQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1wcmltYXJ5LWZhZGVkOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLmJ0bi1wcmltYXJ5LWZhZGVkOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAuYnRuLXByaW1hcnktZmFkZWQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXByaW1hcnktZmFkZWQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAuYnRuLXByaW1hcnktZmFkZWQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuYnRuLXByaW1hcnktZmFkZWQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnktZmFkZWQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLXByaW1hcnktZmFkZWQ6YWN0aXZlLCAuYnRuLXByaW1hcnktZmFkZWQuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tcHJpbWFyeS1mYWRlZC5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1wcmltYXJ5LWZhZGVkLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksIC5idG4tcHJpbWFyeS1mYWRlZFtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeS1mYWRlZCB7XG4gICAgb3BhY2l0eTogdmFyKC0tYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiwgLmJ0bi1wcmltYXJ5LWZhZGVkW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeS1mYWRlZCAubG9hZGVyIC5zcGlubmVyID4gZGl2IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7IH1cbiAgLmJ0bi1wcmltYXJ5LWZhZGVkLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAuYnRuLXByaW1hcnktZmFkZWRbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNjsgfVxuICAuYnRuLXByaW1hcnktZmFkZWQgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTsgfVxuXG4uYnRuLXNlY29uZGFyeSB7XG4gIGNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXNlY29uZGFyeS1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1ib3JkZXIpOyB9XG4gIC5idG4tc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLXNlY29uZGFyeTpmb2N1cy12aXNpYmxlLCAuYnRuLXNlY29uZGFyeS5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAuYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1zZWNvbmRhcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi1zZWNvbmRhcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsIC5idG4tc2Vjb25kYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zZWNvbmRhcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmJ0bi1zZWNvbmRhcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuYnRuLXNlY29uZGFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXNlY29uZGFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5idG4tc2Vjb25kYXJ5LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmJ0bi1zZWNvbmRhcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zZWNvbmRhcnkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLXNlY29uZGFyeTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5LmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLmJ0bi1zZWNvbmRhcnlbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXNlY29uZGFyeSB7XG4gICAgb3BhY2l0eTogdmFyKC0tYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAuYnRuLXNlY29uZGFyeVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXNlY29uZGFyeSAubG9hZGVyIC5zcGlubmVyID4gZGl2IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7IH1cbiAgLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksIC5idG4tc2Vjb25kYXJ5W2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjY7IH1cbiAgLmJ0bi1zZWNvbmRhcnkgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1jb2xvcik7IH1cblxuLmJ0bi1zdWNjZXNzIHtcbiAgY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXN1Y2Nlc3MtYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWJvcmRlcik7IH1cbiAgLmJ0bi1zdWNjZXNzOmZvY3VzLCAuYnRuLXN1Y2Nlc3M6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zdWNjZXNzLmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXN1Y2Nlc3MtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1zdWNjZXNzOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXN1Y2Nlc3MtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXN1Y2Nlc3MtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc3VjY2Vzcy1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPiAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tc3VjY2Vzcy1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tc3VjY2Vzcy1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXN1Y2Nlc3MtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXN1Y2Nlc3MtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXN1Y2Nlc3MtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tc3VjY2Vzcy1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4tc3VjY2VzczphY3RpdmUsIC5idG4tc3VjY2Vzcy5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLmJ0bi1zdWNjZXNzW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zdWNjZXNzIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAuYnRuLXN1Y2Nlc3NbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zdWNjZXNzIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTsgfVxuICAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksIC5idG4tc3VjY2Vzc1tkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCkge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogMC42OyB9XG4gIC5idG4tc3VjY2VzcyAuYmFkZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tc3VjY2Vzcy1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXN1Y2Nlc3MtY29sb3IpOyB9XG5cbi5idG4taW5mbyB7XG4gIGNvbG9yOiB2YXIoLS1idG4taW5mby1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1pbmZvLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4taW5mby1ib3JkZXIpOyB9XG4gIC5idG4taW5mbzpmb2N1cywgLmJ0bi1pbmZvOmZvY3VzLXZpc2libGUsIC5idG4taW5mby5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1pbmZvLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4taW5mby1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4taW5mby1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4taW5mbzpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1pbmZvLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4taW5mby1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4taW5mby1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1pbmZvLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4taW5mby1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWluZm8tYWN0aXZlLWJvcmRlcik7IH1cbiAgICAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWluZm8taG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWluZm8taG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4taW5mby1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4taW5mby5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1pbmZvLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi1pbmZvLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAuYnRuLWluZm8uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1pbmZvLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4taW5mby1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLWluZm8uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1pbmZvLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4taW5mby5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4taW5mby5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1pbmZvLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmJ0bi1pbmZvLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLmJ0bi1pbmZvLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1pbmZvLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLWluZm8uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAuYnRuLWluZm8uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuYnRuLWluZm8uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuYnRuLWluZm8uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4taW5mby5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWluZm8taG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLWluZm86YWN0aXZlLCAuYnRuLWluZm8uYWN0aXZlLFxuICAub3BlbiA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1pbmZvLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksIC5idG4taW5mb1tkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4taW5mbyB7XG4gICAgb3BhY2l0eTogdmFyKC0tYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmJ0bi1pbmZvLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiwgLmJ0bi1pbmZvW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4taW5mbyAubG9hZGVyIC5zcGlubmVyID4gZGl2IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7IH1cbiAgLmJ0bi1pbmZvLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAuYnRuLWluZm9bZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNjsgfVxuICAuYnRuLWluZm8gLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWluZm8tYmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1pbmZvLWNvbG9yKTsgfVxuXG4uYnRuLXdhcm5pbmcge1xuICBjb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4td2FybmluZy1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctYm9yZGVyKTsgfVxuICAuYnRuLXdhcm5pbmc6Zm9jdXMsIC5idG4td2FybmluZzpmb2N1cy12aXNpYmxlLCAuYnRuLXdhcm5pbmcuZm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1idG4td2FybmluZy1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLXdhcm5pbmc6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1idG4td2FybmluZy1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAub3BlbiA+IC5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS1idG4td2FybmluZy1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi13YXJuaW5nLWFjdGl2ZS1ib3JkZXIpOyB9XG4gICAgLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+IC5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi13YXJuaW5nLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi13YXJuaW5nLWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLXdhcm5pbmcuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkge1xuICAgIGNvbG9yOiB2YXIoLS1idG4td2FybmluZy1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4td2FybmluZy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cywgLmJ0bi13YXJuaW5nLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsIC5idG4td2FybmluZy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4td2FybmluZy1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLXdhcm5pbmcuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLXdhcm5pbmcuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4td2FybmluZy1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5idG4td2FybmluZy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5idG4td2FybmluZy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4td2FybmluZy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi13YXJuaW5nLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmJ0bi13YXJuaW5nLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmJ0bi13YXJuaW5nLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi13YXJuaW5nLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXdhcm5pbmcuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi13YXJuaW5nLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ0bi13YXJuaW5nOmFjdGl2ZSwgLmJ0bi13YXJuaW5nLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4td2FybmluZy5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLCAuYnRuLXdhcm5pbmdbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXdhcm5pbmcge1xuICAgIG9wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idG4td2FybmluZy5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsIC5idG4td2FybmluZ1tkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXdhcm5pbmcgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpOyB9XG4gIC5idG4td2FybmluZy5kaXNhYmxlZDpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSwgLmJ0bi13YXJuaW5nW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjY7IH1cbiAgLmJ0bi13YXJuaW5nIC5iYWRnZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi13YXJuaW5nLWJnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4td2FybmluZy1jb2xvcik7IH1cblxuLmJ0bi1kYW5nZXIge1xuICBjb2xvcjogdmFyKC0tYnRuLWRhbmdlci1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kYW5nZXItYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItYm9yZGVyKTsgfVxuICAuYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXI6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1kYW5nZXIuZm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGFuZ2VyLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGFuZ2VyLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLWRhbmdlcjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRhbmdlci1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItYWN0aXZlLWJvcmRlcik7IH1cbiAgICAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+IC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRhbmdlci1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGFuZ2VyLWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRhbmdlci1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRhbmdlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRhbmdlci1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRhbmdlci1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRhbmdlci1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGFuZ2VyLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ0bi1kYW5nZXI6YWN0aXZlLCAuYnRuLWRhbmdlci5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tZGFuZ2VyLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksIC5idG4tZGFuZ2VyW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kYW5nZXIge1xuICAgIG9wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idG4tZGFuZ2VyLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiwgLmJ0bi1kYW5nZXJbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kYW5nZXIgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpOyB9XG4gIC5idG4tZGFuZ2VyLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAuYnRuLWRhbmdlcltkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCkge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogMC42OyB9XG4gIC5idG4tZGFuZ2VyIC5iYWRnZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItYmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItY29sb3IpOyB9XG5cbi5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkge1xuICBjb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWxpZ2h0LWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tbGlnaHQtYm9yZGVyKTsgfVxuICAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpOmZvY3VzLCAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpOmZvY3VzLXZpc2libGUsIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuZm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tbGlnaHQtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1saWdodC1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tbGlnaHQtaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tbGlnaHQtaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tbGlnaHQtYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1saWdodC1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+IC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tbGlnaHQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1saWdodC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1saWdodC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1saWdodC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KTphY3RpdmUsIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLmJ0bi1saWdodDpub3QoLmJ0bi1kZWZhdWx0KVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkge1xuICAgIG9wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpOyB9XG4gIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdCkuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksIC5idG4tbGlnaHQ6bm90KC5idG4tZGVmYXVsdClbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNjsgfVxuICAuYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpIC5iYWRnZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1saWdodC1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWNvbG9yKTsgfVxuXG4uYnRuLWRhcmsge1xuICBjb2xvcjogdmFyKC0tYnRuLWRhcmstY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGFyay1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRhcmstYm9yZGVyKTsgfVxuICAuYnRuLWRhcms6Zm9jdXMsIC5idG4tZGFyazpmb2N1cy12aXNpYmxlLCAuYnRuLWRhcmsuZm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGFyay1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRhcmstaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRhcmstaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLWRhcms6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGFyay1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRhcmstaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRhcmstaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGFyay1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRhcmstYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kYXJrLWFjdGl2ZS1ib3JkZXIpOyB9XG4gICAgLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+IC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1kYXJrLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kYXJrLWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRhcmstaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLWRhcmsuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGFyay1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idG4tZGFyay5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cywgLmJ0bi1kYXJrLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsIC5idG4tZGFyay5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRhcmstaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi1kYXJrLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGFyay1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnRuLWRhcmsuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLWRhcmsuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGFyay1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5idG4tZGFyay5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5idG4tZGFyay5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5idG4tZGFyay5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1kYXJrLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmJ0bi1kYXJrLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmJ0bi1kYXJrLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmJ0bi1kYXJrLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLWRhcmsuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1kYXJrLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ0bi1kYXJrOmFjdGl2ZSwgLmJ0bi1kYXJrLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tZGFyay5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLCAuYnRuLWRhcmtbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRhcmsge1xuICAgIG9wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idG4tZGFyay5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsIC5idG4tZGFya1tkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRhcmsgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpOyB9XG4gIC5idG4tZGFyay5kaXNhYmxlZDpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSwgLmJ0bi1kYXJrW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjY7IH1cbiAgLmJ0bi1kYXJrIC5iYWRnZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kYXJrLWJnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGFyay1jb2xvcik7IH1cblxuLmJ0bi1vdXRsaW5lLFxuLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lIHtcbiAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtYm9yZGVyKTsgfVxuICAuYnRuLW91dGxpbmU6Zm9jdXMsIC5idG4tb3V0bGluZTpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmUuZm9jdXMsXG4gIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZTpmb2N1cyxcbiAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZS5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tb3V0bGluZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpob3ZlciwgLmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLFxuICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1vdXRsaW5lOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLFxuICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmU6YWN0aXZlLFxuICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWFjdGl2ZS1ib3JkZXIpOyB9XG4gICAgLmJ0bi1vdXRsaW5lOmFjdGl2ZTpob3ZlciwgLmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmU6YWN0aXZlLmZvY3VzLCAuYnRuLW91dGxpbmUuYWN0aXZlOmhvdmVyLCAuYnRuLW91dGxpbmUuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tb3V0bGluZS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+IC5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUuZm9jdXMsXG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lOmFjdGl2ZTpob3ZlcixcbiAgICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmU6YWN0aXZlOmZvY3VzLFxuICAgIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmU6YWN0aXZlLmZvY3VzLFxuICAgIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZS5hY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lLmFjdGl2ZTpmb2N1cyxcbiAgICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1vdXRsaW5lOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLFxuICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmU6YWN0aXZlLFxuICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1vdXRsaW5lLmRpc2FibGVkLCAuYnRuLW91dGxpbmVbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1vdXRsaW5lLFxuICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUuZGlzYWJsZWQsXG4gIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUge1xuICAgIG9wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpICFpbXBvcnRhbnQ7IH1cbiAgICAuYnRuLW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsIC5idG4tb3V0bGluZS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLXZpc2libGUsIC5idG4tb3V0bGluZS5kaXNhYmxlZC5mb2N1cywgLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cywgLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmVbZGlzYWJsZWRdLmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLW91dGxpbmU6aG92ZXIsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tb3V0bGluZTpmb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tb3V0bGluZS5mb2N1cyxcbiAgICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsXG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLFxuICAgIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZS5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZS5kaXNhYmxlZC5mb2N1cyxcbiAgICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmhvdmVyLFxuICAgIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMsXG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZVtkaXNhYmxlZF0uZm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tZGVmYXVsdC5idG4tb3V0bGluZTpmb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKTsgfVxuICAuYnRuLW91dGxpbmUgLmJhZGdlLFxuICAuYnRuLWRlZmF1bHQuYnRuLW91dGxpbmUgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtYmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWNvbG9yKTsgfVxuICAuYnRuLW91dGxpbmUgaS5scy1jYXJldCxcbiAgLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lIGkubHMtY2FyZXQge1xuICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTsgfVxuXG4uYnRuLXByaW1hcnktb3V0bGluZSxcbi5idG4tcHJpbWFyeS5idG4tb3V0bGluZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gIC5idG4tcHJpbWFyeS1vdXRsaW5lOmZvY3VzLCAuYnRuLXByaW1hcnktb3V0bGluZTpmb2N1cy12aXNpYmxlLCAuYnRuLXByaW1hcnktb3V0bGluZS5mb2N1cyxcbiAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgLmJ0bi1wcmltYXJ5LW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsIC5idG4tcHJpbWFyeS1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLFxuICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgLmJ0bi1wcmltYXJ5LW91dGxpbmU6YWN0aXZlLCAuYnRuLXByaW1hcnktb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1wcmltYXJ5LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLFxuICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmU6YWN0aXZlLFxuICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4tcHJpbWFyeS1vdXRsaW5lOmFjdGl2ZTpob3ZlciwgLmJ0bi1wcmltYXJ5LW91dGxpbmU6YWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnktb3V0bGluZTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5LW91dGxpbmU6YWN0aXZlLmZvY3VzLCAuYnRuLXByaW1hcnktb3V0bGluZS5hY3RpdmU6aG92ZXIsIC5idG4tcHJpbWFyeS1vdXRsaW5lLmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5LW91dGxpbmUuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tcHJpbWFyeS1vdXRsaW5lLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeS1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeS1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeS1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLmJ0bi1wcmltYXJ5LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZTphY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cyxcbiAgICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmU6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lOmFjdGl2ZS5mb2N1cyxcbiAgICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmUuYWN0aXZlOmhvdmVyLFxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZS5hY3RpdmU6Zm9jdXMsXG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LW91dGxpbmUtYmctaG92ZXIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gIC5idG4tcHJpbWFyeS1vdXRsaW5lOmFjdGl2ZSwgLmJ0bi1wcmltYXJ5LW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tcHJpbWFyeS1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lOmFjdGl2ZSxcbiAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tcHJpbWFyeS1vdXRsaW5lLmRpc2FibGVkLCAuYnRuLXByaW1hcnktb3V0bGluZVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXByaW1hcnktb3V0bGluZSxcbiAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lLmRpc2FibGVkLFxuICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmVbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKSAhaW1wb3J0YW50OyB9XG4gICAgLmJ0bi1wcmltYXJ5LW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsIC5idG4tcHJpbWFyeS1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLCAuYnRuLXByaW1hcnktb3V0bGluZS5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLCAuYnRuLXByaW1hcnktb3V0bGluZS5kaXNhYmxlZC5mb2N1cywgLmJ0bi1wcmltYXJ5LW91dGxpbmVbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLXByaW1hcnktb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMsIC5idG4tcHJpbWFyeS1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLCAuYnRuLXByaW1hcnktb3V0bGluZVtkaXNhYmxlZF0uZm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeS1vdXRsaW5lOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXByaW1hcnktb3V0bGluZTpmb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5LW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5LW91dGxpbmUuZm9jdXMsXG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLFxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZS5kaXNhYmxlZDpmb2N1cyxcbiAgICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsXG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpob3ZlcixcbiAgICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLFxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmVbZGlzYWJsZWRdLmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tcHJpbWFyeS5idG4tb3V0bGluZTpob3ZlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmU6Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1wcmltYXJ5LmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7IH1cbiAgLmJ0bi1wcmltYXJ5LW91dGxpbmUgLmJhZGdlLFxuICAuYnRuLXByaW1hcnkuYnRuLW91dGxpbmUgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktb3V0bGluZS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuXG4uYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZSxcbi5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZSB7XG4gIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlcik7IH1cbiAgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmU6Zm9jdXMsIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lOmZvY3VzLXZpc2libGUsIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lLmZvY3VzLFxuICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmU6Zm9jdXMsXG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZTpmb2N1cy12aXNpYmxlLFxuICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmUuZm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpob3ZlciwgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsXG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZTphY3RpdmUsIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5kcm9wZG93bi10b2dnbGUsXG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZTphY3RpdmUsXG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlcik7IH1cbiAgICAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZTphY3RpdmU6aG92ZXIsIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lOmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmU6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lOmFjdGl2ZS5mb2N1cywgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmUuYWN0aXZlOmhvdmVyLCAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5hY3RpdmU6Zm9jdXMsIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+IC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyxcbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmU6YWN0aXZlOmhvdmVyLFxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZTphY3RpdmU6Zm9jdXMsXG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZTphY3RpdmUuZm9jdXMsXG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lLmFjdGl2ZTpob3ZlcixcbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmUuYWN0aXZlOmZvY3VzLFxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmUuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKTsgfVxuICAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZTphY3RpdmUsIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5kcm9wZG93bi10b2dnbGUsXG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZTphY3RpdmUsXG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5kaXNhYmxlZCwgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmVbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmUsXG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZS5kaXNhYmxlZCxcbiAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZSB7XG4gICAgb3BhY2l0eTogdmFyKC0tYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItMykgIWltcG9ydGFudDsgfVxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLCAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZS5kaXNhYmxlZDpmb2N1cywgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lW2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmVbZGlzYWJsZWRdLmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXByaW1hcnktZmFkZWQtb3V0bGluZTpob3ZlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1wcmltYXJ5LWZhZGVkLW91dGxpbmU6Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lLmZvY3VzLFxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZS5kaXNhYmxlZDpob3ZlcixcbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMsXG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lLmRpc2FibGVkLmZvY3VzLFxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZVtkaXNhYmxlZF06aG92ZXIsXG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cyxcbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXS5mb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmU6aG92ZXIsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZTpmb2N1cy12aXNpYmxlLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tcHJpbWFyeS1mYWRlZC5idG4tb3V0bGluZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpOyB9XG4gIC5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lIC5iYWRnZSxcbiAgLmJ0bi1wcmltYXJ5LWZhZGVkLmJ0bi1vdXRsaW5lIC5iYWRnZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7IH1cblxuLmJ0bi1zZWNvbmRhcnktb3V0bGluZSxcbi5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLXNlY29uZGFyeSk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zZWNvbmRhcnktYm9yZGVyKTsgfVxuICAuYnRuLXNlY29uZGFyeS1vdXRsaW5lOmZvY3VzLCAuYnRuLXNlY29uZGFyeS1vdXRsaW5lOmZvY3VzLXZpc2libGUsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZm9jdXMsXG4gIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZTpmb2N1cy12aXNpYmxlLFxuICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpob3ZlcixcbiAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1zZWNvbmRhcnktb3V0bGluZTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLFxuICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZTphY3RpdmUsXG4gIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWFjdGl2ZS1ib3JkZXIpOyB9XG4gICAgLmJ0bi1zZWNvbmRhcnktb3V0bGluZTphY3RpdmU6aG92ZXIsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6YWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeS1vdXRsaW5lOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXNlY29uZGFyeS1vdXRsaW5lOmFjdGl2ZS5mb2N1cywgLmJ0bi1zZWNvbmRhcnktb3V0bGluZS5hY3RpdmU6aG92ZXIsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuYWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeS1vdXRsaW5lLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXNlY29uZGFyeS1vdXRsaW5lLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLmJ0bi1zZWNvbmRhcnktb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLXNlY29uZGFyeS1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLmJ0bi1zZWNvbmRhcnktb3V0bGluZS5kcm9wZG93bi10b2dnbGUuZm9jdXMsXG4gICAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmU6YWN0aXZlOmhvdmVyLFxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cyxcbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZTphY3RpdmUuZm9jdXMsXG4gICAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmUuYWN0aXZlOmhvdmVyLFxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lLmFjdGl2ZTpmb2N1cyxcbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1zZWNvbmRhcnktb3V0bGluZTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLFxuICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZTphY3RpdmUsXG4gIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLmJ0bi1zZWNvbmRhcnktb3V0bGluZS5kaXNhYmxlZCwgLmJ0bi1zZWNvbmRhcnktb3V0bGluZVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXNlY29uZGFyeS1vdXRsaW5lLFxuICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5kaXNhYmxlZCxcbiAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmVbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmUge1xuICAgIG9wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpICFpbXBvcnRhbnQ7IH1cbiAgICAuYnRuLXNlY29uZGFyeS1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLCAuYnRuLXNlY29uZGFyeS1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLCAuYnRuLXNlY29uZGFyeS1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLXZpc2libGUsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4tc2Vjb25kYXJ5LW91dGxpbmVbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLXNlY29uZGFyeS1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cywgLmJ0bi1zZWNvbmRhcnktb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zZWNvbmRhcnktb3V0bGluZVtkaXNhYmxlZF0uZm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6aG92ZXIsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tc2Vjb25kYXJ5LW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zZWNvbmRhcnktb3V0bGluZS5mb2N1cyxcbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5kaXNhYmxlZDpob3ZlcixcbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5kaXNhYmxlZDpmb2N1cyxcbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZS5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lLmRpc2FibGVkLmZvY3VzLFxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpob3ZlcixcbiAgICAuYnRuLXNlY29uZGFyeS5idG4tb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMsXG4gICAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmVbZGlzYWJsZWRdLmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tc2Vjb25kYXJ5LmJ0bi1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmUuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKTsgfVxuICAuYnRuLXNlY29uZGFyeS1vdXRsaW5lIC5iYWRnZSxcbiAgLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmUgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXNlY29uZGFyeS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc2Vjb25kYXJ5KTsgfVxuXG4uYnRuLXN1Y2Nlc3Mtb3V0bGluZSxcbi5idG4tc3VjY2Vzcy5idG4tb3V0bGluZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpOyB9XG4gIC5idG4tc3VjY2Vzcy1vdXRsaW5lOmZvY3VzLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZTpmb2N1cy12aXNpYmxlLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZS5mb2N1cyxcbiAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tc3VjY2Vzcy1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvcik7IH1cbiAgLmJ0bi1zdWNjZXNzLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsIC5idG4tc3VjY2Vzcy1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLFxuICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tc3VjY2Vzcy1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvcik7IH1cbiAgLmJ0bi1zdWNjZXNzLW91dGxpbmU6YWN0aXZlLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1zdWNjZXNzLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLFxuICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmU6YWN0aXZlLFxuICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc3VjY2Vzcy1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4tc3VjY2Vzcy1vdXRsaW5lOmFjdGl2ZTpob3ZlciwgLmJ0bi1zdWNjZXNzLW91dGxpbmU6YWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zdWNjZXNzLW91dGxpbmU6YWN0aXZlLmZvY3VzLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZS5hY3RpdmU6aG92ZXIsIC5idG4tc3VjY2Vzcy1vdXRsaW5lLmFjdGl2ZTpmb2N1cywgLmJ0bi1zdWNjZXNzLW91dGxpbmUuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tc3VjY2Vzcy1vdXRsaW5lLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4tc3VjY2Vzcy1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tc3VjY2Vzcy1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tc3VjY2Vzcy1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLmJ0bi1zdWNjZXNzLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZTphY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cyxcbiAgICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmU6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lOmFjdGl2ZS5mb2N1cyxcbiAgICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmUuYWN0aXZlOmhvdmVyLFxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZS5hY3RpdmU6Zm9jdXMsXG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zdWNjZXNzLW91dGxpbmUtYmctaG92ZXIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpOyB9XG4gIC5idG4tc3VjY2Vzcy1vdXRsaW5lOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4tc3VjY2Vzcy1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lOmFjdGl2ZSxcbiAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tc3VjY2Vzcy1vdXRsaW5lLmRpc2FibGVkLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXN1Y2Nlc3Mtb3V0bGluZSxcbiAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lLmRpc2FibGVkLFxuICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmVbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKSAhaW1wb3J0YW50OyB9XG4gICAgLmJ0bi1zdWNjZXNzLW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsIC5idG4tc3VjY2Vzcy1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZS5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZS5kaXNhYmxlZC5mb2N1cywgLmJ0bi1zdWNjZXNzLW91dGxpbmVbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMsIC5idG4tc3VjY2Vzcy1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLCAuYnRuLXN1Y2Nlc3Mtb3V0bGluZVtkaXNhYmxlZF0uZm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tc3VjY2Vzcy1vdXRsaW5lOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXN1Y2Nlc3Mtb3V0bGluZTpmb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zdWNjZXNzLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1zdWNjZXNzLW91dGxpbmUuZm9jdXMsXG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLFxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZS5kaXNhYmxlZDpmb2N1cyxcbiAgICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsXG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpob3ZlcixcbiAgICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLFxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmVbZGlzYWJsZWRdLmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tc3VjY2Vzcy5idG4tb3V0bGluZTpob3ZlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmU6Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1zdWNjZXNzLmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7IH1cbiAgLmJ0bi1zdWNjZXNzLW91dGxpbmUgLmJhZGdlLFxuICAuYnRuLXN1Y2Nlc3MuYnRuLW91dGxpbmUgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXN1Y2Nlc3Mtb3V0bGluZS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTsgfVxuXG4uYnRuLWluZm8tb3V0bGluZSxcbi5idG4taW5mby5idG4tb3V0bGluZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWluZm8tY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWluZm8tY29sb3IpOyB9XG4gIC5idG4taW5mby1vdXRsaW5lOmZvY3VzLCAuYnRuLWluZm8tb3V0bGluZTpmb2N1cy12aXNpYmxlLCAuYnRuLWluZm8tb3V0bGluZS5mb2N1cyxcbiAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAuYnRuLWluZm8uYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1pbmZvLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4taW5mby1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtaW5mby1jb2xvcik7IH1cbiAgLmJ0bi1pbmZvLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsIC5idG4taW5mby1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLFxuICAuYnRuLWluZm8uYnRuLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1pbmZvLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4taW5mby1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtaW5mby1jb2xvcik7IH1cbiAgLmJ0bi1pbmZvLW91dGxpbmU6YWN0aXZlLCAuYnRuLWluZm8tb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1pbmZvLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLFxuICAuYnRuLWluZm8uYnRuLW91dGxpbmU6YWN0aXZlLFxuICAuYnRuLWluZm8uYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4taW5mby5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWluZm8tY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1pbmZvLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4taW5mby1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4taW5mby1vdXRsaW5lOmFjdGl2ZTpob3ZlciwgLmJ0bi1pbmZvLW91dGxpbmU6YWN0aXZlOmZvY3VzLCAuYnRuLWluZm8tb3V0bGluZTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1pbmZvLW91dGxpbmU6YWN0aXZlLmZvY3VzLCAuYnRuLWluZm8tb3V0bGluZS5hY3RpdmU6aG92ZXIsIC5idG4taW5mby1vdXRsaW5lLmFjdGl2ZTpmb2N1cywgLmJ0bi1pbmZvLW91dGxpbmUuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4taW5mby1vdXRsaW5lLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4taW5mby1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4taW5mby1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4taW5mby1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLmJ0bi1pbmZvLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5idG4taW5mby5idG4tb3V0bGluZTphY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cyxcbiAgICAuYnRuLWluZm8uYnRuLW91dGxpbmU6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lOmFjdGl2ZS5mb2N1cyxcbiAgICAuYnRuLWluZm8uYnRuLW91dGxpbmUuYWN0aXZlOmhvdmVyLFxuICAgIC5idG4taW5mby5idG4tb3V0bGluZS5hY3RpdmU6Zm9jdXMsXG4gICAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4taW5mby5idG4tb3V0bGluZS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4taW5mby5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5idG4taW5mby5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4taW5mby5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1pbmZvLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1pbmZvLW91dGxpbmUtYmctaG92ZXIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWluZm8tY29sb3IpOyB9XG4gIC5idG4taW5mby1vdXRsaW5lOmFjdGl2ZSwgLmJ0bi1pbmZvLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4taW5mby1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lOmFjdGl2ZSxcbiAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAuYnRuLWluZm8uYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4taW5mby1vdXRsaW5lLmRpc2FibGVkLCAuYnRuLWluZm8tb3V0bGluZVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWluZm8tb3V0bGluZSxcbiAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lLmRpc2FibGVkLFxuICAuYnRuLWluZm8uYnRuLW91dGxpbmVbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKSAhaW1wb3J0YW50OyB9XG4gICAgLmJ0bi1pbmZvLW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsIC5idG4taW5mby1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLCAuYnRuLWluZm8tb3V0bGluZS5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLCAuYnRuLWluZm8tb3V0bGluZS5kaXNhYmxlZC5mb2N1cywgLmJ0bi1pbmZvLW91dGxpbmVbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLWluZm8tb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMsIC5idG4taW5mby1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLCAuYnRuLWluZm8tb3V0bGluZVtkaXNhYmxlZF0uZm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4taW5mby1vdXRsaW5lOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWluZm8tb3V0bGluZTpmb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1pbmZvLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1pbmZvLW91dGxpbmUuZm9jdXMsXG4gICAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLFxuICAgIC5idG4taW5mby5idG4tb3V0bGluZS5kaXNhYmxlZDpmb2N1cyxcbiAgICAuYnRuLWluZm8uYnRuLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLWluZm8uYnRuLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsXG4gICAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpob3ZlcixcbiAgICAuYnRuLWluZm8uYnRuLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLFxuICAgIC5idG4taW5mby5idG4tb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLWluZm8uYnRuLW91dGxpbmVbZGlzYWJsZWRdLmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4taW5mby5idG4tb3V0bGluZTpob3ZlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLWluZm8uYnRuLW91dGxpbmU6Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7IH1cbiAgLmJ0bi1pbmZvLW91dGxpbmUgLmJhZGdlLFxuICAuYnRuLWluZm8uYnRuLW91dGxpbmUgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWluZm8tb3V0bGluZS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1pbmZvLWNvbG9yKTsgfVxuXG4uYnRuLXdhcm5pbmctb3V0bGluZSxcbi5idG4td2FybmluZy5idG4tb3V0bGluZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpOyB9XG4gIC5idG4td2FybmluZy1vdXRsaW5lOmZvY3VzLCAuYnRuLXdhcm5pbmctb3V0bGluZTpmb2N1cy12aXNpYmxlLCAuYnRuLXdhcm5pbmctb3V0bGluZS5mb2N1cyxcbiAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4td2FybmluZy1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtd2FybmluZy1jb2xvcik7IH1cbiAgLmJ0bi13YXJuaW5nLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsIC5idG4td2FybmluZy1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLFxuICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4td2FybmluZy1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtd2FybmluZy1jb2xvcik7IH1cbiAgLmJ0bi13YXJuaW5nLW91dGxpbmU6YWN0aXZlLCAuYnRuLXdhcm5pbmctb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi13YXJuaW5nLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLFxuICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmU6YWN0aXZlLFxuICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4td2FybmluZy5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi13YXJuaW5nLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4td2FybmluZy1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4td2FybmluZy1vdXRsaW5lOmFjdGl2ZTpob3ZlciwgLmJ0bi13YXJuaW5nLW91dGxpbmU6YWN0aXZlOmZvY3VzLCAuYnRuLXdhcm5pbmctb3V0bGluZTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi13YXJuaW5nLW91dGxpbmU6YWN0aXZlLmZvY3VzLCAuYnRuLXdhcm5pbmctb3V0bGluZS5hY3RpdmU6aG92ZXIsIC5idG4td2FybmluZy1vdXRsaW5lLmFjdGl2ZTpmb2N1cywgLmJ0bi13YXJuaW5nLW91dGxpbmUuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4td2FybmluZy1vdXRsaW5lLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5idG4td2FybmluZy1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4td2FybmluZy1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4td2FybmluZy1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLmJ0bi13YXJuaW5nLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZTphY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cyxcbiAgICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmU6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lOmFjdGl2ZS5mb2N1cyxcbiAgICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmUuYWN0aXZlOmhvdmVyLFxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZS5hY3RpdmU6Zm9jdXMsXG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi13YXJuaW5nLW91dGxpbmUtYmctaG92ZXIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpOyB9XG4gIC5idG4td2FybmluZy1vdXRsaW5lOmFjdGl2ZSwgLmJ0bi13YXJuaW5nLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+IC5idG4td2FybmluZy1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lOmFjdGl2ZSxcbiAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4td2FybmluZy1vdXRsaW5lLmRpc2FibGVkLCAuYnRuLXdhcm5pbmctb3V0bGluZVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXdhcm5pbmctb3V0bGluZSxcbiAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lLmRpc2FibGVkLFxuICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmVbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKSAhaW1wb3J0YW50OyB9XG4gICAgLmJ0bi13YXJuaW5nLW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsIC5idG4td2FybmluZy1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLCAuYnRuLXdhcm5pbmctb3V0bGluZS5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLCAuYnRuLXdhcm5pbmctb3V0bGluZS5kaXNhYmxlZC5mb2N1cywgLmJ0bi13YXJuaW5nLW91dGxpbmVbZGlzYWJsZWRdOmhvdmVyLCAuYnRuLXdhcm5pbmctb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMsIC5idG4td2FybmluZy1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLCAuYnRuLXdhcm5pbmctb3V0bGluZVtkaXNhYmxlZF0uZm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4td2FybmluZy1vdXRsaW5lOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLXdhcm5pbmctb3V0bGluZTpmb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi13YXJuaW5nLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi13YXJuaW5nLW91dGxpbmUuZm9jdXMsXG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLFxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZS5kaXNhYmxlZDpmb2N1cyxcbiAgICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsXG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpob3ZlcixcbiAgICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLFxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmVbZGlzYWJsZWRdLmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4td2FybmluZy5idG4tb3V0bGluZTpob3ZlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmU6Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi13YXJuaW5nLmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7IH1cbiAgLmJ0bi13YXJuaW5nLW91dGxpbmUgLmJhZGdlLFxuICAuYnRuLXdhcm5pbmcuYnRuLW91dGxpbmUgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXdhcm5pbmctb3V0bGluZS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTsgfVxuXG4uYnRuLWRhbmdlci1vdXRsaW5lLFxuLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmUge1xuICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cbiAgLmJ0bi1kYW5nZXItb3V0bGluZTpmb2N1cywgLmJ0bi1kYW5nZXItb3V0bGluZTpmb2N1cy12aXNpYmxlLCAuYnRuLWRhbmdlci1vdXRsaW5lLmZvY3VzLFxuICAuYnRuLWRhbmdlci5idG4tb3V0bGluZTpmb2N1cyxcbiAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmUuZm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRhbmdlci1vdXRsaW5lLWJnLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTsgfVxuICAuYnRuLWRhbmdlci1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLCAuYnRuLWRhbmdlci1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIsXG4gIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGFuZ2VyLW91dGxpbmUtYmctaG92ZXIpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpOyB9XG4gIC5idG4tZGFuZ2VyLW91dGxpbmU6YWN0aXZlLCAuYnRuLWRhbmdlci1vdXRsaW5lLmFjdGl2ZSxcbiAgLm9wZW4gPiAuYnRuLWRhbmdlci1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmU6YWN0aXZlLFxuICAuYnRuLWRhbmdlci5idG4tb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItYWN0aXZlLWJvcmRlcik7IH1cbiAgICAuYnRuLWRhbmdlci1vdXRsaW5lOmFjdGl2ZTpob3ZlciwgLmJ0bi1kYW5nZXItb3V0bGluZTphY3RpdmU6Zm9jdXMsIC5idG4tZGFuZ2VyLW91dGxpbmU6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tZGFuZ2VyLW91dGxpbmU6YWN0aXZlLmZvY3VzLCAuYnRuLWRhbmdlci1vdXRsaW5lLmFjdGl2ZTpob3ZlciwgLmJ0bi1kYW5nZXItb3V0bGluZS5hY3RpdmU6Zm9jdXMsIC5idG4tZGFuZ2VyLW91dGxpbmUuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tZGFuZ2VyLW91dGxpbmUuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1kYW5nZXItb3V0bGluZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlci1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5idG4tZGFuZ2VyLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPiAuYnRuLWRhbmdlci1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyxcbiAgICAuYnRuLWRhbmdlci5idG4tb3V0bGluZTphY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmU6YWN0aXZlOmZvY3VzLFxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lOmFjdGl2ZS5mb2N1cyxcbiAgICAuYnRuLWRhbmdlci5idG4tb3V0bGluZS5hY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmUuYWN0aXZlOmZvY3VzLFxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLWRhbmdlci5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLWRhbmdlci5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kYW5nZXItb3V0bGluZS1iZy1ob3Zlcik7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTsgfVxuICAuYnRuLWRhbmdlci1vdXRsaW5lOmFjdGl2ZSwgLmJ0bi1kYW5nZXItb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1kYW5nZXItb3V0bGluZS5kcm9wZG93bi10b2dnbGUsXG4gIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lOmFjdGl2ZSxcbiAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAuYnRuLWRhbmdlci1vdXRsaW5lLmRpc2FibGVkLCAuYnRuLWRhbmdlci1vdXRsaW5lW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZGFuZ2VyLW91dGxpbmUsXG4gIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lLmRpc2FibGVkLFxuICAuYnRuLWRhbmdlci5idG4tb3V0bGluZVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAuYnRuLWRhbmdlci5idG4tb3V0bGluZSB7XG4gICAgb3BhY2l0eTogdmFyKC0tYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItMykgIWltcG9ydGFudDsgfVxuICAgIC5idG4tZGFuZ2VyLW91dGxpbmUuZGlzYWJsZWQ6aG92ZXIsIC5idG4tZGFuZ2VyLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tZGFuZ2VyLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1kYW5nZXItb3V0bGluZS5kaXNhYmxlZC5mb2N1cywgLmJ0bi1kYW5nZXItb3V0bGluZVtkaXNhYmxlZF06aG92ZXIsIC5idG4tZGFuZ2VyLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLWRhbmdlci1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLCAuYnRuLWRhbmdlci1vdXRsaW5lW2Rpc2FibGVkXS5mb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kYW5nZXItb3V0bGluZTpob3ZlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kYW5nZXItb3V0bGluZTpmb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1kYW5nZXItb3V0bGluZTpmb2N1cy12aXNpYmxlLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRhbmdlci1vdXRsaW5lLmZvY3VzLFxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLFxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLFxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsXG4gICAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmhvdmVyLFxuICAgIC5idG4tZGFuZ2VyLmJ0bi1vdXRsaW5lW2Rpc2FibGVkXTpmb2N1cyxcbiAgICAuYnRuLWRhbmdlci5idG4tb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLWRhbmdlci5idG4tb3V0bGluZVtkaXNhYmxlZF0uZm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmU6aG92ZXIsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmU6Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLWRhbmdlci5idG4tb3V0bGluZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpOyB9XG4gIC5idG4tZGFuZ2VyLW91dGxpbmUgLmJhZGdlLFxuICAuYnRuLWRhbmdlci5idG4tb3V0bGluZSAuYmFkZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGFuZ2VyLW91dGxpbmUtYmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTsgfVxuXG4uYnRuLWxpZ2h0LW91dGxpbmUsXG4uYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lIHtcbiAgY29sb3I6IHZhcigtLWJ0bi1saWdodC1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1saWdodC1ib3JkZXIpOyB9XG4gIC5idG4tbGlnaHQtb3V0bGluZTpmb2N1cywgLmJ0bi1saWdodC1vdXRsaW5lOmZvY3VzLXZpc2libGUsIC5idG4tbGlnaHQtb3V0bGluZS5mb2N1cyxcbiAgLmJ0bi1saWdodC5idG4tb3V0bGluZTpmb2N1cyxcbiAgLmJ0bi1saWdodC5idG4tb3V0bGluZTpmb2N1cy12aXNpYmxlLFxuICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tbGlnaHQtaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWJvcmRlcik7IH1cbiAgLmJ0bi1saWdodC1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLCAuYnRuLWxpZ2h0LW91dGxpbmU6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLFxuICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1saWdodC1ob3Zlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1saWdodC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tbGlnaHQtb3V0bGluZTphY3RpdmUsIC5idG4tbGlnaHQtb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1saWdodC1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmJ0bi1saWdodC5idG4tb3V0bGluZTphY3RpdmUsXG4gIC5idG4tbGlnaHQuYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4tbGlnaHQuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tbGlnaHQtYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1saWdodC1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5idG4tbGlnaHQtb3V0bGluZTphY3RpdmU6aG92ZXIsIC5idG4tbGlnaHQtb3V0bGluZTphY3RpdmU6Zm9jdXMsIC5idG4tbGlnaHQtb3V0bGluZTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1saWdodC1vdXRsaW5lOmFjdGl2ZS5mb2N1cywgLmJ0bi1saWdodC1vdXRsaW5lLmFjdGl2ZTpob3ZlciwgLmJ0bi1saWdodC1vdXRsaW5lLmFjdGl2ZTpmb2N1cywgLmJ0bi1saWdodC1vdXRsaW5lLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLWxpZ2h0LW91dGxpbmUuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLmJ0bi1saWdodC1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5idG4tbGlnaHQtb3V0bGluZS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAuYnRuLWxpZ2h0LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPiAuYnRuLWxpZ2h0LW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmU6YWN0aXZlOmhvdmVyLFxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmU6YWN0aXZlOmZvY3VzLFxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmU6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1saWdodC5idG4tb3V0bGluZTphY3RpdmUuZm9jdXMsXG4gICAgLmJ0bi1saWdodC5idG4tb3V0bGluZS5hY3RpdmU6aG92ZXIsXG4gICAgLmJ0bi1saWdodC5idG4tb3V0bGluZS5hY3RpdmU6Zm9jdXMsXG4gICAgLmJ0bi1saWdodC5idG4tb3V0bGluZS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLmJ0bi1saWdodC5idG4tb3V0bGluZS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID5cbiAgICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWxpZ2h0LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1saWdodC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1saWdodC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5idG4tbGlnaHQtb3V0bGluZTphY3RpdmUsIC5idG4tbGlnaHQtb3V0bGluZS5hY3RpdmUsXG4gIC5vcGVuID4gLmJ0bi1saWdodC1vdXRsaW5lLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmJ0bi1saWdodC5idG4tb3V0bGluZTphY3RpdmUsXG4gIC5idG4tbGlnaHQuYnRuLW91dGxpbmUuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5idG4tbGlnaHQuYnRuLW91dGxpbmUuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5idG4tbGlnaHQtb3V0bGluZS5kaXNhYmxlZCwgLmJ0bi1saWdodC1vdXRsaW5lW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tbGlnaHQtb3V0bGluZSxcbiAgLmJ0bi1saWdodC5idG4tb3V0bGluZS5kaXNhYmxlZCxcbiAgLmJ0bi1saWdodC5idG4tb3V0bGluZVtkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKSAhaW1wb3J0YW50OyB9XG4gICAgLmJ0bi1saWdodC1vdXRsaW5lLmRpc2FibGVkOmhvdmVyLCAuYnRuLWxpZ2h0LW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMsIC5idG4tbGlnaHQtb3V0bGluZS5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLCAuYnRuLWxpZ2h0LW91dGxpbmUuZGlzYWJsZWQuZm9jdXMsIC5idG4tbGlnaHQtb3V0bGluZVtkaXNhYmxlZF06aG92ZXIsIC5idG4tbGlnaHQtb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMsIC5idG4tbGlnaHQtb3V0bGluZVtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSwgLmJ0bi1saWdodC1vdXRsaW5lW2Rpc2FibGVkXS5mb2N1cyxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1saWdodC1vdXRsaW5lOmhvdmVyLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWxpZ2h0LW91dGxpbmU6Zm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tbGlnaHQtb3V0bGluZTpmb2N1cy12aXNpYmxlLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWxpZ2h0LW91dGxpbmUuZm9jdXMsXG4gICAgLmJ0bi1saWdodC5idG4tb3V0bGluZS5kaXNhYmxlZDpob3ZlcixcbiAgICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lLmRpc2FibGVkOmZvY3VzLFxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmUuZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSxcbiAgICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lLmRpc2FibGVkLmZvY3VzLFxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmhvdmVyLFxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLFxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmVbZGlzYWJsZWRdOmZvY3VzLXZpc2libGUsXG4gICAgLmJ0bi1saWdodC5idG4tb3V0bGluZVtkaXNhYmxlZF0uZm9jdXMsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLmJ0bi1saWdodC5idG4tb3V0bGluZTpob3ZlcixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5idG4tbGlnaHQuYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAuYnRuLWxpZ2h0LmJ0bi1vdXRsaW5lLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7IH1cbiAgLmJ0bi1saWdodC1vdXRsaW5lIC5iYWRnZSxcbiAgLmJ0bi1saWdodC5idG4tb3V0bGluZSAuYmFkZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tbGlnaHQtYmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1saWdodC1jb2xvcik7IH1cblxuLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1idG4tbGluay1mb250LXdlaWdodCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCguYnRuLXNlY29uZGFyeSk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4taW5mbyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1kYXJrKTpub3QoLmJ0bi1saWdodCkge1xuICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoLmJ0bi1zZWNvbmRhcnkpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tZGFyayk6bm90KC5idG4tbGlnaHQpOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbGluay1ob3Zlci1kZWNvcmF0aW9uKTsgfVxuICAgIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KC5idG4tc2Vjb25kYXJ5KTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLWRhcmspOm5vdCguYnRuLWxpZ2h0KTpmb2N1cywgLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoLmJ0bi1zZWNvbmRhcnkpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tZGFyayk6bm90KC5idG4tbGlnaHQpLmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbGluay1ob3Zlci1kZWNvcmF0aW9uKTsgfVxuICAgIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KC5idG4tc2Vjb25kYXJ5KTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLWRhcmspOm5vdCguYnRuLWxpZ2h0KTpkaXNhYmxlZCwgLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoLmJ0bi1zZWNvbmRhcnkpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tZGFyayk6bm90KC5idG4tbGlnaHQpLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1zdWNjZXNzIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTsgfVxuICAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmJ0bi13YXJuaW5nIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTsgfVxuICAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1kYW5nZXIge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cblxuLmJ0bi14bGcge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC14bGcpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLXhsZy12KSB2YXIoLS11aS1wYWRkaW5nLXhsZy1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1idG4teGxnLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1idG4teGxnLWxpbmUtaGVpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXhsZy1ib3JkZXItcmFkaXVzKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWJ0bi14bGctZm9udC13ZWlnaHQpOyB9XG4gIC5idG4teGxnLmljb24tYW5pbWF0aW9uIC5idG4taWNvbiB7XG4gICAgbGVmdDogdmFyKC0tdWktcGFkZGluZy14bGctaCk7IH1cbiAgLmJ0bi14bGcuaWNvbi1hbmltYXRpb24uZmxleC1yb3ctcmV2ZXJzZSAuYnRuLWljb24ge1xuICAgIHJpZ2h0OiB2YXIoLS11aS1wYWRkaW5nLXhsZy1oKTtcbiAgICBsZWZ0OiB1bnNldDsgfVxuICAuYnRuLXhsZy5idG4taWNvbiB7XG4gICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQteGxnKTtcbiAgICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0LXhsZyk7IH1cbiAgLmJ0bi14bGcgaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1idG4teGxnLWljb24tc3BhY2luZyk7IH1cbiAgICAuYnRuLXhsZyBpOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWJ0bi14bGctaWNvbi1zcGFjaW5nKTsgfVxuXG4uYnRuLWxnLCAuYnRuLWdyb3VwLWxnID4gLmJ0biB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTtcbiAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLXBhZGRpbmctbGctaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYnRuLWxnLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1idG4tbGctbGluZS1oZWlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tbGctYm9yZGVyLXJhZGl1cyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1idG4tbGctZm9udC13ZWlnaHQpOyB9XG4gIC5idG4tbGcuaWNvbi1hbmltYXRpb24gLmJ0bi1pY29uLCAuYnRuLWdyb3VwLWxnID4gLmljb24tYW5pbWF0aW9uLmJ0biAuYnRuLWljb24ge1xuICAgIGxlZnQ6IHZhcigtLXVpLXBhZGRpbmctbGctaCk7IH1cbiAgLmJ0bi1sZy5pY29uLWFuaW1hdGlvbi5mbGV4LXJvdy1yZXZlcnNlIC5idG4taWNvbiwgLmJ0bi1ncm91cC1sZyA+IC5pY29uLWFuaW1hdGlvbi5mbGV4LXJvdy1yZXZlcnNlLmJ0biAuYnRuLWljb24ge1xuICAgIHJpZ2h0OiB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xuICAgIGxlZnQ6IHVuc2V0OyB9XG4gIC5idG4tbGcuYnRuLWljb24sIC5idG4tZ3JvdXAtbGcgPiAuYnRuLWljb24uYnRuIHtcbiAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XG4gICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodC1sZyk7IH1cbiAgLmJ0bi1sZyBpLCAuYnRuLWdyb3VwLWxnID4gLmJ0biBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWJ0bi1sZy1pY29uLXNwYWNpbmcpOyB9XG4gICAgLmJ0bi1sZyBpOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5idG4tZ3JvdXAtbGcgPiAuYnRuIGk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLWxnLWljb24tc3BhY2luZyk7IH1cblxuLmJ0bi1zbSwgLmJ0bi1ncm91cC1zbSA+IC5idG4ge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctc20tdikgdmFyKC0tdWktcGFkZGluZy1zbS1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1idG4tc20tZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJ0bi1zbS1saW5lLWhlaWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1zbS1ib3JkZXItcmFkaXVzKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWJ0bi1zbS1mb250LXdlaWdodCk7IH1cbiAgLmJ0bi1zbS5pY29uLWFuaW1hdGlvbiAuYnRuLWljb24sIC5idG4tZ3JvdXAtc20gPiAuaWNvbi1hbmltYXRpb24uYnRuIC5idG4taWNvbiB7XG4gICAgbGVmdDogdmFyKC0tdWktcGFkZGluZy1zbS1oKTsgfVxuICAuYnRuLXNtLmljb24tYW5pbWF0aW9uLmZsZXgtcm93LXJldmVyc2UgLmJ0bi1pY29uLCAuYnRuLWdyb3VwLXNtID4gLmljb24tYW5pbWF0aW9uLmZsZXgtcm93LXJldmVyc2UuYnRuIC5idG4taWNvbiB7XG4gICAgcmlnaHQ6IHZhcigtLXVpLXBhZGRpbmctc20taCk7XG4gICAgbGVmdDogdW5zZXQ7IH1cbiAgLmJ0bi1zbS5idG4taWNvbiwgLmJ0bi1ncm91cC1zbSA+IC5idG4taWNvbi5idG4ge1xuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXNtKTtcbiAgICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0LXNtKTsgfVxuICAuYnRuLXNtIGksIC5idG4tZ3JvdXAtc20gPiAuYnRuIGkge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYnRuLXNtLWljb24tc3BhY2luZyk7IH1cbiAgICAuYnRuLXNtIGk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmJ0bi1ncm91cC1zbSA+IC5idG4gaTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1idG4tc20taWNvbi1zcGFjaW5nKTsgfVxuXG4uYnRuLXhzIHtcbiAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQteHMpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLXhzLXYpIHZhcigtLXVpLXBhZGRpbmcteHMtaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYnRuLXhzLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1idG4teHMtbGluZS1oZWlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4teHMtYm9yZGVyLXJhZGl1cyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1idG4teHMtZm9udC13ZWlnaHQpOyB9XG4gIC5idG4teHMuaWNvbi1hbmltYXRpb24gLmJ0bi1pY29uIHtcbiAgICBsZWZ0OiB2YXIoLS11aS1wYWRkaW5nLXhzLWgpOyB9XG4gIC5idG4teHMuaWNvbi1hbmltYXRpb24uZmxleC1yb3ctcmV2ZXJzZSAuYnRuLWljb24ge1xuICAgIHJpZ2h0OiB2YXIoLS11aS1wYWRkaW5nLXhzLWgpO1xuICAgIGxlZnQ6IHVuc2V0OyB9XG4gIC5idG4teHMuYnRuLWljb24ge1xuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhzKTtcbiAgICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0LXhzKTsgfVxuICAuYnRuLXhzIGkge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYnRuLXhzLWljb24tc3BhY2luZyk7IH1cbiAgICAuYnRuLXhzIGk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLXhzLWljb24tc3BhY2luZyk7IH1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tYnRuLWJsb2NrLXNwYWNpbmcteSk7IH1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idG4tYmxvY2ssXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idG4tYmxvY2sge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uYnRuLmJ0bi1pY29uLmJ0bi1ob3Zlci1kYW5nZXI6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpOyB9XG5cbi5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tY2FyZXQtd2lkdGgtYmFzZSkgZGFzaGVkO1xuICBib3JkZXItdG9wOiB2YXIoLS1jYXJldC13aWR0aC1iYXNlKSBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1jYXJldC13aWR0aC1iYXNlKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6IHZhcigtLWNhcmV0LXdpZHRoLWJhc2UpIHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5kcm9wZG93bi1tdWx0aS1sZXZlbCAuZHJvcGRvd24tbWVudS1zZWFyY2ggLmRyb3Bkb3duLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcbiAgYm9yZGVyOiB1bnNldDsgfVxuXG4uZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tbWVudSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7IH1cblxuLmRyb3Bkb3duLW11bHRpLWxldmVsIC5kcm9wZG93bi1kaXZpZGVyIHtcbiAgbWFyZ2luLWJsb2NrOiBjYWxjKHZhcigtLW5hdi1kaXZpZGVyLW1hcmdpbi15KSAqIDAuNSk7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kcm9wZG93bi1kaXZpZGVyLWJnKTsgfVxuXG4uZHJvcGRvd24tbXVsdGktbGV2ZWwgLmRyb3Bkb3duID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctdikgdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC5kcm9wZG93bi1tdWx0aS1sZXZlbCAuZHJvcGRvd24gPiAuZHJvcGRvd24tdG9nZ2xlOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpOyB9XG5cbi5kcm9wZG93bi1tdWx0aS1sZXZlbCAuZHJvcGRvd24uc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tbWVudSA+IC5kcm9wZG93biA+IC5kcm9wZG93bi1tZW51OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1iZyk7XG4gIGNvbnRlbnQ6ICcnO1xuICB6LWluZGV4OiAtMjsgfVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiB2YXIoLS16aW5kZXgtZHJvcGRvd24pO1xuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiB2YXIoLS1kcm9wZG93bi1taW4td2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS1uYXYtZGl2aWRlci1tYXJnaW4teSkgMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xuICBib3JkZXI6IHZhcigtLWRyb3Bkb3duLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBib3gtc2hhZG93OiB2YXIoLS1kcm9wZG93bi1ib3gtc2hhZG93KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE2cHgpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1zaG93LWFuaW1hdGlvbik7IH1cbiAgLmRyb3Bkb3duLW1lbnUucHVsbC1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24tbWVudSAuZGl2aWRlcixcbiAgLmRyb3Bkb3duLW1lbnUgLm5hdi1kaXZpZGVyIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiB2YXIoLS1uYXYtZGl2aWRlci1tYXJnaW4teSkgMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1kcm9wZG93bi1kaXZpZGVyLWJnKTsgfVxuICAuZHJvcGRvd24tbWVudSA+IGxpID4gYSxcbiAgLmRyb3Bkb3duLW1lbnUgbGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW0sXG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtLFxuICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtID4gYSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLXYpIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5uYXYtaGVhZGVyLXRleHQgPiBpLFxuICAgIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhID4gaSxcbiAgICAuZHJvcGRvd24tbWVudSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlID4gLm5hdi1oZWFkZXItaXRlbSAubmF2LWhlYWRlci10ZXh0ID4gaSxcbiAgICAuZHJvcGRvd24tbWVudSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlID4gLm5hdi1oZWFkZXItaXRlbSA+IGksXG4gICAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gLm5hdi1oZWFkZXItdGV4dCA+IGksXG4gICAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gPiBpLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5uYXYtaGVhZGVyLXRleHQgPiBpLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhID4gaSB7XG4gICAgICB3aWR0aDogMTRweDtcbiAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWljb24tY29sb3IpO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgICAuZHJvcGRvd24tbWVudSA+IGxpID4gYSAubmF2LWhlYWRlci10ZXh0ID4gc3ZnLFxuICAgIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5uYXYtaGVhZGVyLXRleHQgPiBpbWcsXG4gICAgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgLnN2Zy1pY29uLFxuICAgIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhID4gc3ZnLFxuICAgIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhID4gaW1nLFxuICAgIC5kcm9wZG93bi1tZW51IGxpLm5hdi1oZWFkZXItY29sbGFwc2UgPiAubmF2LWhlYWRlci1pdGVtIC5uYXYtaGVhZGVyLXRleHQgPiBzdmcsXG4gICAgLmRyb3Bkb3duLW1lbnUgbGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW0gLm5hdi1oZWFkZXItdGV4dCA+IGltZyxcbiAgICAuZHJvcGRvd24tbWVudSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlID4gLm5hdi1oZWFkZXItaXRlbSAuc3ZnLWljb24sXG4gICAgLmRyb3Bkb3duLW1lbnUgbGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW0gPiBzdmcsXG4gICAgLmRyb3Bkb3duLW1lbnUgbGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW0gPiBpbWcsXG4gICAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gLm5hdi1oZWFkZXItdGV4dCA+IHN2ZyxcbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSAubmF2LWhlYWRlci10ZXh0ID4gaW1nLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtIC5zdmctaWNvbixcbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSA+IHN2ZyxcbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSA+IGltZyxcbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtID4gYSAubmF2LWhlYWRlci10ZXh0ID4gc3ZnLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5uYXYtaGVhZGVyLXRleHQgPiBpbWcsXG4gICAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgLnN2Zy1pY29uLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhID4gc3ZnLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhID4gaW1nIHtcbiAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcbiAgICAgIG1pbi13aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcbiAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5uYXYtaGVhZGVyLXRleHQgPiBpbWcsXG4gICAgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgPiBpbWcsXG4gICAgLmRyb3Bkb3duLW1lbnUgbGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW0gLm5hdi1oZWFkZXItdGV4dCA+IGltZyxcbiAgICAuZHJvcGRvd24tbWVudSBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlID4gLm5hdi1oZWFkZXItaXRlbSA+IGltZyxcbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSAubmF2LWhlYWRlci10ZXh0ID4gaW1nLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtID4gaW1nLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5uYXYtaGVhZGVyLXRleHQgPiBpbWcsXG4gICAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEgPiBpbWcge1xuICAgICAgaGVpZ2h0OiB1bnNldDsgfVxuICAgIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5zdGF0dXMsXG4gICAgLmRyb3Bkb3duLW1lbnUgbGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW0gLnN0YXR1cyxcbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSAuc3RhdHVzLFxuICAgIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0gPiBhIC5zdGF0dXMge1xuICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstY29sb3IpOyB9XG4gIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtLmlzLWRpc2FibGVkID4gYSB7XG4gICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpOyB9XG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0tY2hlY2tib3g6aGFzKC5kaXNhYmxlZCkge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtLWNoZWNrYm94IGxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctdikgdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtLWNoZWNrYm94IGxhYmVsOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7IH1cbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtLWNoZWNrYm94IGxhYmVsIC5jaGVja2JveC1zdHlsZWQge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgei1pbmRleDogLTE7IH1cbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtLWNoZWNrYm94IGxhYmVsIHNwYW4ge1xuICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstY29sb3IpOyB9XG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWl0ZW0tY2hlY2tib3guYWN0aXZlIGxhYmVsIHtcbiAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbS1jaGVja2JveC5hY3RpdmUgbGFiZWwgc3BhbiB7XG4gICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpOyB9XG4gIC5kcm9wZG93bi1tZW51LmRyb3Bkb3duLW1lbnUtY29sbGFwc2UgPiBsaSA+IGEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1kcm9wZG93bi1jb2xsYXBzZS1saW5rLXBhZGRpbmctaCk7IH1cbiAgICAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1tZW51LWNvbGxhcHNlID4gbGkgPiBhOmhvdmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1kcm9wZG93bi1jb2xsYXBzZS1saW5rLXBhZGRpbmctaCkgKyB2YXIoLS11aS1uYXYtdi1saW5rLWhvdmVyLXBhZGRpbmctaCkpO1xuICAgICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1kcm9wZG93bi1jb2xsYXBzZS1saW5rLXBhZGRpbmctaCkgLSB2YXIoLS11aS1uYXYtdi1saW5rLWhvdmVyLXBhZGRpbmctaCkpOyB9XG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51LWhlYWRlciB7XG4gICAgcGFkZGluZzogdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLXYpIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XG4gICAgY29sb3I6IHZhcigtLWdyYXktbGlnaHRlcik7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICAgIGJvcmRlci13aWR0aDogMXB4IDA7IH1cbiAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbXM6aGFzKC5kcm9wZG93bi1tZW51LWhlYWRlcikge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cbiAgICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtczpoYXMoLmRyb3Bkb3duLW1lbnUtaGVhZGVyKSA+IC5kcm9wZG93bi1tZW51LWhlYWRlcjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG5cbi5kcm9wZG93bi5pcy1lbXB0eSAuZHJvcGRvd24taXRlbXMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5kcm9wZG93bi5pcy1lbXB0eSAuZHJvcGRvd24tbWVudS1uby1kYXRhIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5zdGF0dXMtaWNvbnMtZW5hYmxlZCAuZHJvcGRvd24udmlldy1maWx0ZXItYnRucyAuYnRuID4gLnN0YXR1cyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnN0YXR1cy1pY29ucy1lbmFibGVkIC5kcm9wZG93bi52aWV3LWZpbHRlci1idG5zIC5idG4gLnN0YXR1cy1pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7IH1cbiAgLnN0YXR1cy1pY29ucy1lbmFibGVkIC5kcm9wZG93bi52aWV3LWZpbHRlci1idG5zIC5idG4gLnN0YXR1cy1pY29uID4gc3ZnIHtcbiAgICB3aWR0aDogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICAgIGhlaWdodDogdmFyKC0tZm9udC1zaXplLWJhc2UpOyB9XG5cbi5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmhvdmVyLCAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpmb2N1cyxcbi5kcm9wZG93bi1pdGVtOmhvdmVyLFxuLmRyb3Bkb3duLWl0ZW06Zm9jdXMsXG4uZHJvcGRvd24tbWVudS1pdGVtID4gYTpob3Zlcixcbi5kcm9wZG93bi1tZW51LWl0ZW0gPiBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpICsgdmFyKC0tdWktbmF2LXYtbGluay1ob3Zlci1wYWRkaW5nLWgpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCkgLSB2YXIoLS11aS1uYXYtdi1saW5rLWhvdmVyLXBhZGRpbmctaCkpOyB9XG4gIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmhvdmVyID4gaSwgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6Zm9jdXMgPiBpLFxuICAuZHJvcGRvd24taXRlbTpob3ZlciA+IGksXG4gIC5kcm9wZG93bi1pdGVtOmZvY3VzID4gaSxcbiAgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGE6aG92ZXIgPiBpLFxuICAuZHJvcGRvd24tbWVudS1pdGVtID4gYTpmb2N1cyA+IGkge1xuICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWljb24taG92ZXItY29sb3IpOyB9XG5cbmxpLm5hdi1oZWFkZXItY29sbGFwc2U6aG92ZXIgPiAubmF2LWhlYWRlci1pdGVtLCBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlOmZvY3VzID4gLm5hdi1oZWFkZXItaXRlbSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpOyB9XG4gIGxpLm5hdi1oZWFkZXItY29sbGFwc2U6aG92ZXIgPiAubmF2LWhlYWRlci1pdGVtIC5scy1jYXJldCwgbGkubmF2LWhlYWRlci1jb2xsYXBzZTpmb2N1cyA+IC5uYXYtaGVhZGVyLWl0ZW0gLmxzLWNhcmV0IHtcbiAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1pY29uLWFjdGl2ZS1jb2xvcik7IH1cblxuLmRyb3Bkb3duLWl0ZW0uYWN0aXZlLCAuZHJvcGRvd24taXRlbS5hY3RpdmU6aG92ZXIsIC5kcm9wZG93bi1pdGVtLmFjdGl2ZTpmb2N1cyxcbi5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSxcbi5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYTpob3Zlcixcbi5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYTpmb2N1cyxcbi5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEsXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlID4gaSwgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlOmhvdmVyID4gaSwgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlOmZvY3VzID4gaSxcbiAgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhID4gaSxcbiAgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhOmhvdmVyID4gaSxcbiAgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhOmZvY3VzID4gaSxcbiAgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSA+IGksXG4gIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGE6aG92ZXIgPiBpLFxuICAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmZvY3VzID4gaSB7XG4gICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaWNvbi1hY3RpdmUtY29sb3IpOyB9XG4gIC5kcm9wZG93bi1pdGVtLmFjdGl2ZSAuc3RhdHVzLCAuZHJvcGRvd24taXRlbS5hY3RpdmU6aG92ZXIgLnN0YXR1cywgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlOmZvY3VzIC5zdGF0dXMsXG4gIC5kcm9wZG93bi1tZW51LWl0ZW0uYWN0aXZlID4gYSAuc3RhdHVzLFxuICAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGE6aG92ZXIgLnN0YXR1cyxcbiAgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhOmZvY3VzIC5zdGF0dXMsXG4gIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGEgLnN0YXR1cyxcbiAgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpob3ZlciAuc3RhdHVzLFxuICAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmZvY3VzIC5zdGF0dXMge1xuICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7IH1cblxuLmRyb3Bkb3duLW1lZ2EgLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7IH1cblxubGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW0gLmxzLWNhcmV0IHtcbiAgY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtaWNvbi1jb2xvcik7IH1cblxubGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIgLmxzLWNhcmV0LCBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlID4gLm5hdi1oZWFkZXItaXRlbTpmb2N1cyAubHMtY2FyZXQge1xuICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1pY29uLWFjdGl2ZS1jb2xvcik7IH1cblxubGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIgLm5hdi1oZWFkZXItdGV4dCA+IGksIGxpLm5hdi1oZWFkZXItY29sbGFwc2UgPiAubmF2LWhlYWRlci1pdGVtOmZvY3VzIC5uYXYtaGVhZGVyLXRleHQgPiBpIHtcbiAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaWNvbi1hY3RpdmUtY29sb3IpOyB9XG5cbmxpLm5hdi1oZWFkZXItY29sbGFwc2UgPiAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSB7XG4gIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgdHJhbnNmb3JtOiBub25lOyB9XG4gIGxpLm5hdi1oZWFkZXItY29sbGFwc2UgPiAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSAubHMtY2FyZXQge1xuICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuICBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlID4gLm5hdi1oZWFkZXItaXRlbTpub3QoLmNvbGxhcHNlZCkgLm5hdi1oZWFkZXItdGV4dCA+IGkge1xuICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWljb24tYWN0aXZlLWNvbG9yKTsgfVxuXG4uZHJvcGRvd24taXRlbS5kaXNhYmxlZCwgLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQ6aG92ZXIsIC5kcm9wZG93bi1pdGVtLmRpc2FibGVkOmZvY3VzLFxuLmRyb3Bkb3duLW1lbnUtaXRlbS5kaXNhYmxlZCA+IGEsXG4uZHJvcGRvd24tbWVudS1pdGVtLmRpc2FibGVkID4gYTpob3Zlcixcbi5kcm9wZG93bi1tZW51LWl0ZW0uZGlzYWJsZWQgPiBhOmZvY3VzLFxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhLFxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmhvdmVyLFxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpOyB9XG5cbi5kcm9wZG93bi1pdGVtLmRpc2FibGVkOmhvdmVyLCAuZHJvcGRvd24taXRlbS5kaXNhYmxlZDpmb2N1cyxcbi5kcm9wZG93bi1tZW51LWl0ZW0uZGlzYWJsZWQgPiBhOmhvdmVyLFxuLmRyb3Bkb3duLW1lbnUtaXRlbS5kaXNhYmxlZCA+IGE6Zm9jdXMsXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6aG92ZXIsXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBjdXJzb3I6IHZhcigtLWN1cnNvci1kaXNhYmxlZCk7IH1cblxuLmRyb3Bkb3duLXRpdGxlIHtcbiAgcGFkZGluZzogMTBweCAxNnB4IDA7IH1cblxuLm9wZW4gPiAuZHJvcGRvd24tbWVudSwgLnNob3cgPiAuZHJvcGRvd24tbWVudSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4ub3BlbiA+IGEsIC5zaG93ID4gYSB7XG4gIG91dGxpbmU6IDA7IH1cblxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG5bZGlyPVwicnRsXCJdIC5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLW1lbnUtY2VudGVyIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgIWltcG9ydGFudDsgfVxuXG4uZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLW1lbnUuc2ZIb3ZlciwgLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMTVweDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWhlYWRlci1jb2xvcik7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmRyb3Bkb3duLWhlYWRlci10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7IH1cbiAgLmRyb3Bkb3duLWhlYWRlci1kZXNjIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTsgfVxuICAuZHJvcGRvd24taGVhZGVyLS1hY2NvdW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTBweCB2YXIoLS1zcGFjaW5nLTN4KSB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgIC5kcm9wZG93bi1oZWFkZXItLWFjY291bnQgLmNsaWVudC1hdmF0YXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgICAgLmRyb3Bkb3duLWhlYWRlci0tYWNjb3VudCAuY2xpZW50LWF2YXRhciBpbWcge1xuICAgICAgICB3aWR0aDogNDJweDtcbiAgICAgICAgaGVpZ2h0OiA0MnB4OyB9XG5cbi5kcm9wZG93bi1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTsgfVxuXG4ucHVsbC1yaWdodCA+IC5kcm9wZG93bi1tZW51IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3B1cCAuZHJvcGRvd24tbWVudSxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAycHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5uYXZiYXItcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLm5hdmJhci1yaWdodCAuZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvOyB9IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3Qge1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpOyB9XG5cbi5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcbiAgcGFkZGluZzogMTVweCB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gIHdoaXRlLXNwYWNlOiB3cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmRyb3Bkb3duLXNlbGVjdC1saXN0IC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0xeCk7IH0gfVxuICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLXRvZ2dsZTpob3ZlciwgLmRyb3Bkb3duLXNlbGVjdC1saXN0IC5kcm9wZG93bi10b2dnbGU6Zm9jdXMsIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpOyB9XG4gICAgLmRyb3Bkb3duLXNlbGVjdC1saXN0IC5kcm9wZG93bi10b2dnbGU6aG92ZXIgLmRyb3Bkb3duLWNhcmV0IGksIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIC5kcm9wZG93bi1jYXJldCBpLCAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUgLmRyb3Bkb3duLWNhcmV0IGkge1xuICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMtaG92ZXIpOyB9XG4gIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tdG9nZ2xlLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7IH1cbiAgICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLXRvZ2dsZS1jb250ZW50LXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLXRvZ2dsZSAuZHJvcGRvd24taWNvbiB7XG4gICAgbWF4LWhlaWdodDogMThweDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAgIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tdG9nZ2xlIC5kcm9wZG93bi1pY29uOmhhcyguZ3JhcGhpYy1pdGVtKSB7XG4gICAgICBtYXgtaGVpZ2h0OiAzMnB4OyB9XG4gIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tdG9nZ2xlIC5kcm9wZG93bi1jYXJldCBpIHtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTsgfVxuICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLXRvZ2dsZS1kaXNhYmxlZDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogY2FsYygxMDAlICsgdmFyKC0tc3BhY2luZy0xeCkpO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmRyb3Bkb3duLXNlbGVjdC1saXN0IC5kcm9wZG93bi1saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xuICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbS12KSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLWxpc3QtaXRlbS1ib3JkZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZHJvcGRvd24tZGl2aWRlci1iZyk7IH1cbiAgICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLWxpc3QtaXRlbSBzcGFuOm5vdCgubGFiZWwpLFxuICAgIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tbGlzdC1pdGVtIGRpdiB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLmRyb3Bkb3duLXNlbGVjdC1saXN0IC5kcm9wZG93bi1saXN0LWl0ZW0gLmxhYmVsIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH1cbiAgICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLWxpc3QtaXRlbTpob3ZlciwgLmRyb3Bkb3duLXNlbGVjdC1saXN0IC5kcm9wZG93bi1saXN0LWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1uYXYtbGluay1hY3RpdmUtYmcpOyB9XG4gICAgICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLWxpc3QtaXRlbTpob3ZlciAuaXRlbS1kZXNjLXRpdGxlLCAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLWxpc3QtaXRlbTpmb2N1cy12aXNpYmxlIC5pdGVtLWRlc2MtdGl0bGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLWxpc3QtaXRlbTpob3ZlciAubGFiZWwsIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tbGlzdC1pdGVtOmZvY3VzLXZpc2libGUgLmxhYmVsIHtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7IH1cbiAgICAuZHJvcGRvd24tc2VsZWN0LWxpc3QgLmRyb3Bkb3duLWxpc3QtaXRlbSAuaXRlbS1kZXNjIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcm93LWdhcDogNHB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tbGlzdC1pdGVtIC5pdGVtLWRlc2MgZGl2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7IH1cbiAgICAgIC5kcm9wZG93bi1zZWxlY3QtbGlzdCAuZHJvcGRvd24tbGlzdC1pdGVtIC5pdGVtLWRlc2MgcCB7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG5cbi5kcm9wZG93bi1zZWxlY3QtbGlzdC1zbSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZzogMTBweCB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuXG4uZHJvcGRvd24tc2VsZWN0LWxpc3Qtc20gLmRyb3Bkb3duLWxpc3QtaXRlbSB7XG4gIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmcteHMpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pOyB9XG5cbi5kcm9wZG93bi1zZWxlY3QtbGlzdC1pY29uIC5kcm9wZG93bi1saXN0LWl0ZW0gLml0ZW0taWNvbiB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xuICBtYXgtaGVpZ2h0OiAxOHB4OyB9XG4gIC5kcm9wZG93bi1zZWxlY3QtbGlzdC1pY29uIC5kcm9wZG93bi1saXN0LWl0ZW0gLml0ZW0taWNvbjpoYXMoLmdyYXBoaWMtaXRlbSkge1xuICAgIG1heC1oZWlnaHQ6IDMycHg7IH1cblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3gtc2hhZG93OiB2YXIoLS1idG4tYm94LXNoYWRvdyk7IH1cbiAgLmJ0bi1ncm91cCA+IC5idG4sXG4gIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgIC5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLFxuICAgIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmhvdmVyIHtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAuYnRuLWdyb3VwID4gLmJ0bjpmb2N1cywgLmJ0bi1ncm91cCA+IC5idG46YWN0aXZlLCAuYnRuLWdyb3VwID4gLmJ0bi5hY3RpdmUsXG4gICAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zm9jdXMsXG4gICAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46YWN0aXZlLFxuICAgIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxOyB9XG5cbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5idG4tdG9vbGJhciA+IC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tYnRuLWJvcmRlci13aWR0aCkpOyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOyB9XG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlcixcbiAgLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlcixcbiAgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuYnRuLWdyb3VwLXNtID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1sZyA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBib3gtc2hhZG93OiB2YXIoLS1idG4tYWN0aXZlLWJveC1zaGFkb3cpOyB9XG4gIC5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlLmJ0bi1saW5rIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4sXG4gIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC12YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTsgfVxuICAuYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gIC5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdID4gLmJ0bixcbltkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0gPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bixcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIFtkYXRhLXRvZ2dsZT1cImJ1dHRvbnNcIl0gPiAuYnRuIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSA+IC5idG4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbZGF0YS10b2dnbGU9XCJidXR0b25zXCJdID4gLmJ0bi1ncm91cCA+IC5idG4gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBbZGF0YS10b2dnbGU9XCJidXR0b25zXCJdID4gLmJ0bi1ncm91cCA+IC5idG4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAuYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAuYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAuYnRuLWdyb3VwLXRvZ2dsZSA+IC5idG4tZ3JvdXAgPiAuYnRuIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgLmJ0bi1ncm91cC10b2dnbGUgPiAuYnRuLWdyb3VwID4gLmJ0biBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7IH1cbiAgLmlucHV0LWdyb3VwW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gICAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQ6Zm9jdXMsXG4gICAgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMsXG4gICAgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7IH1cbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sICsgLmZvcm0tY29udHJvbCxcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCArIC5jdXN0b20tZmlsZSxcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5mb3JtLWNvbnRyb2wsXG4gICAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5jdXN0b20tZmlsZSxcbiAgICAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5mb3JtLWNvbnRyb2wsXG4gICAgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5jdXN0b20tZmlsZSxcbiAgICAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgKyAuZm9ybS1jb250cm9sLFxuICAgIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5jdXN0b20tc2VsZWN0LFxuICAgIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLXZhcigtLWlucHV0LWJvcmRlci13aWR0aCk7IH1cbiAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMsXG4gIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7IH1cbiAgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDsgfVxuICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOyB9XG4gIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cbiAgLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7IH1cbiAgICAuaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQgKyAuZm9ybS1jb250cm9sIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSAwOyB9XG4gIC5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMtc20pIHZhcigtLWJvcmRlci1yYWRpdXMtc20pIDA7IH1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDsgfVxuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuLFxuICAuaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bjpmb2N1cyxcbiAgICAuaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG46Zm9jdXMge1xuICAgICAgei1pbmRleDogMzsgfVxuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuICsgLmJ0bixcbiAgLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4sXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biArIC5idG4sXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtYXBwZW5kIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLXZhcigtLWlucHV0LWJvcmRlci13aWR0aCk7IH1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQge1xuICBtYXJnaW4tcmlnaHQ6IC12YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpOyB9XG5cbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBtYXJnaW4tbGVmdDogLXZhcigtLWlucHV0LWJvcmRlci13aWR0aCk7IH1cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtdikgdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IHZhcigtLWlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1pbnB1dC1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbnB1dC1saW5lLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtZ3JvdXAtYWRkb24tYmcpO1xuICBib3JkZXI6IHZhcigtLWlucHV0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0taW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7IH1cbiAgLmlucHV0LWdyb3VwLXRleHQgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAuaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpOyB9XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctbGctdikgdmFyKC0tdWktcGFkZGluZy1sZy1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1sZy1ib3JkZXItcmFkaXVzKTsgfVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXNtKTsgfVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLXNtLXYpIHZhcigtLXVpLXBhZGRpbmctc20taCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7IH1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWN1c3RvbS1zZWxlY3QtcGFkZGluZy14KXZhcigtLWN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpOyB9XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cblxuLmlucHV0LWdyb3VwLWFkZG9uOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMCB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWdyb3VwLWFkZG9uLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgICAgZmxleDogMSAwIGF1dG87IH0gfVxuICAuaW5wdXQtZ3JvdXAtYWRkb24uaW5wdXQtc20ge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tdWktcGFkZGluZy1zbS1oKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7IH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uLmlucHV0LWxnIHtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXVpLXBhZGRpbmctbGctaCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpOyB9XG4gIC5pbnB1dC1ncm91cC1hZGRvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIC5pbnB1dC1ncm91cC1hZGRvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1pbnB1dC1ncm91cC1zcGFjaW5nLWJhc2UpOyB9XG4gICAgLmlucHV0LWdyb3VwLWJ0biA+IC5idG46aG92ZXIsIC5pbnB1dC1ncm91cC1idG4gPiAuYnRuOmZvY3VzLCAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0bjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmlucHV0LWdyb3VwLXZlcnRpY2FsLXNtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmlucHV0LWdyb3VwLXZlcnRpY2FsLXNtIC5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCArIC5mb3JtLWNvbnRyb2wge1xuICAgICAgbWFyZ2luOiAtMXB4IDAgMDsgfVxuICAgIC5pbnB1dC1ncm91cC12ZXJ0aWNhbC1zbSAuZm9ybS1jb250cm9sIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubmF2IGEsXG4gIC5uYXYgLm5hdi1saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogdmFyKC0tbmF2LWxpbmstaGVpZ2h0KTtcbiAgICBwYWRkaW5nOiB2YXIoLS1uYXYtbGluay1wYWRkaW5nLXYpIHZhcigtLW5hdi1saW5rLXBhZGRpbmctaCk7XG4gICAgY29sb3I6IG5hdigtLW5hdi1saW5rLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpOyB9XG4gICAgLm5hdiBhOmhvdmVyLCAubmF2IGE6Zm9jdXMtdmlzaWJsZSwgLm5hdiBhOmZvY3VzLFxuICAgIC5uYXYgLm5hdi1saW5rOmhvdmVyLFxuICAgIC5uYXYgLm5hdi1saW5rOmZvY3VzLXZpc2libGUsXG4gICAgLm5hdiAubmF2LWxpbms6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLm5hdiBhLmRpc2FibGVkLFxuICAgIC5uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1uYXYtZGlzYWJsZWQtbGluay1jb2xvcik7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAubmF2LXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubmF2LXYgYTpob3ZlciwgLm5hdi12IGE6YWN0aXZlLFxuICAgIC5uYXYtdiAubmF2LWxpbms6aG92ZXIsXG4gICAgLm5hdi12IC5uYXYtbGluazphY3RpdmUge1xuICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLW5hdi1saW5rLXBhZGRpbmctaCkgKyB2YXIoLS11aS1uYXYtbGluay1ob3Zlci1wYWRkaW5nLWgpKTtcbiAgICAgIGNvbG9yOiBuYXYoLS1uYXYtbGluay1ob3Zlci1jb2xvcik7IH1cbiAgLm5hdi1jb25kZW5zZWQgYSxcbiAgLm5hdi1jb25kZW5zZWQgLm5hdi1saW5rIHtcbiAgICBtaW4taGVpZ2h0OiB1bnNldDtcbiAgICBwYWRkaW5nOiB2YXIoLS1uYXYtbGluay1wYWRkaW5nLXYpIHZhcigtLW5hdi1saW5rLXBhZGRpbmctaCk7IH1cblxuLm5hdi10YWJzIGEsXG4ubmF2LXRhYnMgLm5hdi1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1jb2xvcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW5hdi10YWJzLWxpbmstbmVnYXRpdmUtbWFyZ2luKTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1uYXYtdGFicy1ib3JkZXItcmFkaXVzKTsgfVxuICAubmF2LXRhYnMgYTpob3ZlciwgLm5hdi10YWJzIGE6Zm9jdXMtdmlzaWJsZSxcbiAgLm5hdi10YWJzIC5uYXYtbGluazpob3ZlcixcbiAgLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAubmF2LXRhYnMgYTpob3ZlciA+IGksIC5uYXYtdGFicyBhOmZvY3VzLXZpc2libGUgPiBpLFxuICAgIC5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIgPiBpLFxuICAgIC5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMtdmlzaWJsZSA+IGkge1xuICAgICAgY29sb3I6IHZhcigtLW5hdi10YWJzLWxpbmstYWN0aXZlLWljb24tY29sb3IpOyB9XG4gIC5uYXYtdGFicyBhLmRpc2FibGVkLFxuICAubmF2LXRhYnMgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tbmF2LWRpc2FibGVkLWxpbmstY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm5hdi10YWJzIGEgPiBpLFxuICAubmF2LXRhYnMgLm5hdi1saW5rID4gaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1pY29uLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG5cbi5uYXYtdGFicy14cyBhIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XG4gIG1pbi1oZWlnaHQ6IDQ0cHg7IH1cblxuLm5hdi10YWJzIGxpOm5vdCg6bGFzdC1vZi10eXBlKSxcbi5uYXYtdGFicyAubmF2LWl0ZW06bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1uYXYtdGFicy1pdGVtLW1hcmdpbi1yaWdodCk7IH1cblxuLm5hdi10YWJzIGEuYWN0aXZlLFxuLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUsXG4ubmF2LXRhYnMgbGkuc2hvdyBhLFxuLm5hdi10YWJzIGxpLmFjdGl2ZSBhLFxuLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gIGNvbG9yOiB2YXIoLS1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5hdi10YWJzLWxpbmstYWN0aXZlLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IpOyB9XG4gIC5uYXYtdGFicyBhLmFjdGl2ZTphZnRlcixcbiAgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmU6YWZ0ZXIsXG4gIC5uYXYtdGFicyBsaS5zaG93IGE6YWZ0ZXIsXG4gIC5uYXYtdGFicyBsaS5hY3RpdmUgYTphZnRlcixcbiAgLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluazphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiB2YXIoLS1uYXYtbGluay1wYWRkaW5nLWgpO1xuICAgIHJpZ2h0OiB2YXIoLS1uYXYtbGluay1wYWRkaW5nLWgpO1xuICAgIGhlaWdodDogdmFyKC0tbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLXdpZHRoKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IpOyB9XG4gIC5uYXYtdGFicyBhLmFjdGl2ZSA+IGksXG4gIC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlID4gaSxcbiAgLm5hdi10YWJzIGxpLnNob3cgYSA+IGksXG4gIC5uYXYtdGFicyBsaS5hY3RpdmUgYSA+IGksXG4gIC5uYXYtdGFicyAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsgPiBpIHtcbiAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1hY3RpdmUtaWNvbi1jb2xvcik7IH1cblxuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogLXZhcigtLW5hdi10YWJzLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5uYXYtdGFicy5uYXYtdGFicy1mZWF0dXJlcyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctOHgpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4ubmF2LXRhYnMubmF2LXRhYnMtY29sbGFwc2Uge1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIC5uYXYtdGFicy5uYXYtdGFicy1jb2xsYXBzZSBzdmcge1xuICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgLm5hdi10YWJzLm5hdi10YWJzLWNvbGxhcHNlIHN2ZyAucGx1cy12ZXJ0IHtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAubmF2LXRhYnMubmF2LXRhYnMtY29sbGFwc2UgbGk6bm90KC5jb2xsYXBzZWQpIGEgc3ZnIHtcbiAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgLm5hdi10YWJzLm5hdi10YWJzLWNvbGxhcHNlIGxpOm5vdCguY29sbGFwc2VkKSBhIHN2ZyAucGx1cy12ZXJ0IHtcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgLm5hdi10YWJzLm5hdi10YWJzLWNvbGxhcHNlIGxpLmNvbGxhcHNlZCBhIHtcbiAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1jb2xvcik7IH1cbiAgICAubmF2LXRhYnMubmF2LXRhYnMtY29sbGFwc2UgbGkuY29sbGFwc2VkIGEgc3ZnIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTsgfVxuICAgIC5uYXYtdGFicy5uYXYtdGFicy1jb2xsYXBzZSBsaS5jb2xsYXBzZWQgYTpob3ZlciwgLm5hdi10YWJzLm5hdi10YWJzLWNvbGxhcHNlIGxpLmNvbGxhcHNlZCBhOmZvY3VzLXZpc2libGUge1xuICAgICAgY29sb3I6IHZhcigtLW5hdi10YWJzLWxpbmstaG92ZXItY29sb3IpOyB9XG4gICAgICAubmF2LXRhYnMubmF2LXRhYnMtY29sbGFwc2UgbGkuY29sbGFwc2VkIGE6aG92ZXIgc3ZnLCAubmF2LXRhYnMubmF2LXRhYnMtY29sbGFwc2UgbGkuY29sbGFwc2VkIGE6Zm9jdXMtdmlzaWJsZSBzdmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAubmF2LXRhYnMubmF2LXRhYnMtY29sbGFwc2UgbGkuY29sbGFwc2VkIGE6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgLm5hdi10YWJzLm5hdi10YWJzLWNvbGxhcHNlICsgLnRhYi1jb250ZW50IC50YWItcGFuZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXBhbmVsLWJvcmRlci1kaXZpZGVyLWNvbG9yKTsgfVxuXG4ubmF2LXBpbGxzIC5uYXYtbGluayB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLW5hdi1waWxscy1ib3JkZXItcmFkaXVzKTsgfVxuXG4ubmF2LXBpbGxzIC5uYXYtbGluay5hY3RpdmUsXG4ubmF2LXBpbGxzIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgY29sb3I6IHZhcigtLW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZyk7IH1cblxuLm5hdi1maWxsID4gLm5hdi1saW5rLFxuLm5hdi1maWxsID4gbGksXG4ubmF2LWZpbGwgLm5hdi1pdGVtLFxuLm5hdi1maWxsID4gYSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm5hdi1qdXN0aWZpZWQgPiAubmF2LWxpbmssXG4ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0ge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGFiLWNvbnRlbnQgPiAudGFiLXBhbmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50YWItY29udGVudCA+IC5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4udGFiLnRhYi1ib3hlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTsgfVxuICAudGFiLnRhYi1ib3hlZCAucGFuZWwsXG4gIC50YWIudGFiLWJveGVkIC50YWJsZS1jb250YWluZXIge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLnRhYi50YWItYm94ZWQgLnRhYi1jb250ZW50IHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnRhYi50YWItYm94ZWQgLnRhYi1wYW5lIHtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gIC50YWIudGFiLWJveGVkIC5uYXYtdGFicyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWhlYWRlci1iZyk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgICAudGFiLnRhYi1ib3hlZCAubmF2LXRhYnMgPiBsaSA+IGEgaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5uYXYtbGcgPiBsaSA+IGEsXG4ubmF2LWxnID4gbGkgLm5hdi1saW5rLFxuLm5hdi1sZyAubmF2LWl0ZW0gPiBhLFxuLm5hdi1sZyAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuXG4udGFiLXBhbmUjdHdvZmEgLmFsZXJ0IHNwYW4uYWxlcnQtaWNvbiArIC5hbGVydC1ib2R5IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLW5hdmJhci1wYWRkaW5nLXYpIHZhcigtLW5hdmJhci1wYWRkaW5nLWgpOyB9XG4gIC5uYXZiYXIgLmNvbnRhaW5lcixcbiAgLm5hdmJhciAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhciA+IC5jb250YWluZXItbWQsIC5uYXZiYXIgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyID4gLmNvbnRhaW5lci14bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IHZhcigtLW5hdmJhci1wYWRkaW5nLXYpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbmF2YmFyLXBhZGRpbmctdik7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tbmF2YmFyLXBhZGRpbmctaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1icmFuZDpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7IH1cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tbmF2YmFyLXBhZGRpbmctdik7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1uYXZiYXItcGFkZGluZy12KTsgfVxuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5uYXZiYXItdG9nZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgd2lkdGg6IDM4cHg7XG4gIGhlaWdodDogMzRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpOyB9XG4gIC5uYXZiYXItdG9nZ2xlOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5uYXZiYXItdG9nZ2xlIC5pY29uLWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgLm5hdmJhci10b2dnbGUgLmljb24tYmFyOm50aC1jaGlsZCgyKSB7XG4gICAgdG9wOiA4cHg7IH1cbiAgLm5hdmJhci10b2dnbGUgLmljb24tYmFyOm50aC1jaGlsZCgzKSB7XG4gICAgdG9wOiAxNnB4OyB9XG4gIC5uYXZiYXItdG9nZ2xlIC5pY29uLWJhcjpudGgtY2hpbGQoNCkge1xuICAgIHRvcDogMjRweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogdmFyKC0tbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15KSB2YXIoLS1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXgpO1xuICBmb250LXNpemU6IHZhYXIoLS1uYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogdmFyKC0tbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7IH1cbiAgLm5hdmJhci10b2dnbGVyOmhvdmVyLCAubmF2YmFyLXRvZ2dsZXI6Zm9jdXMtdmlzaWJsZSwgLm5hdmJhci10b2dnbGVyOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiB2YXIoLS1uYXZiYXItdG9nZ2xlci1pY29uLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS1uYXZiYXItdG9nZ2xlci1pY29uLWhlaWdodCk7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IHZhcigtLW5hdmJhci10b2dnbGVyLWljb24tY29udGVudCk7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7IH1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogdmFyKC0tbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodCk7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lcixcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXIteGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXNtIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpOyB9XG4gICAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLFxuICAgIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gICAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci10b2dnbGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQtbWQge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7IH1cbiAgICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXIsXG4gICAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXIteGwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAgIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTsgfVxuICAgIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lcixcbiAgICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci14bCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAgIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAgIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfVxuICAgIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1mbHVpZCwgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXNtLCAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbWQsIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1sZywgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLm5hdmJhci1leHBhbmQteGwge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7IH1cbiAgICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIsXG4gICAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIteGwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5uYXZiYXItZXhwYW5kIHtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItZmx1aWQsIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1zbSwgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLW1kLCAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItbGcsIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpOyB9XG4gIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lcixcbiAgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWZsdWlkLCAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXItc20sIC5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1tZCwgLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWxnLCAubmF2YmFyLWV4cGFuZCA+IC5jb250YWluZXIteGwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLm5hdmJhci1leHBhbmQgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgLm5hdmJhci1leHBhbmQgLm5hdmJhci10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZW51LW9wZW4gLmFwcC1uYXYtdG9nZ2xlIC5pY29uLWJhcjpudGgtY2hpbGQoMSksIC5tZW51LW9wZW4gLmFwcC1uYXYtdG9nZ2xlIC5pY29uLWJhcjpudGgtY2hpbGQoNCkge1xuICB0b3A6IDE4cHg7XG4gIHdpZHRoOiAwO1xuICBsZWZ0OiA1MCU7IH1cblxuLm1lbnUtb3BlbiAuYXBwLW5hdi10b2dnbGUgLmljb24tYmFyOm50aC1jaGlsZCgyKSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgbGVmdDogNnB4O1xuICB0b3A6IDE0cHg7XG4gIHdpZHRoOiAyNHB4OyB9XG5cbi5tZW51LW9wZW4gLmFwcC1uYXYtdG9nZ2xlIC5pY29uLWJhcjpudGgtY2hpbGQoMykge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICBsZWZ0OiA2cHg7XG4gIHRvcDogMTRweDtcbiAgd2lkdGg6IDI0cHg7IH1cblxuLm5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gLmljb24tYmFyOm50aC1jaGlsZCgxKSwgLm5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gLmljb24tYmFyOm50aC1jaGlsZCg0KSB7XG4gIHRvcDogMThweDtcbiAgd2lkdGg6IDA7XG4gIGxlZnQ6IDUwJTsgfVxuXG4ubmF2YmFyLXRvZ2dsZVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAuaWNvbi1iYXI6bnRoLWNoaWxkKDIpIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICBsZWZ0OiA2cHg7XG4gIHRvcDogMTRweDtcbiAgd2lkdGg6IDI0cHg7IH1cblxuLm5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gLmljb24tYmFyOm50aC1jaGlsZCgzKSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIGxlZnQ6IDZweDtcbiAgdG9wOiAxNHB4O1xuICB3aWR0aDogMjRweDsgfVxuXG4uYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogdmFyKC0tYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsKSB2YXIoLS1icmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJlYWRjcnVtYi1iZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7IH1cbiAgLmJyZWFkY3J1bWIgPiBsaSwgLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLmJyZWFkY3J1bWIgPiBsaTpiZWZvcmUsIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW06YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgICAuYnJlYWRjcnVtYiA+IGxpICsgbGksIC5icmVhZGNydW1iID4gbGkgKyAuYnJlYWRjcnVtYi1pdGVtLCAuYnJlYWRjcnVtYiAuYnJlYWRjcnVtYi1pdGVtICsgbGksIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmctdmVydGljYWwpOyB9XG4gICAgICAuYnJlYWRjcnVtYiA+IGxpICsgbGk6YmVmb3JlLCAuYnJlYWRjcnVtYiA+IGxpICsgLmJyZWFkY3J1bWItaXRlbTpiZWZvcmUsIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW0gKyBsaTpiZWZvcmUsIC5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmJlZm9yZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjb250ZW50OiB2YXIoLS1icmVhZGNydW1iLXNlcGFyYXRvcik7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXZlcnRpY2FsKSB2YXIoLS1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogdmFyKC0tYnJlYWRjcnVtYi1jb2xvcik7IH1cbiAgICAuYnJlYWRjcnVtYiA+IGxpICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlLCAuYnJlYWRjcnVtYiAuYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmJyZWFkY3J1bWIgPiBsaSArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSwgLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmJyZWFkY3J1bWIgPiAuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tYnJlYWRjcnVtYi1hY3RpdmUtY29sb3IpOyB9XG5cbi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGFibGUtY29udGFpbmVyLXBhZ2luYXRpb24tYmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tYmFzZS1ib3JkZXItcmFkaXVzKTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5wYWdpbmF0aW9uID4gbGksIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0ge1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cbiAgICAucGFnaW5hdGlvbiA+IGxpIC5wYWdlLWxpbmssXG4gICAgLnBhZ2luYXRpb24gPiBsaSA+IGEsXG4gICAgLnBhZ2luYXRpb24gPiBsaSA+IHNwYW4sIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluayxcbiAgICAucGFnaW5hdGlvbiAucGFnZS1pdGVtID4gYSxcbiAgICAucGFnaW5hdGlvbiAucGFnZS1pdGVtID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQteHMpO1xuICAgICAgcGFkZGluZzogNHB4IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYWdpbmF0aW9uLWJnKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXBhZ2luYXRpb24tYm9yZGVyKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1iYXNlLWJvcmRlci1yYWRpdXMpO1xuICAgICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24tY29sb3IpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLnBhZ2luYXRpb24gPiBsaSAucGFnZS1saW5rID4gaSxcbiAgICAgIC5wYWdpbmF0aW9uID4gbGkgPiBhID4gaSxcbiAgICAgIC5wYWdpbmF0aW9uID4gbGkgPiBzcGFuID4gaSwgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rID4gaSxcbiAgICAgIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gPiBhID4gaSxcbiAgICAgIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gPiBzcGFuID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTsgfVxuICAgIC5wYWdpbmF0aW9uID4gbGk6Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayxcbiAgICAucGFnaW5hdGlvbiA+IGxpOmZpcnN0LWNoaWxkID4gYSxcbiAgICAucGFnaW5hdGlvbiA+IGxpOmZpcnN0LWNoaWxkID4gc3BhbiwgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rLFxuICAgIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgPiBhLFxuICAgIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgPiBzcGFuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluazpob3ZlciwgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rOmZvY3VzLFxuICAucGFnaW5hdGlvbiA+IGxpIC5wYWdlLWl0ZW06aG92ZXIsXG4gIC5wYWdpbmF0aW9uID4gbGkgLnBhZ2UtaXRlbTpmb2N1cyxcbiAgLnBhZ2luYXRpb24gPiBsaSA+IGE6aG92ZXIsXG4gIC5wYWdpbmF0aW9uID4gbGkgPiBhOmZvY3VzLFxuICAucGFnaW5hdGlvbiA+IGxpID4gc3Bhbjpob3ZlcixcbiAgLnBhZ2luYXRpb24gPiBsaSA+IHNwYW46Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24taG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBhZ2luYXRpb24taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXIpOyB9XG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSAucGFnZS1saW5rLCAucGFnaW5hdGlvbiA+IC5hY3RpdmUgLnBhZ2UtbGluazpob3ZlciwgLnBhZ2luYXRpb24gPiAuYWN0aXZlIC5wYWdlLWxpbms6Zm9jdXMsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGEsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IGE6Zm9jdXMsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW4sXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW46aG92ZXIsXG4gIC5wYWdpbmF0aW9uID4gLmFjdGl2ZSA+IHNwYW46Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXIpO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAucGFnaW5hdGlvbiA+IC5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMjsgfVxuICAucGFnaW5hdGlvbiA+IC5kaXNhYmxlZCA+IC5wYWdlLWxpbmssXG4gIC5wYWdpbmF0aW9uID4gLmRpc2FibGVkID4gLnBhZ2UtbGluazpob3ZlcixcbiAgLnBhZ2luYXRpb24gPiAuZGlzYWJsZWQgPiAucGFnZS1saW5rOmZvY3VzLFxuICAucGFnaW5hdGlvbiA+IC5kaXNhYmxlZCA+IHNwYW4sXG4gIC5wYWdpbmF0aW9uID4gLmRpc2FibGVkID4gc3Bhbjpob3ZlcixcbiAgLnBhZ2luYXRpb24gPiAuZGlzYWJsZWQgPiBzcGFuOmZvY3VzLFxuICAucGFnaW5hdGlvbiA+IC5kaXNhYmxlZCA+IGEsXG4gIC5wYWdpbmF0aW9uID4gLmRpc2FibGVkID4gYTpob3ZlcixcbiAgLnBhZ2luYXRpb24gPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tcGFnaW5hdGlvbi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcik7XG4gICAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItZGlzYWJsZWQpOyB9XG5cbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWxpbmsge1xuICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWxnLXZlcnRpY2FsKSB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7IH1cblxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpOyB9XG5cbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7IH1cblxuLnBhZ2luYXRpb24tc20gLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctc20tdikgdmFyKC0tdWktcGFkZGluZy1zbS1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG5cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTsgfVxuXG4ucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pOyB9XG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS1sYWJlbC1wYWRkaW5nKTtcbiAgZm9udC1zaXplOiB2YXIoLS1sYWJlbC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGFiZWwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgY29sb3I6IHZhcigtLWxhYmVsLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWxhYmVsLWJvcmRlci1yYWRpdXMpO1xuICB0ZXh0LXRyYW5zZm9ybTogdW5zZXQ7XG4gIGNvbHVtbi1nYXA6IDZweDtcbiAgbWF4LXdpZHRoOiBtYXgtY29udGVudDsgfVxuICAubGFiZWw6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJ0biAubGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7IH1cbiAgLmxhYmVsLmxhYmVsLXNhdmUge1xuICAgIHRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgcGFkZGluZzogM3B4IDZweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdW5zZXQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWxhYmVsLXNhdmluZ3MtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKTtcbiAgICBjb2x1bW4tZ2FwOiAwOyB9XG4gIC5sYWJlbC5sYWJlbC1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4OyB9XG4gIC5sYWJlbC14cyB7XG4gICAgY29sdW1uLWdhcDogNHB4O1xuICAgIG1heC1oZWlnaHQ6IDIwcHg7XG4gICAgbWluLWhlaWdodDogMjBweDsgfVxuICAgIC5sYWJlbC14cyAuc3RhdHVzIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWluLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTsgfVxuICAgICAgLmxhYmVsLXhzIC5zdGF0dXM6OmJlZm9yZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgbWluLXdpZHRoOiA2cHg7IH1cbiAgICAubGFiZWwteHMgaSBzdmcge1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAubGFiZWwtaW5uZXItYm9yZGVyIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjA4KTsgfVxuXG5hLmxhYmVsOmhvdmVyLCBhLmxhYmVsOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWxhYmVsLWxpbmstaG92ZXItY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubGFiZWwtZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLWRlZmF1bHQtYmcpO1xuICBjb2xvcjogdmFyKC0tbGFiZWwtZGVmYXVsdC1jb2xvcik7IH1cbiAgLmxhYmVsLWRlZmF1bHRbaHJlZl06aG92ZXIsIC5sYWJlbC1kZWZhdWx0W2hyZWZdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC1kZWZhdWx0LWNvbG9yKTsgfVxuICAubGFiZWwtZGVmYXVsdC5sYWJlbC1zb2xpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtZGVmYXVsdC1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLWNvbG9yKTsgfVxuICAubGFiZWwtZGVmYXVsdC5sYWJlbC1vdXRsaW5lIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sYWJlbC1kZWZhdWx0LWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tbGFiZWwtZGVmYXVsdC1jb2xvcik7IH1cblxuLmxhYmVsLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC1wcmltYXJ5LWJnKTtcbiAgY29sb3I6IHZhcigtLWxhYmVsLXByaW1hcnktY29sb3IpOyB9XG4gIC5sYWJlbC1wcmltYXJ5W2hyZWZdOmhvdmVyLCAubGFiZWwtcHJpbWFyeVtocmVmXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtcHJpbWFyeS1jb2xvcik7IH1cbiAgLmxhYmVsLXByaW1hcnkubGFiZWwtc29saWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXByaW1hcnktYmcpO1xuICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1wcmltYXJ5LWNvbG9yKTsgfVxuICAubGFiZWwtcHJpbWFyeS5sYWJlbC1vdXRsaW5lIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sYWJlbC1wcmltYXJ5LWJnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tbGFiZWwtcHJpbWFyeS1iZyk7IH1cblxuLmxhYmVsLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXNlY29uZGFyeS1iZyk7XG4gIGNvbG9yOiB2YXIoLS1sYWJlbC1zZWNvbmRhcnktY29sb3IpOyB9XG4gIC5sYWJlbC1zZWNvbmRhcnlbaHJlZl06aG92ZXIsIC5sYWJlbC1zZWNvbmRhcnlbaHJlZl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXNlY29uZGFyeS1jb2xvcik7IH1cbiAgLmxhYmVsLXNlY29uZGFyeS5sYWJlbC1zb2xpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtc2Vjb25kYXJ5LWJnKTtcbiAgICBjb2xvcjogdmFyKC0tbGFiZWwtc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAubGFiZWwtc2Vjb25kYXJ5LmxhYmVsLW91dGxpbmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxhYmVsLXNlY29uZGFyeS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLXNlY29uZGFyeS1iZyk7IH1cblxuLmxhYmVsLXByaW1hcnktZmFkZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgY29sb3I6IHZhcigtLWxhYmVsLXByaW1hcnktZmFkZWQtY29sb3IpOyB9XG4gIC5sYWJlbC1wcmltYXJ5LWZhZGVkW2hyZWZdOmhvdmVyLCAubGFiZWwtcHJpbWFyeS1mYWRlZFtocmVmXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtcHJpbWFyeS1mYWRlZC1jb2xvcik7IH1cbiAgLmxhYmVsLXByaW1hcnktZmFkZWQubGFiZWwtc29saWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXByaW1hcnktZmFkZWQtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1jb2xvcik7IH1cbiAgLmxhYmVsLXByaW1hcnktZmFkZWQubGFiZWwtb3V0bGluZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGFiZWwtcHJpbWFyeS1mYWRlZC1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLXByaW1hcnktZmFkZWQtYmcpOyB9XG5cbi5sYWJlbC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtc3VjY2Vzcy1iZyk7XG4gIGNvbG9yOiB2YXIoLS1sYWJlbC1zdWNjZXNzLWNvbG9yKTsgfVxuICAubGFiZWwtc3VjY2Vzc1tocmVmXTpob3ZlciwgLmxhYmVsLXN1Y2Nlc3NbaHJlZl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXN1Y2Nlc3MtY29sb3IpOyB9XG4gIC5sYWJlbC1zdWNjZXNzLmxhYmVsLXNvbGlkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC1zdWNjZXNzLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0tbGFiZWwtY29sb3IpOyB9XG4gIC5sYWJlbC1zdWNjZXNzLmxhYmVsLW91dGxpbmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxhYmVsLXN1Y2Nlc3MtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zdWNjZXNzLWNvbG9yKTsgfVxuXG4ubGFiZWwtaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLWluZm8tYmcpO1xuICBjb2xvcjogdmFyKC0tbGFiZWwtaW5mby1jb2xvcik7IH1cbiAgLmxhYmVsLWluZm9baHJlZl06aG92ZXIsIC5sYWJlbC1pbmZvW2hyZWZdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC1pbmZvLWNvbG9yKTsgfVxuICAubGFiZWwtaW5mby5sYWJlbC1zb2xpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtaW5mby1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLWNvbG9yKTsgfVxuICAubGFiZWwtaW5mby5sYWJlbC1vdXRsaW5lIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sYWJlbC1pbmZvLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tbGFiZWwtaW5mby1jb2xvcik7IH1cblxuLmxhYmVsLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC13YXJuaW5nLWJnKTtcbiAgY29sb3I6IHZhcigtLWxhYmVsLXdhcm5pbmctY29sb3IpOyB9XG4gIC5sYWJlbC13YXJuaW5nW2hyZWZdOmhvdmVyLCAubGFiZWwtd2FybmluZ1tocmVmXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtd2FybmluZy1jb2xvcik7IH1cbiAgLmxhYmVsLXdhcm5pbmcubGFiZWwtc29saWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXdhcm5pbmctY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1jb2xvcik7IH1cbiAgLmxhYmVsLXdhcm5pbmcubGFiZWwtb3V0bGluZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGFiZWwtd2FybmluZy1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLXdhcm5pbmctY29sb3IpOyB9XG5cbi5sYWJlbC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC1kYW5nZXItYmcpO1xuICBjb2xvcjogdmFyKC0tbGFiZWwtZGFuZ2VyLWNvbG9yKTsgfVxuICAubGFiZWwtZGFuZ2VyW2hyZWZdOmhvdmVyLCAubGFiZWwtZGFuZ2VyW2hyZWZdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC1kYW5nZXItY29sb3IpOyB9XG4gIC5sYWJlbC1kYW5nZXIubGFiZWwtc29saWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLWRhbmdlci1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLWNvbG9yKTsgfVxuICAubGFiZWwtZGFuZ2VyLmxhYmVsLW91dGxpbmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxhYmVsLWRhbmdlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLWRhbmdlci1jb2xvcik7IH1cblxuLmxhYmVsLXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXB1cnBsZS1iZyk7XG4gIGNvbG9yOiB2YXIoLS1sYWJlbC1wdXJwbGUtY29sb3IpOyB9XG4gIC5sYWJlbC1wdXJwbGVbaHJlZl06aG92ZXIsIC5sYWJlbC1wdXJwbGVbaHJlZl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXB1cnBsZS1jb2xvcik7IH1cbiAgLmxhYmVsLXB1cnBsZS5sYWJlbC1zb2xpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtcHVycGxlLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tbGFiZWwtcHVycGxlLWNvbG9yKTsgfVxuICAubGFiZWwtcHVycGxlLmxhYmVsLW91dGxpbmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxhYmVsLXB1cnBsZS1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLXB1cnBsZS1iZyk7IH1cblxuLmxhYmVsLXNhdmluZ3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWJnKTtcbiAgY29sb3I6IHZhcigtLWxhYmVsLXNhdmluZ3MtY29sb3IpOyB9XG4gIC5sYWJlbC1zYXZpbmdzW2hyZWZdOmhvdmVyLCAubGFiZWwtc2F2aW5nc1tocmVmXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvcik7IH1cbiAgLmxhYmVsLXNhdmluZ3MubGFiZWwtc29saWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLXNhdmluZ3MtY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1jb2xvcik7IH1cbiAgLmxhYmVsLXNhdmluZ3MubGFiZWwtb3V0bGluZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLWxhYmVsLXNhdmluZ3MtY29sb3IpOyB9XG5cbi5sYWJlbC1yZXF1aXJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubGFiZWwtcmVxdWlyZWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcqJztcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtM3B4O1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgcmlnaHQ6IC05cHg7IH1cblxuLmxhYmVsLXh4cyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbGFiZWwteHhzLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sYWJlbC14eHMtbGluZS1oZWlnaHQpO1xuICBwYWRkaW5nOiB2YXIoLS1sYWJlbC14eHMtcGFkZGluZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWxhYmVsLXh4cy1ib3JkZXItcmFkaXVzKTsgfVxuICAubGFiZWwteHhzIGkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tbGFiZWwtaWNvbi1zaXplKTsgfVxuICAubGFiZWwteHhzIHN2ZyB7XG4gICAgd2lkdGg6IHZhcigtLWxhYmVsLWljb24tc2l6ZSk7IH1cblxuLmxhYmVsLXhzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1sYWJlbC14eHMtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxhYmVsLXh4cy1saW5lLWhlaWdodCk7XG4gIHBhZGRpbmc6IHZhcigtLWxhYmVsLXhzLXBhZGRpbmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1sYWJlbC14cy1ib3JkZXItcmFkaXVzKTsgfVxuICAubGFiZWwteHMgaSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1sYWJlbC1pY29uLXNpemUpOyB9XG4gIC5sYWJlbC14cyBzdmcge1xuICAgIHdpZHRoOiB2YXIoLS1sYWJlbC1pY29uLXNpemUpOyB9XG5cbi5sYWJlbC1zbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbGFiZWwtc20tZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxhYmVsLXNtLWxpbmUtaGVpZ2h0KTtcbiAgcGFkZGluZzogdmFyKC0tbGFiZWwtc20tcGFkZGluZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWxhYmVsLXNtLWJvcmRlci1yYWRpdXMpOyB9XG4gIC5sYWJlbC1zbSBpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWxhYmVsLWljb24tc2l6ZSk7IH1cbiAgLmxhYmVsLXNtIHN2ZyB7XG4gICAgd2lkdGg6IHZhcigtLWxhYmVsLWljb24tc2l6ZSk7IH1cblxuLmxhYmVsLWxnIHtcbiAgZm9udC1zaXplOiB2YXIoLS1sYWJlbC1sZy1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGFiZWwtbGctbGluZS1oZWlnaHQpO1xuICBwYWRkaW5nOiB2YXIoLS1sYWJlbC1sZy1wYWRkaW5nKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbGFiZWwtbGctYm9yZGVyLXJhZGl1cyk7IH1cbiAgLmxhYmVsLWxnIGkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tbGFiZWwtaWNvbi1zaXplKTsgfVxuICAubGFiZWwtbGcgc3ZnIHtcbiAgICB3aWR0aDogdmFyKC0tbGFiZWwtaWNvbi1zaXplKTsgfVxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogdmFyKC0tYmFkZ2UtbGluZS1oZWlnaHQpO1xuICBwYWRkaW5nOiB2YXIoLS1iYWRnZS1wYWRkaW5nLXkpIHZhcigtLWJhZGdlLXBhZGRpbmcteCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWJhZGdlLWZvbnQtd2VpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJhZGdlLWNvbG9yKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJhZGdlLWxpbmUtaGVpZ2h0KTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWRnZS1iZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1iYWRnZS10cmFuc2l0aW9uKTsgfVxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5iYWRnZSB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lOyB9IH1cbiAgYS5iYWRnZTpob3ZlciwgYS5iYWRnZTpmb2N1cy12aXNpYmxlLCBhLmJhZGdlOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmJhZGdlOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5idG4gLmJhZGdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4OyB9XG4gIC5idG4teHMgLmJhZGdlLFxuICAuYnRuLWdyb3VwLXhzID4gLmJ0biAuYmFkZ2Uge1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAxcHggNXB4OyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlID4gLmJhZGdlLFxuICAubmF2LXBpbGxzID4gLmFjdGl2ZSA+IGEgPiAuYmFkZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1iYWRnZS1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLWFjdGl2ZS1iZyk7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+IC5iYWRnZSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0gPiAuYmFkZ2UgKyAuYmFkZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gIC5uYXYtcGlsbHMgPiBsaSA+IGEgPiAuYmFkZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7IH1cbiAgLmJhZGdlLmJhZGdlLW5vLXJvdW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbiAgICBtYXJnaW4tbGVmdDogNHB4OyB9XG4gIC5iYWRnZS5iYWRnZS1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLmJhZGdlLWNpcmNsZS14cyB7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMThweDsgfVxuXG4uYmFkZ2UtY2lyY2xlLWxnIHtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWluLXdpZHRoOiAyNHB4O1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG5cbmEuYmFkZ2U6aG92ZXIsIGEuYmFkZ2U6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tYmFkZ2UtbGluay1ob3Zlci1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5iYWRnZS1zdWNjZXNzIHtcbiAgY29sb3I6IHZhcigtLWJhZGdlLXN1Y2Nlc3MtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWRnZS1zdWNjZXNzLWJnKTsgfVxuICBhLmJhZGdlLXN1Y2Nlc3M6aG92ZXIsIGEuYmFkZ2Utc3VjY2Vzczpmb2N1cy12aXNpYmxlLCBhLmJhZGdlLXN1Y2Nlc3M6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1iYWRnZS1zdWNjZXNzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWRnZS1zdWNjZXNzLWhvdmVyLWJnKTsgfVxuICBhLmJhZGdlLXN1Y2Nlc3M6Zm9jdXMsIGEuYmFkZ2Utc3VjY2Vzcy5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1iYWRnZS1mb2N1cy13aWR0aCkgcmdiYSh2YXIoLS1iYWRnZS1zdWNjZXNzLWJnKSwgMC41KTsgfVxuXG4uYmFkZ2UtaW5mbyB7XG4gIGNvbG9yOiB2YXIoLS1iYWRnZS1pbmZvLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFkZ2UtaW5mby1iZyk7IH1cbiAgYS5iYWRnZS1pbmZvOmhvdmVyLCBhLmJhZGdlLWluZm86Zm9jdXMtdmlzaWJsZSwgYS5iYWRnZS1pbmZvOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tYmFkZ2UtaW5mby1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFkZ2UtaW5mby1ob3Zlci1iZyk7IH1cbiAgYS5iYWRnZS1pbmZvOmZvY3VzLCBhLmJhZGdlLWluZm8uZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tYmFkZ2UtZm9jdXMtd2lkdGgpIHJnYmEodmFyKC0tYmFkZ2UtaW5mby1iZyksIDAuNSk7IH1cblxuLmJhZGdlLXdhcm5pbmcge1xuICBjb2xvcjogdmFyKC0tYmFkZ2Utd2FybmluZy1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLXdhcm5pbmctYmcpOyB9XG4gIGEuYmFkZ2Utd2FybmluZzpob3ZlciwgYS5iYWRnZS13YXJuaW5nOmZvY3VzLXZpc2libGUsIGEuYmFkZ2Utd2FybmluZzpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJhZGdlLXdhcm5pbmctY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLXdhcm5pbmctaG92ZXItYmcpOyB9XG4gIGEuYmFkZ2Utd2FybmluZzpmb2N1cywgYS5iYWRnZS13YXJuaW5nLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWJhZGdlLWZvY3VzLXdpZHRoKSByZ2JhKHZhcigtLWJhZGdlLXdhcm5pbmctYmcpLCAwLjUpOyB9XG5cbi5iYWRnZS1kYW5nZXIge1xuICBjb2xvcjogdmFyKC0tYmFkZ2UtZGFuZ2VyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFkZ2UtZGFuZ2VyLWJnKTsgfVxuICBhLmJhZGdlLWRhbmdlcjpob3ZlciwgYS5iYWRnZS1kYW5nZXI6Zm9jdXMtdmlzaWJsZSwgYS5iYWRnZS1kYW5nZXI6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1iYWRnZS1kYW5nZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLWRhbmdlci1ob3Zlci1iZyk7IH1cbiAgYS5iYWRnZS1kYW5nZXI6Zm9jdXMsIGEuYmFkZ2UtZGFuZ2VyLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWJhZGdlLWZvY3VzLXdpZHRoKSByZ2JhKHZhcigtLWJhZGdlLWRhbmdlci1iZyksIDAuNSk7IH1cblxuLmJhZGdlLXByaW1hcnkge1xuICBjb2xvcjogdmFyKC0tYmFkZ2UtcHJpbWFyeS1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLXByaW1hcnktYmcpOyB9XG4gIGEuYmFkZ2UtcHJpbWFyeTpob3ZlciwgYS5iYWRnZS1wcmltYXJ5OmZvY3VzLXZpc2libGUsIGEuYmFkZ2UtcHJpbWFyeTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJhZGdlLXByaW1hcnktY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLXByaW1hcnktaG92ZXItYmcpOyB9XG4gIGEuYmFkZ2UtcHJpbWFyeTpmb2N1cywgYS5iYWRnZS1wcmltYXJ5LmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWJhZGdlLWZvY3VzLXdpZHRoKSByZ2JhKHZhcigtLWJhZGdlLXByaW1hcnktYmcpLCAwLjUpOyB9XG5cbi5iYWRnZS1wcmltYXJ5LWZhZGVkIHtcbiAgY29sb3I6IHZhcigtLWJhZGdlLXByaW1hcnktZmFkZWQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWRnZS1wcmltYXJ5LWZhZGVkLWJnKTsgfVxuICBhLmJhZGdlLXByaW1hcnktZmFkZWQ6aG92ZXIsIGEuYmFkZ2UtcHJpbWFyeS1mYWRlZDpmb2N1cy12aXNpYmxlLCBhLmJhZGdlLXByaW1hcnktZmFkZWQ6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1iYWRnZS1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWRnZS1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTsgfVxuICBhLmJhZGdlLXByaW1hcnktZmFkZWQ6Zm9jdXMsIGEuYmFkZ2UtcHJpbWFyeS1mYWRlZC5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1iYWRnZS1mb2N1cy13aWR0aCkgcmdiYSh2YXIoLS1iYWRnZS1wcmltYXJ5LWZhZGVkLWJnKSwgMC41KTsgfVxuXG4uYmFkZ2UtZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS1iYWRnZS1kZWZhdWx0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFkZ2UtZGVmYXVsdC1iZyk7IH1cbiAgYS5iYWRnZS1kZWZhdWx0OmhvdmVyLCBhLmJhZGdlLWRlZmF1bHQ6Zm9jdXMtdmlzaWJsZSwgYS5iYWRnZS1kZWZhdWx0OmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tYmFkZ2UtZGVmYXVsdC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFkZ2UtZGVmYXVsdC1iZyk7IH1cbiAgYS5iYWRnZS1kZWZhdWx0OmZvY3VzLCBhLmJhZGdlLWRlZmF1bHQuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tYmFkZ2UtZm9jdXMtd2lkdGgpIHJnYmEodmFyKC0tYmFkZ2UtZGVmYXVsdC1iZyksIDAuNSk7IH1cblxuLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6IHZhcigtLWp1bWJvdHJvbi1wYWRkaW5nLXYpIHZhcigtLWp1bWJvdHJvbi1wYWRkaW5nLWgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1qdW1ib3Ryb24tcGFkZGluZyk7XG4gIGNvbG9yOiAtLWp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tanVtYm90cm9uLWJnKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XG4gIHBhZGRpbmc6IHZhcigtLWp1bWJvdHJvbi1wYWRkaW5nLXYpIHZhcigtLWp1bWJvdHJvbi1wYWRkaW5nLWgpOyB9XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiB2YXIoLS1hbGVydC1wYWRkaW5nLXYpIHZhcigtLWFsZXJ0LXBhZGRpbmctaCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG4gIC5hbGVydC5hbGVydC1sYWdvbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5hbGVydC1jb250ZW50IHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgLmFsZXJ0LWNvbnRlbnQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgICAgIC5hbGVydC1jb250ZW50IC5hbGVydC1hY3Rpb25zIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSAwIDAgMDsgfVxuICAgICAgICAgIC5hbGVydC1jb250ZW50IC5hbGVydC1hY3Rpb25zIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7IH0gfVxuICAuYWxlcnQtaGVhZGluZywgLmFsZXJ0IGg0IHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAuYWxlcnQgLmFsZXJ0LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1hbGVydC1saW5rLWZvbnQtd2VpZ2h0KTsgfVxuICAuYWxlcnQgPiBwLFxuICAuYWxlcnQgPiB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYWxlcnQgPiBwICsgcCB7XG4gICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gIC5hbGVydC10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5hbGVydC10aXRsZSArICo6bm90KC5hbGVydC1hY3Rpb25zKSB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAuYWxlcnQtaWNvbiB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG4gIC5hbGVydC1ib2R5IHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgZmxleDogMTsgfVxuICAgIC5hbGVydC1ib2R5ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuYWxlcnQtYm9keSAuYWxlcnQtYWN0aW9ucyB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSAwIDAgMDsgfVxuICAgICAgLmFsZXJ0LWJvZHkgLmFsZXJ0LWFjdGlvbnMgLmJ0biB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxlcnQtYm9keSB1bCwgLmFsZXJ0LWJvZHkgb2wge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAuYWxlcnQgPiAuYnRuLWljb24ge1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuICAgIC5hbGVydCA+IC5idG4taWNvbjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gIC5hbGVydCA+IC5idG5bZGF0YS1kaXNtaXNzPVwiYWxlcnRcIl0sXG4gIC5hbGVydCA+IC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogdmFyKC0tYWxlcnQtcGFkZGluZy12KTtcbiAgICByaWdodDogdmFyKC0tYWxlcnQtcGFkZGluZy12KTtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDIycHg7IH1cbiAgICAuYWxlcnQgPiAuYnRuW2RhdGEtZGlzbWlzcz1cImFsZXJ0XCJdIC5scy5scy1jbG9zZSxcbiAgICAuYWxlcnQgPiAuYnRuW2RhdGEtZGlzbWlzcz1cImFsZXJ0XCJdIC5sbS5sbS1jbG9zZSxcbiAgICAuYWxlcnQgPiAuY2xvc2UgLmxzLmxzLWNsb3NlLFxuICAgIC5hbGVydCA+IC5jbG9zZSAubG0ubG0tY2xvc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7IH1cbiAgLmFsZXJ0LWFjdGlvbnMge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWFsZXJ0LXBhZGRpbmctdik7IH1cbiAgICAuYWxlcnQtYWN0aW9ucyAuYnRuOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgIC5hbGVydC1hY3Rpb25zID4gLmJ0bi1pY29uIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpLXZhcigtLXVpLWhlaWdodC1iYXNlKS8yOyB9XG4gICAgICAuYWxlcnQtYWN0aW9ucyA+IC5idG4taWNvbjpob3ZlciwgLmFsZXJ0LWFjdGlvbnMgPiAuYnRuLWljb246Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5hbGVydC1hY3Rpb25zID4gLmJ0bi1pY29uLmJ0bi14cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpLXZhcigtLXVpLWhlaWdodC14cykvMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyktdmFyKC0tdWktaGVpZ2h0LXhzKS8yOyB9XG4gICAgICAgIC5hbGVydC1hY3Rpb25zID4gLmJ0bi1pY29uLmJ0bi14czpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpLXZhcigtLXVpLWhlaWdodC14cykvMjsgfVxuICAgICAgLmFsZXJ0LWFjdGlvbnMgPiAuYnRuLWljb24uYnRuLXNtLCAuYnRuLWdyb3VwLXNtLmFsZXJ0LWFjdGlvbnMgPiAuYnRuLWljb24uYnRuIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyktdmFyKC0tdWktaGVpZ2h0LXNtKS8yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKS12YXIoLS11aS1oZWlnaHQtc20pLzI7IH1cbiAgICAgICAgLmFsZXJ0LWFjdGlvbnMgPiAuYnRuLWljb24uYnRuLXNtOmxhc3QtY2hpbGQsIC5idG4tZ3JvdXAtc20uYWxlcnQtYWN0aW9ucyA+IC5idG4taWNvbi5idG46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKS12YXIoLS11aS1oZWlnaHQtc20pLzI7IH1cbiAgICAgIC5hbGVydC1hY3Rpb25zID4gLmJ0bi1pY29uLmJ0bi1sZywgLmJ0bi1ncm91cC1sZy5hbGVydC1hY3Rpb25zID4gLmJ0bi1pY29uLmJ0biB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpLXZhcigtLXVpLWhlaWdodC1sZykvMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyktdmFyKC0tdWktaGVpZ2h0LWxnKS8yOyB9XG4gICAgICAgIC5hbGVydC1hY3Rpb25zID4gLmJ0bi1pY29uLmJ0bi1sZzpsYXN0LWNoaWxkLCAuYnRuLWdyb3VwLWxnLmFsZXJ0LWFjdGlvbnMgPiAuYnRuLWljb24uYnRuOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyktdmFyKC0tdWktaGVpZ2h0LWxnKS8yOyB9XG4gICAgLmFsZXJ0LWFjdGlvbnMgLmJ0bltkYXRhLWRpc21pc3M9XCJhbGVydFwiXTpub3QoLmJ0bi1kaXNtaXNzLWNhKSxcbiAgICAuYWxlcnQtYWN0aW9ucyAuY2xvc2U6bm90KC5idG4tZGlzbWlzcy1jYSkge1xuICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICBoZWlnaHQ6IDE4cHg7IH1cbiAgICAgIC5hbGVydC1hY3Rpb25zIC5idG5bZGF0YS1kaXNtaXNzPVwiYWxlcnRcIl06bm90KC5idG4tZGlzbWlzcy1jYSkgLmxzLmxzLWNsb3NlLFxuICAgICAgLmFsZXJ0LWFjdGlvbnMgLmJ0bltkYXRhLWRpc21pc3M9XCJhbGVydFwiXTpub3QoLmJ0bi1kaXNtaXNzLWNhKSAubG0ubG0tY2xvc2UsXG4gICAgICAuYWxlcnQtYWN0aW9ucyAuY2xvc2U6bm90KC5idG4tZGlzbWlzcy1jYSkgLmxzLmxzLWNsb3NlLFxuICAgICAgLmFsZXJ0LWFjdGlvbnMgLmNsb3NlOm5vdCguYnRuLWRpc21pc3MtY2EpIC5sbS5sbS1jbG9zZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7IH1cbiAgLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWFsZXJ0LXBhZGRpbmctMngpICogMikgIWltcG9ydGFudDsgfVxuICAgIC5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgcGFkZGluZzogdmFyKC0tYWxlcnQtcGFkZGluZy12KSB2YXIoLS1hbGVydC1wYWRkaW5nLWgpO1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLmFsZXJ0LWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAgIC5hbGVydC1ncm91cCAuYWxlcnQge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuYWxlcnQtZ3JvdXAgLmFsZXJ0ICsgLmFsZXJ0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7IH1cbiAgICAgIC5hbGVydC1ncm91cCAuYWxlcnQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyB9XG4gIC5hbGVydCAuYWxlcnQtaWNvbiArIC5hbGVydC1ib2R5LFxuICAuYWxlcnQgLmFsZXJ0LWljb24gKyAuYWxlcnQtY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1hbGVydC1wYWRkaW5nLWgpOyB9XG4gIC5hbGVydC5hbGVydC1zbSAuYWxlcnQtaWNvbiArIC5hbGVydC1ib2R5LFxuICAuYWxlcnQuYWxlcnQtc20gLmFsZXJ0LWljb24gKyAuYWxlcnQtY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gIC5hbGVydCAuYWxlcnQtYm9keSArIC5hbGVydC1pY29uLFxuICAuYWxlcnQgLmFsZXJ0LWNvbnRlbnQgKyAuYWxlcnQtaWNvbixcbiAgLmFsZXJ0IC5hbGVydC1hY3Rpb25zICsgLmFsZXJ0LWljb24ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tYWxlcnQtcGFkZGluZy1oKTsgfVxuICAuYWxlcnQubmV0d29yay1pc3N1ZS1hbGVydCB7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgIC5hbGVydC5uZXR3b3JrLWlzc3VlLWFsZXJ0IC5jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmFsZXJ0LmFsZXJ0LWRvbWFpbi1yZW5ld2FscyB7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTR4KTsgfVxuICAgIC5hbGVydC5hbGVydC1kb21haW4tcmVuZXdhbHMuYWxlcnQtcHJpbWFyeSB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgIC5hbGVydC5hbGVydC1kb21haW4tcmVuZXdhbHMge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICAuYWxlcnQuYWxlcnQtZG9tYWluLXJlbmV3YWxzOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiA0cHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7IH1cbiAgICAuYWxlcnQuYWxlcnQtZG9tYWluLXJlbmV3YWxzIC5hbGVydC1jb250ZW50IHtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgICAgIC5hbGVydC5hbGVydC1kb21haW4tcmVuZXdhbHMgLmFsZXJ0LWNvbnRlbnQgLmljb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAuYWxlcnQuYWxlcnQtZG9tYWluLXJlbmV3YWxzIC5hbGVydC1jb250ZW50IHAge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgICAuYWxlcnQuYWxlcnQtZG9tYWluLXJlbmV3YWxzIC5hbGVydC1jb250ZW50IHNwYW4gYiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuICAgIC5hbGVydC5hbGVydC1kb21haW4tcmVuZXdhbHMgLmFsZXJ0LWFjdGlvbiAuYnRuIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1sZy1ib3JkZXItcmFkaXVzKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgLmFsZXJ0LmFsZXJ0LWRvbWFpbi1yZW5ld2FscyAuYWxlcnQtYWN0aW9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLmFsZXJ0LmFsZXJ0LWRvbWFpbi1yZW5ld2FscyAuYWxlcnQtYWN0aW9uIC5idG4ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmFsZXJ0Om5vdCguYWxlcnQtcHJpbWFyeSkgLmFsZXJ0LXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWFsZXJ0LXZhcmlhbnRzLXRpdGxlLWNvbG9yKTsgfVxuXG4uYWxlcnQuYWxlcnQtcHJpbWFyeSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWJhc2UpO1xuICBwYWRkaW5nOiB2YXIoLS1hbGVydC1wYWRkaW5nLXYpIHZhcigtLWFsZXJ0LXBhZGRpbmctdik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xuICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuICAuYWxlcnQuYWxlcnQtcHJpbWFyeTpub3QoLmFsZXJ0LWRlZmF1bHQpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYWxlcnQtcGFkZGluZy12KSArIDRweCk7IH1cbiAgLmFsZXJ0LmFsZXJ0LXByaW1hcnk6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG4gIC5hbGVydC5hbGVydC1wcmltYXJ5IC5hbGVydC1ib2R5IHVsLCAuYWxlcnQuYWxlcnQtcHJpbWFyeSAuYWxlcnQtYm9keSBvbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAuYWxlcnQuYWxlcnQtcHJpbWFyeSAuYWxlcnQtaWNvbiArIC5hbGVydC1ib2R5LFxuICAuYWxlcnQuYWxlcnQtcHJpbWFyeSAuYWxlcnQtaWNvbiArIC5hbGVydC1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gIC5hbGVydC5hbGVydC1wcmltYXJ5IC5hbGVydC1ib2R5ICsgLmFsZXJ0LWljb24sXG4gIC5hbGVydC5hbGVydC1wcmltYXJ5IC5hbGVydC1jb250ZW50ICsgLmFsZXJ0LWljb24sXG4gIC5hbGVydC5hbGVydC1wcmltYXJ5IC5hbGVydC1hY3Rpb25zICsgLmFsZXJ0LWljb24ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgLmFsZXJ0LmFsZXJ0LXByaW1hcnk6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogNHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgbGVmdDogMDsgfVxuICAuYWxlcnQuYWxlcnQtcHJpbWFyeS5hbGVydC1zdWNjZXNzOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtc3VjY2Vzcyk7IH1cbiAgLmFsZXJ0LmFsZXJ0LXByaW1hcnkuYWxlcnQtc3VjY2VzcyAuYWxlcnQtaWNvbiB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvcik7IH1cbiAgLmFsZXJ0LmFsZXJ0LXByaW1hcnkuYWxlcnQtaW5mbzpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWluZm8pOyB9XG4gIC5hbGVydC5hbGVydC1wcmltYXJ5LmFsZXJ0LWluZm8gLmFsZXJ0LWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1pbmZvKTsgfVxuICAuYWxlcnQuYWxlcnQtcHJpbWFyeS5hbGVydC13YXJuaW5nOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtd2FybmluZyk7IH1cbiAgLmFsZXJ0LmFsZXJ0LXByaW1hcnkuYWxlcnQtd2FybmluZyAuYWxlcnQtaWNvbiB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtd2FybmluZy1jb2xvcik7IH1cbiAgLmFsZXJ0LmFsZXJ0LXByaW1hcnkuYWxlcnQtZGFuZ2VyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFuZ2VyKTsgfVxuICAuYWxlcnQuYWxlcnQtcHJpbWFyeS5hbGVydC1kYW5nZXIgLmFsZXJ0LWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cbiAgLmFsZXJ0LmFsZXJ0LXByaW1hcnkuYWxlcnQtZGVmYXVsdDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVuc2V0OyB9XG4gIC5hbGVydC5hbGVydC1wcmltYXJ5LmFsZXJ0LWRlZmF1bHQgLmFsZXJ0LWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTsgfVxuXG4uYWxlcnQuYWxlcnQtZmxvYXRpbmcge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgei1pbmRleDogMTAwMztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4OyB9XG4gIC5hbGVydC5hbGVydC1mbG9hdGluZyA+IC5jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmFsZXJ0LmFsZXJ0LWZsb2F0aW5nIC5hbGVydC1wcmVkZWZpbmVkLWljb24tY29udGFpbmVyLFxuICAuYWxlcnQuYWxlcnQtZmxvYXRpbmcgLmFsZXJ0LXByZWRlZmluZWQtaWxsdXN0cmF0aW9uLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmFsZXJ0LmFsZXJ0LWZsb2F0aW5nIC5hbGVydC1ib2R5IC50aW1lci14cyAudGltZXItYm94LW51bSB7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGModmFyKC0tbGluZS1oZWlnaHQtaDYpIC0gNnB4KTsgfVxuICAuYWxlcnQuYWxlcnQtZmxvYXRpbmcgLmFsZXJ0LWJvZHkgcCB7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG5cbi5hbGVydCBzcGFuLnRpbWVyIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7IH1cblxuLmFsZXJ0IHAgc3Bhbi50aW1lciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5hbGVydC1zbSB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgfVxuICAuYWxlcnQtc20gLmFsZXJ0LWljb246YmVmb3JlIHtcbiAgICB0b3A6IDEzcHg7IH1cblxuLmFsZXJ0LXhzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICBwYWRkaW5nOiA2cHggMTBweDsgfVxuXG4uYWxlcnQtc3VjY2Vzczpub3QoLmFsZXJ0LXByaW1hcnkpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWxlcnQtc3VjY2Vzcy1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYWxlcnQtc3VjY2Vzcy1ib3JkZXIpO1xuICBjb2xvcjogdmFyKC0tYWxlcnQtc3VjY2Vzcy10ZXh0KTsgfVxuICAuYWxlcnQtc3VjY2Vzczpub3QoLmFsZXJ0LXByaW1hcnkpIC5hbGVydC10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXN1Y2Nlc3MtdGV4dCk7IH1cbiAgLmFsZXJ0LXN1Y2Nlc3M6bm90KC5hbGVydC1wcmltYXJ5KSBwIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtc3VjY2Vzcy10ZXh0KSAhaW1wb3J0YW50OyB9XG4gIC5hbGVydC1zdWNjZXNzOm5vdCguYWxlcnQtcHJpbWFyeSkgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWFsZXJ0LXN1Y2Nlc3MtYm9yZGVyKTsgfVxuICAuYWxlcnQtc3VjY2Vzczpub3QoLmFsZXJ0LXByaW1hcnkpIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoOTAlKTsgfVxuICAuYWxlcnQtc3VjY2Vzczpub3QoLmFsZXJ0LXByaW1hcnkpOm5vdCguYWxlcnQtcHJpbWFyeSkgLmJ0bltkYXRhLWRpc21pc3M9XCJhbGVydFwiXSB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXN1Y2Nlc3MtdGV4dCk7IH1cbiAgLmFsZXJ0LXN1Y2Nlc3M6bm90KC5hbGVydC1wcmltYXJ5KTpub3QoLmFsZXJ0LXByaW1hcnkpIC5idG4uYnRuLWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1zdWNjZXNzLXRleHQpOyB9XG4gIC5hbGVydC1zdWNjZXNzOm5vdCguYWxlcnQtcHJpbWFyeSkuYWxlcnQtaWNvbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHZhcigtLWFsZXJ0LXN1Y2Nlc3MtaWNvbik7IH1cbiAgLmFsZXJ0LXN1Y2Nlc3M6bm90KC5hbGVydC1wcmltYXJ5KTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXN1Y2Nlc3MtdGV4dCk7IH1cblxuLmFsZXJ0LWluZm86bm90KC5hbGVydC1wcmltYXJ5KSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFsZXJ0LWluZm8tYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWFsZXJ0LWluZm8tYm9yZGVyKTtcbiAgY29sb3I6IHZhcigtLWFsZXJ0LWluZm8tdGV4dCk7IH1cbiAgLmFsZXJ0LWluZm86bm90KC5hbGVydC1wcmltYXJ5KSAuYWxlcnQtdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1pbmZvLXRleHQpOyB9XG4gIC5hbGVydC1pbmZvOm5vdCguYWxlcnQtcHJpbWFyeSkgcCB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LWluZm8tdGV4dCkgIWltcG9ydGFudDsgfVxuICAuYWxlcnQtaW5mbzpub3QoLmFsZXJ0LXByaW1hcnkpIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1hbGVydC1pbmZvLWJvcmRlcik7IH1cbiAgLmFsZXJ0LWluZm86bm90KC5hbGVydC1wcmltYXJ5KSAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LWluZm8tdGV4dCk7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDkwJSk7IH1cbiAgLmFsZXJ0LWluZm86bm90KC5hbGVydC1wcmltYXJ5KTpub3QoLmFsZXJ0LXByaW1hcnkpIC5idG5bZGF0YS1kaXNtaXNzPVwiYWxlcnRcIl0ge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1pbmZvLXRleHQpOyB9XG4gIC5hbGVydC1pbmZvOm5vdCguYWxlcnQtcHJpbWFyeSk6bm90KC5hbGVydC1wcmltYXJ5KSAuYnRuLmJ0bi1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtaW5mby10ZXh0KTsgfVxuICAuYWxlcnQtaW5mbzpub3QoLmFsZXJ0LXByaW1hcnkpLmFsZXJ0LWljb246YmVmb3JlIHtcbiAgICBjb250ZW50OiB2YXIoLS1hbGVydC1pbmZvLWljb24pOyB9XG4gIC5hbGVydC1pbmZvOm5vdCguYWxlcnQtcHJpbWFyeSk6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1pbmZvLXRleHQpOyB9XG5cbi5hbGVydC13YXJuaW5nOm5vdCguYWxlcnQtcHJpbWFyeSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hbGVydC13YXJuaW5nLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hbGVydC13YXJuaW5nLWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1hbGVydC13YXJuaW5nLXRleHQpOyB9XG4gIC5hbGVydC13YXJuaW5nOm5vdCguYWxlcnQtcHJpbWFyeSkgLmFsZXJ0LXRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtd2FybmluZy10ZXh0KTsgfVxuICAuYWxlcnQtd2FybmluZzpub3QoLmFsZXJ0LXByaW1hcnkpIHAge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC13YXJuaW5nLXRleHQpICFpbXBvcnRhbnQ7IH1cbiAgLmFsZXJ0LXdhcm5pbmc6bm90KC5hbGVydC1wcmltYXJ5KSBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tYWxlcnQtd2FybmluZy1ib3JkZXIpOyB9XG4gIC5hbGVydC13YXJuaW5nOm5vdCguYWxlcnQtcHJpbWFyeSkgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC13YXJuaW5nLXRleHQpO1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpOyB9XG4gIC5hbGVydC13YXJuaW5nOm5vdCguYWxlcnQtcHJpbWFyeSk6bm90KC5hbGVydC1wcmltYXJ5KSAuYnRuW2RhdGEtZGlzbWlzcz1cImFsZXJ0XCJdIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtd2FybmluZy10ZXh0KTsgfVxuICAuYWxlcnQtd2FybmluZzpub3QoLmFsZXJ0LXByaW1hcnkpOm5vdCguYWxlcnQtcHJpbWFyeSkgLmJ0bi5idG4taWNvbiB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXdhcm5pbmctdGV4dCk7IH1cbiAgLmFsZXJ0LXdhcm5pbmc6bm90KC5hbGVydC1wcmltYXJ5KS5hbGVydC1pY29uOmJlZm9yZSB7XG4gICAgY29udGVudDogdmFyKC0tYWxlcnQtd2FybmluZy1pY29uKTsgfVxuICAuYWxlcnQtd2FybmluZzpub3QoLmFsZXJ0LXByaW1hcnkpOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtd2FybmluZy10ZXh0KTsgfVxuXG4uYWxlcnQtZGFuZ2VyOm5vdCguYWxlcnQtcHJpbWFyeSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hbGVydC1kYW5nZXItYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWFsZXJ0LWRhbmdlci1ib3JkZXIpO1xuICBjb2xvcjogdmFyKC0tYWxlcnQtZGFuZ2VyLXRleHQpOyB9XG4gIC5hbGVydC1kYW5nZXI6bm90KC5hbGVydC1wcmltYXJ5KSAuYWxlcnQtdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1kYW5nZXItdGV4dCk7IH1cbiAgLmFsZXJ0LWRhbmdlcjpub3QoLmFsZXJ0LXByaW1hcnkpIHAge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1kYW5nZXItdGV4dCkgIWltcG9ydGFudDsgfVxuICAuYWxlcnQtZGFuZ2VyOm5vdCguYWxlcnQtcHJpbWFyeSkgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWFsZXJ0LWRhbmdlci1ib3JkZXIpOyB9XG4gIC5hbGVydC1kYW5nZXI6bm90KC5hbGVydC1wcmltYXJ5KSAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LWRhbmdlci10ZXh0KTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoOTAlKTsgfVxuICAuYWxlcnQtZGFuZ2VyOm5vdCguYWxlcnQtcHJpbWFyeSk6bm90KC5hbGVydC1wcmltYXJ5KSAuYnRuW2RhdGEtZGlzbWlzcz1cImFsZXJ0XCJdIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtZGFuZ2VyLXRleHQpOyB9XG4gIC5hbGVydC1kYW5nZXI6bm90KC5hbGVydC1wcmltYXJ5KTpub3QoLmFsZXJ0LXByaW1hcnkpIC5idG4uYnRuLWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1kYW5nZXItdGV4dCk7IH1cbiAgLmFsZXJ0LWRhbmdlcjpub3QoLmFsZXJ0LXByaW1hcnkpLmFsZXJ0LWljb246YmVmb3JlIHtcbiAgICBjb250ZW50OiB2YXIoLS1hbGVydC1kYW5nZXItaWNvbik7IH1cbiAgLmFsZXJ0LWRhbmdlcjpub3QoLmFsZXJ0LXByaW1hcnkpOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtZGFuZ2VyLXRleHQpOyB9XG5cbi5hbGVydC1ncmF5Om5vdCguYWxlcnQtcHJpbWFyeSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hbGVydC1ncmF5LWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hbGVydC1ncmF5LWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1hbGVydC1ncmF5LXRleHQpOyB9XG4gIC5hbGVydC1ncmF5Om5vdCguYWxlcnQtcHJpbWFyeSkgLmFsZXJ0LXRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtZ3JheS10ZXh0KTsgfVxuICAuYWxlcnQtZ3JheTpub3QoLmFsZXJ0LXByaW1hcnkpIHAge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1ncmF5LXRleHQpICFpbXBvcnRhbnQ7IH1cbiAgLmFsZXJ0LWdyYXk6bm90KC5hbGVydC1wcmltYXJ5KSBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tYWxlcnQtZ3JheS1ib3JkZXIpOyB9XG4gIC5hbGVydC1ncmF5Om5vdCguYWxlcnQtcHJpbWFyeSkgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1ncmF5LXRleHQpO1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpOyB9XG4gIC5hbGVydC1ncmF5Om5vdCguYWxlcnQtcHJpbWFyeSk6bm90KC5hbGVydC1wcmltYXJ5KSAuYnRuW2RhdGEtZGlzbWlzcz1cImFsZXJ0XCJdIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtZ3JheS10ZXh0KTsgfVxuICAuYWxlcnQtZ3JheTpub3QoLmFsZXJ0LXByaW1hcnkpOm5vdCguYWxlcnQtcHJpbWFyeSkgLmJ0bi5idG4taWNvbiB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LWdyYXktdGV4dCk7IH1cbiAgLmFsZXJ0LWdyYXk6bm90KC5hbGVydC1wcmltYXJ5KS5hbGVydC1pY29uOmJlZm9yZSB7XG4gICAgY29udGVudDogdmFyKC0tYWxlcnQtZ3JheS1pY29uKTsgfVxuICAuYWxlcnQtZ3JheTpub3QoLmFsZXJ0LXByaW1hcnkpOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtZ3JheS10ZXh0KTsgfVxuXG4uYWxlcnQtdHlwZS1wcmltYXJ5Om5vdCguYWxlcnQtcHJpbWFyeSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hbGVydC1wcmltYXJ5LWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hbGVydC1wcmltYXJ5LWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1hbGVydC1wcmltYXJ5LXRleHQpOyB9XG4gIC5hbGVydC10eXBlLXByaW1hcnk6bm90KC5hbGVydC1wcmltYXJ5KSAuYWxlcnQtdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1wcmltYXJ5LXRleHQpOyB9XG4gIC5hbGVydC10eXBlLXByaW1hcnk6bm90KC5hbGVydC1wcmltYXJ5KSBwIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtcHJpbWFyeS10ZXh0KSAhaW1wb3J0YW50OyB9XG4gIC5hbGVydC10eXBlLXByaW1hcnk6bm90KC5hbGVydC1wcmltYXJ5KSBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tYWxlcnQtcHJpbWFyeS1ib3JkZXIpOyB9XG4gIC5hbGVydC10eXBlLXByaW1hcnk6bm90KC5hbGVydC1wcmltYXJ5KSAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXByaW1hcnktdGV4dCk7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDkwJSk7IH1cbiAgLmFsZXJ0LXR5cGUtcHJpbWFyeTpub3QoLmFsZXJ0LXByaW1hcnkpOm5vdCguYWxlcnQtcHJpbWFyeSkgLmJ0bltkYXRhLWRpc21pc3M9XCJhbGVydFwiXSB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXByaW1hcnktdGV4dCk7IH1cbiAgLmFsZXJ0LXR5cGUtcHJpbWFyeTpub3QoLmFsZXJ0LXByaW1hcnkpOm5vdCguYWxlcnQtcHJpbWFyeSkgLmJ0bi5idG4taWNvbiB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXByaW1hcnktdGV4dCk7IH1cbiAgLmFsZXJ0LXR5cGUtcHJpbWFyeTpub3QoLmFsZXJ0LXByaW1hcnkpLmFsZXJ0LWljb246YmVmb3JlIHtcbiAgICBjb250ZW50OiB2YXIoLS1hbGVydC1wcmltYXJ5LWljb24pOyB9XG4gIC5hbGVydC10eXBlLXByaW1hcnk6bm90KC5hbGVydC1wcmltYXJ5KTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXByaW1hcnktdGV4dCk7IH1cblxuLmFsZXJ0LXNlY29uZGFyeTpub3QoLmFsZXJ0LXByaW1hcnkpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWxlcnQtc2Vjb25kYXJ5LWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hbGVydC1zZWNvbmRhcnktYm9yZGVyKTtcbiAgY29sb3I6IHZhcigtLWFsZXJ0LXNlY29uZGFyeS10ZXh0KTsgfVxuICAuYWxlcnQtc2Vjb25kYXJ5Om5vdCguYWxlcnQtcHJpbWFyeSkgLmFsZXJ0LXRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtc2Vjb25kYXJ5LXRleHQpOyB9XG4gIC5hbGVydC1zZWNvbmRhcnk6bm90KC5hbGVydC1wcmltYXJ5KSBwIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtc2Vjb25kYXJ5LXRleHQpICFpbXBvcnRhbnQ7IH1cbiAgLmFsZXJ0LXNlY29uZGFyeTpub3QoLmFsZXJ0LXByaW1hcnkpIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1hbGVydC1zZWNvbmRhcnktYm9yZGVyKTsgfVxuICAuYWxlcnQtc2Vjb25kYXJ5Om5vdCguYWxlcnQtcHJpbWFyeSkgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS1hbGVydC1zZWNvbmRhcnktdGV4dCk7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDkwJSk7IH1cbiAgLmFsZXJ0LXNlY29uZGFyeTpub3QoLmFsZXJ0LXByaW1hcnkpOm5vdCguYWxlcnQtcHJpbWFyeSkgLmJ0bltkYXRhLWRpc21pc3M9XCJhbGVydFwiXSB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXNlY29uZGFyeS10ZXh0KTsgfVxuICAuYWxlcnQtc2Vjb25kYXJ5Om5vdCguYWxlcnQtcHJpbWFyeSk6bm90KC5hbGVydC1wcmltYXJ5KSAuYnRuLmJ0bi1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tYWxlcnQtc2Vjb25kYXJ5LXRleHQpOyB9XG4gIC5hbGVydC1zZWNvbmRhcnk6bm90KC5hbGVydC1wcmltYXJ5KS5hbGVydC1pY29uOmJlZm9yZSB7XG4gICAgY29udGVudDogdmFyKC0tYWxlcnQtc2Vjb25kYXJ5LWljb24pOyB9XG4gIC5hbGVydC1zZWNvbmRhcnk6bm90KC5hbGVydC1wcmltYXJ5KTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWFsZXJ0LXNlY29uZGFyeS10ZXh0KTsgfVxuXG4ubGFnb20tbGF5b3V0LXRvcCAuYWxlcnQtZGVmYXVsdC5hbGVydC1mbG9hdGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLWJnKTsgfVxuXG4ubGFnb20tbGF5b3V0LWxlZnQgLmFsZXJ0LWRlZmF1bHQuYWxlcnQtZmxvYXRpbmcsXG4ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYWxlcnQtZGVmYXVsdC5hbGVydC1mbG9hdGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4tdG9wLWJnKTsgfVxuXG4ubGFnb20uc2Nyb2xsLWRvd24gLmNsaWVudEFsZXJ0LmFsZXJ0LWZsb2F0aW5nIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stb3ZlcmxheS1zaGFkb3cpOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9IH1cblxuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9IH1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiB2YXIoLS1wcm9ncmVzcy1oZWlnaHQpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJvZ3Jlc3MtYmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1wcm9ncmVzcy1ib3JkZXItcmFkaXVzKTsgfVxuXG4ucGFzc3dvcmQtY29udGVudC1ncm91cCAuaW5wdXQtcGFzc3dvcmQtc3RyZW5ndGgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7IH1cblxuLnBhc3N3b3JkLWNvbnRlbnQtZ3JvdXAgbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLnBhc3N3b3JkLWNvbnRlbnQtZ3JvdXAgLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiA2cHg7XG4gIG1heC13aWR0aDogdmFyKC0tcHJvZ3Jlc3Mtd2lkdGgpO1xuICB3aWR0aDogdmFyKC0tcHJvZ3Jlc3Mtd2lkdGgpO1xuICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5wYXNzd29yZC1jb250ZW50LWdyb3VwIC5wcm9ncmVzcyArIC5wYXNzd29yZC1jb250ZW50LXRleHQge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuXG4ucGFzc3dvcmQtY29udGVudC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucGFzc3dvcmQtY29udGVudC10ZXh0IGkge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiB2YXIoLS1wcm9ncmVzcy1iYXItY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLWJhci1iZyk7XG4gIHRyYW5zaXRpb246IHZhcigtLXByb2dyZXNzLWJhci10cmFuc2l0aW9uKTsgfVxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5wcm9ncmVzcy1iYXIge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG5cbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDsgfVxuXG4ucHJvZ3Jlc3MtYmFyLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzKTsgfVxuXG4ucHJvZ3Jlc3MtYmFyLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvKTsgfVxuXG4ucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nKTsgfVxuXG4ucHJvZ3Jlc3MtYmFyLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcik7IH1cblxuLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxOyB9XG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGlzdC1ncm91cC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tbGlzdC1ncm91cC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICBib3gtc2hhZG93OiB2YXIoLS1saXN0LWdyb3VwLWJveC1zaGFkb3cpOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWFjdGlvbi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLXZpc2libGUsIC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWhvdmVyLWJnKTsgfVxuICAubGlzdC1ncm91cC1pdGVtLWFjdGlvbjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZyk7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZyk7XG4gIC8qYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlzdC1ncm91cC1iZyk7Ki9cbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1ib3JkZXItY29sb3IpOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCwgLmxpc3QtZ3JvdXAtaXRlbTpkaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWRpc2FibGVkLWJnKTsgfVxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcik7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7IH1cbiAgICAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogLXZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTsgfVxuXG5hLmxpc3QtZ3JvdXAtaXRlbSxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0sXG4ubGlzdC1ncm91cC1pdGVtLWxpbmsge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay1jb2xvcik7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgYS5saXN0LWdyb3VwLWl0ZW0gLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgLmxpc3QtZ3JvdXAtaXRlbS1saW5rIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWhlYWRpbmctY29sb3IpOyB9XG4gIGEubGlzdC1ncm91cC1pdGVtIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSAubGlzdC1ncm91cC1pdGVtLXRleHQsXG4gIC5saXN0LWdyb3VwLWl0ZW0tbGluayAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay10ZXh0LWNvbG9yKTsgfVxuICBhLmxpc3QtZ3JvdXAtaXRlbTpob3ZlciwgYS5saXN0LWdyb3VwLWl0ZW06Zm9jdXMsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW06aG92ZXIsXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW06Zm9jdXMsXG4gIC5saXN0LWdyb3VwLWl0ZW0tbGluazpob3ZlcixcbiAgLmxpc3QtZ3JvdXAtaXRlbS1saW5rOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay1ob3Zlci1iZyk7IH1cblxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0taGVhZGluZy1jb2xvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTsgfVxuICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgKyAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tdGV4dC1jb2xvcik7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS1mb290ZXIgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLWljb24ge1xuICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWljb24tY29sb3IpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSkgIWltcG9ydGFudDsgfVxuICAubGlzdC1ncm91cC1pdGVtLWljb24gKyAubGlzdC1ncm91cC1pdGVtLWJvZHkge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS5oYXMtaWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCwgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWRpc2FibGVkLWJnKTtcbiAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItZGlzYWJsZWQpOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLCAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZywgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpmb2N1cyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0LCAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmhvdmVyIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCwgLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZDpmb2N1cyAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLS1pdGVtZGlzYWJsZWQtdGV4dC1jb2xvcik7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUsIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyB7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay1hY3RpdmUtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay1hY3RpdmUtYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWFjdGl2ZS1ib3JkZXIpOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyxcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gc21hbGwsXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCwgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6aG92ZXIgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpob3ZlciAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiBzbWFsbCxcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6aG92ZXIgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gLnNtYWxsLCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmZvY3VzIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgPiAuc21hbGwge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCwgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6aG92ZXIgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0LCAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yKTsgfVxuXG4ubGlzdC1ncm91cC1sZyAubGlzdC1ncm91cC1pdGVtIHtcbiAgcGFkZGluZzogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWxnLXBhZGRpbmcpOyB9XG4gIC5saXN0LWdyb3VwLWxnIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTsgfVxuICAgIC5saXN0LWdyb3VwLWxnIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyArIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfVxuICAubGlzdC1ncm91cC1sZyAubGlzdC1ncm91cC1pdGVtLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktcGFkZGluZy1sZy1oKTsgfVxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCB2YXIoLS1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7IH1cbiAgICAubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwOyB9XG5cbi5saXN0LWdyb3VwLXNtIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpOyB9XG4gIC5saXN0LWdyb3VwLXNtIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyArIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7IH1cblxuLmxpc3QtZ3JvdXAteHMgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDgpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDgpOyB9XG4gIC5saXN0LWdyb3VwLXhzIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyArIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7IH1cblxuLmxpc3QtZ3JvdXAteHhzLmhhcy1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiAyMjRweDsgfVxuXG4ubGlzdC1ncm91cC14eHMgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20tdikgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7IH1cbiAgLmxpc3QtZ3JvdXAteHhzIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDkpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oOSk7IH1cbiAgICAubGlzdC1ncm91cC14eHMgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nICsgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHhzKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTsgfVxuXG4ubGltaXRlZC1saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06bnRoLWNoaWxkKG4rNCkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTQpOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cy12aXNpYmxlLCAubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MtbGlnaHRlci0zKTsgfVxuICAubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcyk7IH1cblxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWluZm8pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMyk7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLXZpc2libGUsIC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtaW5mbyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtaW5mby1saWdodGVyLTIpOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtaW5mbyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvKTsgfVxuXG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcge1xuICBjb2xvcjogdmFyKC0tYnJhbmQtd2FybmluZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci00KTsgfVxuICAubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMtdmlzaWJsZSwgLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItMyk7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmcpOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG4gIC5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMtdmlzaWJsZSwgLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMyk7IH1cbiAgLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXIpOyB9XG5cbi5wYW5lbCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tcGFuZWwtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXBhbmVsLWJveC1zaGFkb3cpOyB9XG4gIC5wYW5lbCAucGFuZWwsXG4gIC5wYW5lbCAudGFibGUtY29udGFpbmVyIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXBhbmVsLWRlZmF1bHQtYm9yZGVyKTsgfVxuXG4ucGFuZWwtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7IH1cblxuLnBhbmVsLWhlYWRpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiB2YXIoLS11aS1ibG9jay1oZWFkZXItaGVpZ2h0KTtcbiAgcGFkZGluZzogdmFyKC0tcGFuZWwtaGVhZGluZy1wYWRkaW5nKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpOyB9XG4gIC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAucGFuZWwtaGVhZGluZyA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuXG4ucGFuZWwtdGl0bGUge1xuICBmbGV4OiAxO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY29sb3I6IHZhcigtLXBhbmVsLXRpdGxlLWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1wYW5lbC10aXRsZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tcGFuZWwtdGl0bGUtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tcGFuZWwtdGl0bGUtbGluZS1oZWlnaHQpOyB9XG4gIC5wYW5lbC10aXRsZSA+IGEsXG4gIC5wYW5lbC10aXRsZSA+IHNtYWxsLFxuICAucGFuZWwtdGl0bGUgPiAuc21hbGwsXG4gIC5wYW5lbC10aXRsZSA+IHNtYWxsID4gYSxcbiAgLnBhbmVsLXRpdGxlID4gLnNtYWxsID4gYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLnBhbmVsLWZvb3RlciB7XG4gIHBhZGRpbmc6IHZhcigtLXBhbmVsLWZvb3Rlci1wYWRkaW5nKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtZm9vdGVyLWJnKTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXBhbmVsLWJvcmRlci1kaXZpZGVyLWNvbG9yKTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKTsgfVxuXG4ucGFuZWw6bm90KC5wYW5lbC1zaWRlYmFyKSA+IC5saXN0LWdyb3VwLFxuLnBhbmVsOm5vdCgucGFuZWwtc2lkZWJhcikgPiAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBhbmVsOm5vdCgucGFuZWwtc2lkZWJhcikgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkLFxuICAucGFuZWw6bm90KC5wYW5lbC1zaWRlYmFyKSA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyktMTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyktMTsgfVxuICAucGFuZWw6bm90KC5wYW5lbC1zaWRlYmFyKSA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkLFxuICAucGFuZWw6bm90KC5wYW5lbC1zaWRlYmFyKSA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKS0xO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpLTE7IH1cblxuLnBhbmVsOm5vdCgucGFuZWwtc2lkZWJhcikgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4ucGFuZWwgPiAudGFibGUsXG4ucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcbi5wYW5lbCA+IC5wYW5lbC1jb2xsYXBzZSA+IC50YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBhbmVsID4gLnRhYmxlIGNhcHRpb24sXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlIGNhcHRpb24sXG4gIC5wYW5lbCA+IC5wYW5lbC1jb2xsYXBzZSA+IC50YWJsZSBjYXB0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTsgfVxuXG4ucGFuZWwgPiAudGFibGU6Zmlyc3QtY2hpbGQsXG4ucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpLTE7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKS0xOyB9XG4gIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKS0xO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKS0xOyB9XG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6Zmlyc3QtY2hpbGQgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyktMTsgfVxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6Zmlyc3QtY2hpbGQgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRoOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmZpcnN0LWNoaWxkID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRoZWFkOmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCA+IC50YWJsZTpmaXJzdC1jaGlsZCA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyktMTsgfVxuXG4ucGFuZWwgPiAudGFibGU6bGFzdC1jaGlsZCxcbi5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKS0xO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKS0xOyB9XG4gIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyktMTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyktMTsgfVxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Ym9keTpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0aDpmaXJzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRmb290Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyktMTsgfVxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGJvZHk6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRoOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Ym9keTpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkLFxuICAgIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCA+IHRib2R5Omxhc3QtY2hpbGQgPiB0cjpsYXN0LWNoaWxkIHRoOmxhc3QtY2hpbGQsXG4gICAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZCA+IC50YWJsZTpsYXN0LWNoaWxkID4gdGZvb3Q6bGFzdC1jaGlsZCA+IHRyOmxhc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCxcbiAgICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZTpsYXN0LWNoaWxkID4gLnRhYmxlOmxhc3QtY2hpbGQgPiB0Zm9vdDpsYXN0LWNoaWxkID4gdHI6bGFzdC1jaGlsZCB0aDpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKS0xOyB9XG5cbi5wYW5lbCA+IC5wYW5lbC1ib2R5ICsgLnRhYmxlLFxuLnBhbmVsID4gLnBhbmVsLWJvZHkgKyAudGFibGUtcmVzcG9uc2l2ZSxcbi5wYW5lbCA+IC50YWJsZSArIC5wYW5lbC1ib2R5LFxuLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgKyAucGFuZWwtYm9keSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS10YWJsZS1ib3JkZXItY29sb3IpOyB9XG5cbi5wYW5lbCA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXG4ucGFuZWwgPiAudGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLXRvcDogMDsgfVxuXG4ucGFuZWwgPiAudGFibGUtYm9yZGVyZWQsXG4ucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMDsgfVxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMDsgfVxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGgsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0aGVhZCA+IHRyOmZpcnN0LWNoaWxkID4gdGgsXG4gIC5wYW5lbCA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCA+IHRkLFxuICAucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0ZCxcbiAgLnBhbmVsID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0cjpsYXN0LWNoaWxkID4gdGgsXG4gIC5wYW5lbCA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHI6bGFzdC1jaGlsZCA+IHRkLFxuICAucGFuZWwgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyOmxhc3QtY2hpbGQgPiB0aCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0ZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0aCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyOmxhc3QtY2hpbGQgPiB0ZCxcbiAgLnBhbmVsID4gLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyOmxhc3QtY2hpbGQgPiB0aCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4ucGFuZWwgPiAudGFibGUtcmVzcG9uc2l2ZSB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucGFuZWwtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTsgfVxuICAucGFuZWwtZ3JvdXAgLnBhbmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAucGFuZWwtZ3JvdXAgLnBhbmVsICsgLnBhbmVsOm5vdCgucGFuZWwtY2hlY2spIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAucGFuZWwtZ3JvdXAgLnBhbmVsLWhlYWRpbmcge1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAucGFuZWwtZ3JvdXAgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSxcbiAgICAucGFuZWwtZ3JvdXAgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcGFuZWwtYm9yZGVyLWRpdmlkZXItY29sb3IpOyB9XG4gIC5wYW5lbC1ncm91cCAucGFuZWwtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwOyB9XG4gICAgLnBhbmVsLWdyb3VwIC5wYW5lbC1mb290ZXIgKyAucGFuZWwtY29sbGFwc2UgLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXBhbmVsLWJvcmRlci1kaXZpZGVyLWNvbG9yKTsgfVxuXG4vKiBJRSAxMSAqL1xuLnBhbmVsLWZvcm0gLnBhbmVsLWZvb3RlciB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBjbGVhcjogYm90aDsgfVxuICAucGFuZWwtZm9ybSAucGFuZWwtZm9vdGVyIC5idG4ge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5wYW5lbC1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtZGVmYXVsdC1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtZGVmYXVsdC1ib3JkZXIpOyB9XG4gIC5wYW5lbC1kZWZhdWx0ID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1kZWZhdWx0LXRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1kZWZhdWx0LWJvcmRlcik7IH1cbiAgICAucGFuZWwtZGVmYXVsdCA+IC5wYW5lbC1oZWFkaW5nID4gLnBhbmVsLXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1kZWZhdWx0LXRleHQpOyB9XG4gICAgLnBhbmVsLWRlZmF1bHQgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXBhbmVsLWRlZmF1bHQtYm9yZGVyKTsgfVxuICAgIC5wYW5lbC1kZWZhdWx0ID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1kZWZhdWx0LWhlYWRpbmctYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGFuZWwtZGVmYXVsdC10ZXh0KTsgfVxuICAucGFuZWwtZGVmYXVsdCA+IC5wYW5lbC1ib2R5IHtcbiAgICBjb2xvcjogdmFyKC0tcGFuZWwtZGVmYXVsdC10ZXh0KTsgfVxuICAucGFuZWwtZGVmYXVsdCA+IC5wYW5lbC1mb290ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtZGVmYXVsdC1ib3JkZXIpOyB9XG4gICAgLnBhbmVsLWRlZmF1bHQgPiAucGFuZWwtZm9vdGVyICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcGFuZWwtZGVmYXVsdC1ib3JkZXIpOyB9XG5cbi5wYW5lbC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtc3VjY2Vzcy1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtc3VjY2Vzcy1ib3JkZXIpOyB9XG4gIC5wYW5lbC1zdWNjZXNzID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zdWNjZXNzLXRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1zdWNjZXNzLWJvcmRlcik7IH1cbiAgICAucGFuZWwtc3VjY2VzcyA+IC5wYW5lbC1oZWFkaW5nID4gLnBhbmVsLXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zdWNjZXNzLXRleHQpOyB9XG4gICAgLnBhbmVsLXN1Y2Nlc3MgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXBhbmVsLXN1Y2Nlc3MtYm9yZGVyKTsgfVxuICAgIC5wYW5lbC1zdWNjZXNzID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zdWNjZXNzLWhlYWRpbmctYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGFuZWwtc3VjY2Vzcy10ZXh0KTsgfVxuICAucGFuZWwtc3VjY2VzcyA+IC5wYW5lbC1ib2R5IHtcbiAgICBjb2xvcjogdmFyKC0tcGFuZWwtc3VjY2Vzcy10ZXh0KTsgfVxuICAucGFuZWwtc3VjY2VzcyA+IC5wYW5lbC1mb290ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtc3VjY2Vzcy1ib3JkZXIpOyB9XG4gICAgLnBhbmVsLXN1Y2Nlc3MgPiAucGFuZWwtZm9vdGVyICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcGFuZWwtc3VjY2Vzcy1ib3JkZXIpOyB9XG5cbi5wYW5lbC1pbmZvIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtaW5mby1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtaW5mby1ib3JkZXIpOyB9XG4gIC5wYW5lbC1pbmZvID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1pbmZvLXRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBhbmVsLWluZm8taGVhZGluZy1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1pbmZvLWJvcmRlcik7IH1cbiAgICAucGFuZWwtaW5mbyA+IC5wYW5lbC1oZWFkaW5nID4gLnBhbmVsLXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1pbmZvLXRleHQpOyB9XG4gICAgLnBhbmVsLWluZm8gPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXBhbmVsLWluZm8tYm9yZGVyKTsgfVxuICAgIC5wYW5lbC1pbmZvID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1pbmZvLWhlYWRpbmctYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGFuZWwtaW5mby10ZXh0KTsgfVxuICAucGFuZWwtaW5mbyA+IC5wYW5lbC1ib2R5IHtcbiAgICBjb2xvcjogdmFyKC0tcGFuZWwtaW5mby10ZXh0KTsgfVxuICAucGFuZWwtaW5mbyA+IC5wYW5lbC1mb290ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtaW5mby1ib3JkZXIpOyB9XG4gICAgLnBhbmVsLWluZm8gPiAucGFuZWwtZm9vdGVyICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcGFuZWwtaW5mby1ib3JkZXIpOyB9XG5cbi5wYW5lbC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtd2FybmluZy1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtd2FybmluZy1ib3JkZXIpOyB9XG4gIC5wYW5lbC13YXJuaW5nID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiB2YXIoLS1wYW5lbC13YXJuaW5nLXRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBhbmVsLXdhcm5pbmctaGVhZGluZy1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC13YXJuaW5nLWJvcmRlcik7IH1cbiAgICAucGFuZWwtd2FybmluZyA+IC5wYW5lbC1oZWFkaW5nID4gLnBhbmVsLXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC13YXJuaW5nLXRleHQpOyB9XG4gICAgLnBhbmVsLXdhcm5pbmcgPiAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXBhbmVsLXdhcm5pbmctYm9yZGVyKTsgfVxuICAgIC5wYW5lbC13YXJuaW5nID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC13YXJuaW5nLWhlYWRpbmctYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGFuZWwtd2FybmluZy10ZXh0KTsgfVxuICAucGFuZWwtd2FybmluZyA+IC5wYW5lbC1ib2R5IHtcbiAgICBjb2xvcjogdmFyKC0tcGFuZWwtd2FybmluZy10ZXh0KTsgfVxuICAucGFuZWwtd2FybmluZyA+IC5wYW5lbC1mb290ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtd2FybmluZy1ib3JkZXIpOyB9XG4gICAgLnBhbmVsLXdhcm5pbmcgPiAucGFuZWwtZm9vdGVyICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcGFuZWwtd2FybmluZy1ib3JkZXIpOyB9XG5cbi5wYW5lbC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1kYW5nZXItYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWRhbmdlci1ib3JkZXIpOyB9XG4gIC5wYW5lbC1kYW5nZXIgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6IHZhcigtLXBhbmVsLWRhbmdlci10ZXh0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYW5lbC1kYW5nZXItaGVhZGluZy1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1kYW5nZXItYm9yZGVyKTsgfVxuICAgIC5wYW5lbC1kYW5nZXIgPiAucGFuZWwtaGVhZGluZyA+IC5wYW5lbC10aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tcGFuZWwtZGFuZ2VyLXRleHQpOyB9XG4gICAgLnBhbmVsLWRhbmdlciA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcGFuZWwtZGFuZ2VyLWJvcmRlcik7IH1cbiAgICAucGFuZWwtZGFuZ2VyID4gLnBhbmVsLWhlYWRpbmcgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1kYW5nZXItaGVhZGluZy1iZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYW5lbC1kYW5nZXItdGV4dCk7IH1cbiAgLnBhbmVsLWRhbmdlciA+IC5wYW5lbC1ib2R5IHtcbiAgICBjb2xvcjogdmFyKC0tcGFuZWwtZGFuZ2VyLXRleHQpOyB9XG4gIC5wYW5lbC1kYW5nZXIgPiAucGFuZWwtZm9vdGVyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWRhbmdlci1ib3JkZXIpOyB9XG4gICAgLnBhbmVsLWRhbmdlciA+IC5wYW5lbC1mb290ZXIgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1wYW5lbC1kYW5nZXItYm9yZGVyKTsgfVxuXG4ud2VsbCB7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZWxsLWJnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0td2VsbC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTsgfVxuICAud2VsbCBibG9ja3F1b3RlIHtcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAud2VsbC1sZyB7XG4gICAgcGFkZGluZzogNDhweDsgfSB9XG5cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLmNsb3NlIHtcbiAgY29sb3I6IHZhcigtLWNsb3NlLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogLTJweCAtNHB4IC0ycHggMDtcbiAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tY2xvc2UtZm9udC13ZWlnaHQpO1xuICB0ZXh0LXNoYWRvdzogdmFyKC0tY2xvc2UtdGV4dC1zaGFkb3cpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMjhweDtcbiAgd2lkdGg6IDI4cHg7XG4gIHJpZ2h0OiAxMnB4OyB9XG4gIC5jbG9zZTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNsb3NlLWNvbG9yLWhvdmVyKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jbG9zZTpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tY2xvc2UtY29sb3ItaG92ZXIpOyB9XG5cbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLm1vZGFsLW9wZW4gLm1vZGFsIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbW9kYWwpO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIG91dGxpbmU6IDA7XG4gIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy0yeCkgIWltcG9ydGFudDsgfVxuICAubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICB0cmFuc2Zvcm06IHZhcigtLW1vZGFsLWZhZGUtdHJhbnNmb3JtKTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1tb2RhbC10cmFuc2l0aW9uKTsgfVxuICAubW9kYWwuc2hvdyAubW9kYWwtZGlhbG9nIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG5cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAubW9kYWwtb3BlbiAubW9kYWwuZmFkZS5zaG93LCAubW9kYWwtb3BlbiAubW9kYWwuc2hvdyB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogdmFyKC0tbW9kYWwtZGlhbG9nLWNlbnRlcmVkLW1pbi1oZWlnaHQpOyB9XG4gIC5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xuICAgIHRyYW5zZm9ybTogdmFyKC0tbW9kYWwtc2hvdy10cmFuc2Zvcm0pOyB9XG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgLm1vZGFsLWRpYWxvZyB7XG4gICAgdHJhbnNmb3JtOiB2YXIoLS1tb2RhbC1zY2FsZS10cmFuc2Zvcm0pOyB9XG4gIC5tb2RhbC1kaWFsb2c6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiB2YXIoLS1tb2RhbC1kaWFsb2ctY2VudGVyZWQtYmVmb3JlLWhlaWdodCk7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgbWluLWhlaWdodDogdmFyKC0tbW9kYWwtZGlhbG9nLWNlbnRlcmVkLW1pbi1oZWlnaHQtc20pOyB9XG4gICAgICAubW9kYWwtZGlhbG9nOjpiZWZvcmUge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLW1vZGFsLWRpYWxvZy1jZW50ZXJlZC1iZWZvcmUtaGVpZ2h0LXNtKTtcbiAgICAgICAgaGVpZ2h0OiBtaW4tY29udGVudDsgfSB9XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC1oZWlnaHQ6IHZhcigtLW1vZGFsLWRpYWxvZy1tYXgtaGVpZ2h0KTsgfVxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLW1vZGFsLWNvbnRlbnQtbWF4LWhlaWdodCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwOyB9XG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogdmFyKC0tbW9kYWwtZGlhbG9nLWNlbnRlcmVkLW1pbi1oZWlnaHQpOyB9XG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiB2YXIoLS1tb2RhbC1kaWFsb2ctY2VudGVyZWQtYmVmb3JlLWhlaWdodCk7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lOyB9XG4gICAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cblxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogdmFyKC0tbW9kYWwtY29udGVudC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1tb2RhbC1jb250ZW50LWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tbW9kYWwtY29udGVudC1ib3gtc2hhZG93KTtcbiAgb3V0bGluZTogMDtcbiAgbWFyZ2luOiAzMHB4IGF1dG87IH1cbiAgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IHZhcigtLXppbmRleC1tb2RhbC1iYWNrZ3JvdW5kKTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1tb2RhbC1iYWNrZHJvcC1iZyk7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7IH1cbiAgLm1vZGFsLWJhY2tkcm9wLmZhZGUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm1vZGFsLWJhY2tkcm9wLnNob3cge1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLW1vZGFsLXRpdGxlLXBhZGRpbmcpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLW1vZGFsLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKSB2YXIoLS1tb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpIDAgMDsgfVxuICAubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gICAgcGFkZGluZzogdmFyKC0tbW9kYWwtYnRuLWNsb3NlLXBhZGRpbmcpOyB9XG4gICAgLm1vZGFsLWhlYWRlciAuY2xvc2UgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7IH1cbiAgICAubW9kYWwtaGVhZGVyIC5jbG9zZSBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50OyB9XG5cbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiB2YXIoLS1tb2RhbC10aXRsZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbW9kYWwtdGl0bGUtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQpOyB9XG5cbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiB2YXIoLS1tb2RhbC1pbm5lci1wYWRkaW5nKTtcbiAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cbiAgLm1vZGFsLWJvZHkgc3Ryb25nIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTsgfVxuXG4ubW9kYWwubW9kYWwtZGVmYXVsdCAubW9kYWwtdGl0bGU6YmVmb3JlLCAubW9kYWwubW9kYWwtcHJpbWFyeSAubW9kYWwtdGl0bGU6YmVmb3JlLCAubW9kYWwubW9kYWwtc2Vjb25kYXJ5IC5tb2RhbC10aXRsZTpiZWZvcmUsIC5tb2RhbC5tb2RhbC1ncmF5IC5tb2RhbC10aXRsZTpiZWZvcmUsIC5tb2RhbC5tb2RhbC1pbmZvIC5tb2RhbC10aXRsZTpiZWZvcmUsIC5tb2RhbC5tb2RhbC1zdWNjZXNzIC5tb2RhbC10aXRsZTpiZWZvcmUsIC5tb2RhbC5tb2RhbC1kYW5nZXIgLm1vZGFsLXRpdGxlOmJlZm9yZSwgLm1vZGFsLm1vZGFsLXdhcm5pbmcgLm1vZGFsLXRpdGxlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnbGFnb20tbWVkaXVtLWljb25zJyAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xuICBmb250LXNpemU6IDE4cHg7IH1cblxuLm1vZGFsLm1vZGFsLWRlZmF1bHQgLm1vZGFsLXRpdGxlOmJlZm9yZSwgLm1vZGFsLm1vZGFsLWdyYXkgLm1vZGFsLXRpdGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuXG4ubW9kYWwubW9kYWwtcHJpbWFyeSAubW9kYWwtdGl0bGU6YmVmb3JlLCAubW9kYWwubW9kYWwtc2Vjb25kYXJ5IC5tb2RhbC10aXRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0Y1wiO1xuICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktYm9keS1jb2xvcik7IH1cblxuLm1vZGFsLm1vZGFsLWluZm8gLm1vZGFsLXRpdGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG5cbi5tb2RhbC5tb2RhbC1zdWNjZXNzIC5tb2RhbC10aXRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xuICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTsgfVxuXG4ubW9kYWwubW9kYWwtZGFuZ2VyIC5tb2RhbC10aXRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0Y1wiO1xuICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5tb2RhbC5tb2RhbC1kYW5nZXItcmVtb3ZlIC5tb2RhbC10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCkgIWltcG9ydGFudDsgfVxuICAubW9kYWwubW9kYWwtZGFuZ2VyLXJlbW92ZSAubW9kYWwtdGl0bGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkzOFwiO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5tb2RhbC5tb2RhbC1kYW5nZXItcmVtb3ZlIC5jaGVja2JveC1zdHlsZWQge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5tb2RhbC5tb2RhbC13YXJuaW5nIC5tb2RhbC10aXRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0Y1wiO1xuICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ubW9kYWwubW9kYWwgLm1vZGFsLWhlYWRlci1uby1pY29uIC5tb2RhbC10aXRsZTpiZWZvcmUge1xuICBjb250ZW50OiB1bnNldDsgfVxuXG4ubW9kYWwubW9kYWwtdHlwZS1wcmltYXJ5IC5tb2RhbC1oZWFkZXIsIC5tb2RhbC5tb2RhbC1zZWNvbmRhcnkgLm1vZGFsLWhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItY29sb3IpOyB9XG5cbi5tb2RhbC5tb2RhbC10eXBlLXByaW1hcnkgLm1vZGFsLXRpdGxlLCAubW9kYWwubW9kYWwtc2Vjb25kYXJ5IC5tb2RhbC10aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1oZWFkaW5nLWNvbG9yKTsgfVxuXG4ubW9kYWwubW9kYWwtdHlwZS1wcmltYXJ5IC5tb2RhbC1ib2R5LCAubW9kYWwubW9kYWwtc2Vjb25kYXJ5IC5tb2RhbC1ib2R5IHtcbiAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpOyB9XG5cbi5tb2RhbC5tb2RhbC10eXBlLXByaW1hcnkgLm1vZGFsLWZvb3RlciAuY2hlY2tib3ggPiBsYWJlbCBzcGFuLCAubW9kYWwubW9kYWwtc2Vjb25kYXJ5IC5tb2RhbC1mb290ZXIgLmNoZWNrYm94ID4gbGFiZWwgc3BhbiB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1ib2R5LWNvbG9yKTsgfVxuXG4ubW9kYWwubW9kYWwtdHlwZS1wcmltYXJ5IC5tb2RhbC1mb290ZXIgLmNoZWNrYm94LXN0eWxlZC5jaGVja2VkLCAubW9kYWwubW9kYWwtc2Vjb25kYXJ5IC5tb2RhbC1mb290ZXIgLmNoZWNrYm94LXN0eWxlZC5jaGVja2VkIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzIpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzIpOyB9XG5cbi5tb2RhbC5tb2RhbC10eXBlLXByaW1hcnkgLm1vZGFsLWZvb3RlciAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCksIC5tb2RhbC5tb2RhbC1zZWNvbmRhcnkgLm1vZGFsLWZvb3RlciAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCkge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzIpOyB9XG4gIC5tb2RhbC5tb2RhbC10eXBlLXByaW1hcnkgLm1vZGFsLWZvb3RlciAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCkuaG92ZXIsIC5tb2RhbC5tb2RhbC1zZWNvbmRhcnkgLm1vZGFsLWZvb3RlciAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCkuaG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU2KTsgfVxuXG4ubW9kYWwubW9kYWwtdHlwZS1wcmltYXJ5IC5jbG9zZSwgLm1vZGFsLm1vZGFsLXNlY29uZGFyeSAuY2xvc2Uge1xuICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktYm9keS1jb2xvcik7XG4gIG9wYWNpdHk6IDAuODsgfVxuICAubW9kYWwubW9kYWwtdHlwZS1wcmltYXJ5IC5jbG9zZTpob3ZlciwgLm1vZGFsLm1vZGFsLXNlY29uZGFyeSAuY2xvc2U6aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLm1vZGFsLm1vZGFsLXR5cGUtcHJpbWFyeSAubW9kYWwtY29udGVudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpOyB9XG5cbi5tb2RhbC5tb2RhbC1zZWNvbmRhcnkgLm1vZGFsLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1zZWNvbmRhcnkpOyB9XG5cbi5tb2RhbC5tb2RhbC1ncmF5IC5tb2RhbC1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7IH1cblxuLnJlY29tbWVuZGF0aW9ucy1jb21wbGV0ZSAucHJvZHVjdC1hZGRlZC1wYW5lbCxcbi5tb2RhbC1yZWNvbWVuZGF0aW9ucyAubW9kYWwtYm9keSAucHJvZHVjdC1hZGRlZC1wYW5lbCB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3gpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1icmFuZC1zdWNjZXNzKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zeCk7IH1cblxuLnJlY29tbWVuZGF0aW9ucy1jb21wbGV0ZSAucHJvZHVjdC1hZGRlZC1ib2R5LFxuLm1vZGFsLXJlY29tZW5kYXRpb25zIC5tb2RhbC1ib2R5IC5wcm9kdWN0LWFkZGVkLWJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLnJlY29tbWVuZGF0aW9ucy1jb21wbGV0ZSAucHJvZHVjdC1hZGRlZC1pY29uLFxuLm1vZGFsLXJlY29tZW5kYXRpb25zIC5tb2RhbC1ib2R5IC5wcm9kdWN0LWFkZGVkLWljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiA1NnB4O1xuICB3aWR0aDogNTZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTQpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gIC5yZWNvbW1lbmRhdGlvbnMtY29tcGxldGUgLnByb2R1Y3QtYWRkZWQtaWNvbiBpLFxuICAubW9kYWwtcmVjb21lbmRhdGlvbnMgLm1vZGFsLWJvZHkgLnByb2R1Y3QtYWRkZWQtaWNvbiBpIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7IH1cblxuLnJlY29tbWVuZGF0aW9ucy1jb21wbGV0ZSAucHJvZHVjdC1hZGRlZC1pbmZvIC5wcm9kdWN0LW5hbWUsXG4ucmVjb21tZW5kYXRpb25zLWNvbXBsZXRlIC5wcm9kdWN0LWFkZGVkLWluZm8gLnByb2R1Y3QtZ3JvdXAsXG4ubW9kYWwtcmVjb21lbmRhdGlvbnMgLm1vZGFsLWJvZHkgLnByb2R1Y3QtYWRkZWQtaW5mbyAucHJvZHVjdC1uYW1lLFxuLm1vZGFsLXJlY29tZW5kYXRpb25zIC5tb2RhbC1ib2R5IC5wcm9kdWN0LWFkZGVkLWluZm8gLnByb2R1Y3QtZ3JvdXAge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG5cbi5yZWNvbW1lbmRhdGlvbnMtY29tcGxldGUgLnByb2R1Y3QtYWRkZWQtaW5mbyAucHJvZHVjdC1wcmljZSxcbi5tb2RhbC1yZWNvbWVuZGF0aW9ucyAubW9kYWwtYm9keSAucHJvZHVjdC1hZGRlZC1pbmZvIC5wcm9kdWN0LXByaWNlIHtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLnJlY29tbWVuZGF0aW9ucy1jb21wbGV0ZSAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnMgLnJlY29tbWVuZGF0aW9uLXRpdGxlLFxuLm1vZGFsLXJlY29tZW5kYXRpb25zIC5tb2RhbC1ib2R5IC5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucyAucmVjb21tZW5kYXRpb24tdGl0bGUge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuXG4ucmVjb21tZW5kYXRpb25zLWNvbXBsZXRlIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucyAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbixcbi5tb2RhbC1yZWNvbWVuZGF0aW9ucyAubW9kYWwtYm9keSAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnMgLnByb2R1Y3QtcmVjb21tZW5kYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0zeCk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1zcGFjaW5nLTN4KSArIDRweCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAucmVjb21tZW5kYXRpb25zLWNvbXBsZXRlIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucyAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAubW9kYWwtcmVjb21lbmRhdGlvbnMgLm1vZGFsLWJvZHkgLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMngpOyB9XG4gIC5yZWNvbW1lbmRhdGlvbnMtY29tcGxldGUgLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9uLXRpdGxlLFxuICAubW9kYWwtcmVjb21lbmRhdGlvbnMgLm1vZGFsLWJvZHkgLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9uLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyB9XG4gIC5yZWNvbW1lbmRhdGlvbnMtY29tcGxldGUgLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9uLWRlc2MsXG4gIC5tb2RhbC1yZWNvbWVuZGF0aW9ucyAubW9kYWwtYm9keSAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnMgLnByb2R1Y3QtcmVjb21tZW5kYXRpb24tZGVzYyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucmVjb21tZW5kYXRpb25zLWNvbXBsZXRlIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucyAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbiAuZWwtbGVmdCxcbiAgLm1vZGFsLXJlY29tZW5kYXRpb25zIC5tb2RhbC1ib2R5IC5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucyAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbiAuZWwtbGVmdCB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA0cHg7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5YWJiM2E7IH1cbiAgLnJlY29tbWVuZGF0aW9ucy1jb21wbGV0ZSAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnMgLnByb2R1Y3QtcmVjb21tZW5kYXRpb24tZm9vdGVyLFxuICAubW9kYWwtcmVjb21lbmRhdGlvbnMgLm1vZGFsLWJvZHkgLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9uLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC5yZWNvbW1lbmRhdGlvbnMtY29tcGxldGUgLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9uLWFjdGlvbnMsXG4gIC5tb2RhbC1yZWNvbWVuZGF0aW9ucyAubW9kYWwtYm9keSAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnMgLnByb2R1Y3QtcmVjb21tZW5kYXRpb24tYWN0aW9ucyB7XG4gICAgb3JkZXI6IDE7IH1cbiAgICAucmVjb21tZW5kYXRpb25zLWNvbXBsZXRlIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucyAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbi1hY3Rpb25zIC5idG4tYWRkLFxuICAgIC5tb2RhbC1yZWNvbWVuZGF0aW9ucyAubW9kYWwtYm9keSAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnMgLnByb2R1Y3QtcmVjb21tZW5kYXRpb24tYWN0aW9ucyAuYnRuLWFkZCB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAucmVjb21tZW5kYXRpb25zLWNvbXBsZXRlIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucyAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbi1wcmljZSxcbiAgLm1vZGFsLXJlY29tZW5kYXRpb25zIC5tb2RhbC1ib2R5IC5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucyAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbi1wcmljZSB7XG4gICAgb3JkZXI6IDI7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTsgfVxuICAgIC5yZWNvbW1lbmRhdGlvbnMtY29tcGxldGUgLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zIC5wcm9kdWN0LXJlY29tbWVuZGF0aW9uLXByaWNlIGg0LFxuICAgIC5tb2RhbC1yZWNvbWVuZGF0aW9ucyAubW9kYWwtYm9keSAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnMgLnByb2R1Y3QtcmVjb21tZW5kYXRpb24tcHJpY2UgaDQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4jbW9kYWxHZW5lcmF0ZVBhc3N3b3JkIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgI21vZGFsR2VuZXJhdGVQYXNzd29yZC5zaG93IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cblxuLnBhZ2UtdXNlci1zZWN1cml0eSAubW9kYWwgLmZvcm0taG9yaXpvbnRhbCAuZm9ybS1ncm91cCBbY2xhc3MqPWNvbC1zbV0ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZsZXg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICNtb2RhbEdlbmVyYXRlUGFzc3dvcmQgLmNvcHktdG8tY2xpcGJvYXJkIHtcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAubW9kYWwtcmVjb21lbmRhdGlvbnMgLm1vZGFsLWRpYWxvZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubW9kYWwtcmVjb21lbmRhdGlvbnMgLm1vZGFsLWRpYWxvZyAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnMge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1vZGFsLXJlY29tZW5kYXRpb25zIC5wcm9kdWN0LWFkZGVkLWljb24ge1xuICAgIG1pbi13aWR0aDogNTZweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAjbW9kYWxHZW5lcmF0ZVBhc3N3b3JkIC5jb3B5LXRvLWNsaXBib2FyZCB7XG4gICAgbWFyZ2luLXRvcDogMTJweDsgfVxuICAjbW9kYWxHZW5lcmF0ZVBhc3N3b3JkIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiB2YXIoLS1tb2RhbC1tZCk7IH1cbiAgI21vZGFsR2VuZXJhdGVQYXNzd29yZCBsYWJlbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzOTlweCkge1xuICAjbW9kYWxHZW5lcmF0ZVBhc3N3b3JkIC5jb2wtbWQtOC5vZmZzZXQtbWQtNCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgI21vZGFsR2VuZXJhdGVQYXNzd29yZCAuY29sLW1kLTgub2Zmc2V0LW1kLTQgLmNvcHktdG8tY2xpcGJvYXJkIHtcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICNtb2RhbEdlbmVyYXRlUGFzc3dvcmQgLm1vZGFsLWZvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi10b3A6IDhweDsgfVxuICAgICNtb2RhbEdlbmVyYXRlUGFzc3dvcmQgLm1vZGFsLWZvb3RlciAuYnRuIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgI21vZGFsR2VuZXJhdGVQYXNzd29yZCAubW9kYWwtZm9vdGVyIC5idG4gKyAuYnRuIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4OyB9IH1cblxuLm1vZGFsLWZvb3RlciB7XG4gIHBhZGRpbmc6IHZhcigtLW1vZGFsLWZvb3Rlci1wYWRkaW5nKTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLW1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLW1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7IH1cbiAgLm1vZGFsLWZvb3Rlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLm1vZGFsLWZvb3RlciA+IC5idG4ge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuKTsgfVxuXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgd2lkdGg6IHZhcigtLW1vZGFsLW1kKTtcbiAgICBtYXJnaW46IHZhcigtLW1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCkgYXV0bzsgfVxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLW1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlLW1heC1oZWlnaHQtc20pOyB9XG4gICAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHZhcigtLW1vZGFsLWNvbnRlbnQtbWluLWhlaWdodC1zbSk7IH1cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogdmFyKC0tbW9kYWwtZGlhbG9nLWNlbnRlcmVkLW1pbi1oZWlnaHQtc20pOyB9XG4gICAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZDo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogdmFyKC0tbW9kYWwtZGlhbG9nLWNlbnRlcmVkLWJlZm9yZS1oZWlnaHQtc20pO1xuICAgICAgaGVpZ2h0OiBtaW4tY29udGVudDsgfVxuICAubW9kYWwtc20gLm1vZGFsLWRpYWxvZyB7XG4gICAgd2lkdGg6IHZhcigtLW1vZGFsLXNtKTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubW9kYWwtbGcgLm1vZGFsLWRpYWxvZyB7XG4gICAgd2lkdGg6IHZhcigtLW1vZGFsLWxnKTsgfSB9XG5cbi5mYWRlLnNob3cge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLm1vZGFsLXhsIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiB2YXIoLS1tb2RhbC14bCk7IH0gfVxuXG4jbWctd3JhcHBlciAubW9kYWwuc2hvdzpub3QoI21vZGFsLWlwKSxcbi5tZy13cmFwcGVyIC5tb2RhbC5zaG93Om5vdCgjbW9kYWwtaXApIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4ubW9kYWwuY2xpZW50QWxlcnRNb2RhbCAubW9kYWwtdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTR4KTsgfVxuXG4udG9vbHRpcCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLXppbmRleC10b29sdGlwKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgZm9udC1zaXplOiB2YXIoLS10b29sdGlwLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG4gIHRyYW5zaXRpb246IHZhcigtLXNob3ctYW5pbWF0aW9uKTsgfVxuICAudG9vbHRpcC5zaG93IHtcbiAgICBvcGFjaXR5OiB2YXIoLS10b29sdGlwLW9wYWNpdHkpOyB9XG4gIC50b29sdGlwIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgfVxuICAgIC50b29sdGlwIC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuXG4uYnMtdG9vbHRpcC10b3AsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgcGFkZGluZzogdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpIDA7IH1cbiAgLmJzLXRvb2x0aXAtdG9wIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0gLmFycm93IHtcbiAgICBib3R0b206IDA7IH1cbiAgICAuYnMtdG9vbHRpcC10b3AgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpLzIgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpOyB9XG5cbi5icy10b29sdGlwLXJpZ2h0LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgcGFkZGluZzogMCB2YXIoLS10b29sdGlwLWFycm93LWhlaWdodCk7IH1cbiAgLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7IH1cbiAgICAuYnMtdG9vbHRpcC1yaWdodCAuYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSAuYXJyb3c6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkvMiB2YXIoLS10b29sdGlwLWFycm93LWhlaWdodCkgdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkvMiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS10b29sdGlwLWFycm93LWNvbG9yKTsgfVxuXG4uYnMtdG9vbHRpcC1ib3R0b20sIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgcGFkZGluZzogdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpIDA7IH1cbiAgLmJzLXRvb2x0aXAtYm90dG9tIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0gLmFycm93IHtcbiAgICB0b3A6IDA7IH1cbiAgICAuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMCB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKS8yIHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpOyB9XG5cbi5icy10b29sdGlwLWxlZnQsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gIHBhZGRpbmc6IDAgdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpOyB9XG4gIC5icy10b29sdGlwLWxlZnQgLmFycm93LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7IH1cbiAgICAuYnMtdG9vbHRpcC1sZWZ0IC5hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gLmFycm93OjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkvMiAwIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpLzIgdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpOyB9XG5cbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS10b29sdGlwLW1heC13aWR0aCk7XG4gIGNvbG9yOiB2YXIoLS10b29sdGlwLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10b29sdGlwLWJnKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXRvb2x0aXAtYm94LXNoYWRvdyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xuICBwYWRkaW5nOiAxMHB4IDEycHg7IH1cblxuLyogUlRMICovXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgaHRtbFtkaXI9XCJydGxcIl0gLnBhZ2UtZG9tYWlucmVnaXN0ZXIgLnRvb2x0aXAge1xuICAgIGxlZnQ6IC0yOTBweCAhaW1wb3J0YW50OyB9IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLnRvb2x0aXAge1xuICB3aWxsLWNoYW5nZTogdW5zZXQgIWltcG9ydGFudDsgfVxuICAubGFnb20tZnV0dXJpc3RpYyAudG9vbHRpcCAuYXJyb3c6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5sYWdvbS1mdXR1cmlzdGljIC50b29sdGlwIC50b29sdGlwLWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1iZyk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDZweCAxMHB4OyB9XG4gICAgLmxhZ29tLWZ1dHVyaXN0aWMgLnRvb2x0aXAgLnRvb2x0aXAtaW5uZXI6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBvcGFjaXR5OiAwLjg7IH1cblxuLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0temluZGV4LXBvcG92ZXIpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiB2YXIoLS1wb3BvdmVyLW1heC13aWR0aCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcG9wb3Zlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1sZyk7XG4gIHRyYW5zaXRpb246IHZhcigtLXNob3ctYW5pbWF0aW9uKTsgfVxuICAucG9wb3ZlciAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgbWFyZ2luOiAwIHZhcigtLXBvcG92ZXItYm9yZGVyLXJhZGl1cyk7IH1cbiAgICAucG9wb3ZlciAuYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIgLmFycm93OjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuICAucG9wb3Zlci50b3Age1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNnB4KTsgfVxuICAgIC5wb3BvdmVyLnRvcC5pbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAucG9wb3Zlci5yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yNnB4OyB9XG4gIC5wb3BvdmVyLmJvdHRvbSB7XG4gICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNnB4KTsgfVxuICAgIC5wb3BvdmVyLmJvdHRvbS5pbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAucG9wb3Zlci5sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogLTI2cHg7IH1cblxuLmJzLXBvcG92ZXItdG9wLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgfVxuICAuYnMtcG9wb3Zlci10b3AgPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdID4gLmFycm93IHtcbiAgICBib3R0b206IGNhbGModmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpIC0gdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkpOyB9XG4gICAgLmJzLXBvcG92ZXItdG9wID4gLmFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdID4gLmFycm93OjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCkgdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkvMiAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7IH1cbiAgICAuYnMtcG9wb3Zlci10b3AgPiAuYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInRvcFwiXSA+IC5hcnJvdzo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpIHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpLzIgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctY29sb3IpOyB9XG5cbi5icy1wb3BvdmVyLXJpZ2h0LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgfVxuICAuYnMtcG9wb3Zlci1yaWdodCA+IC5hcnJvdywgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSA+IC5hcnJvdyB7XG4gICAgbGVmdDogLTIwcHg7XG4gICAgd2lkdGg6IHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIG1hcmdpbjogdmFyKC0tcG9wb3Zlci1ib3JkZXItcmFkaXVzKSAwOyB9XG4gICAgLmJzLXBvcG92ZXItcmlnaHQgPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpIHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KSB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWNvbG9yKTsgfVxuICAgIC5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSA+IC5hcnJvdzo6YWZ0ZXIge1xuICAgICAgbGVmdDogdmFyKC0tcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKSB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCkgdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7IH1cblxuLmJzLXBvcG92ZXItYm90dG9tLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgfVxuICAuYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdID4gLmFycm93IHtcbiAgICB0b3A6IGNhbGModmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpIC0gdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkpOyB9XG4gICAgLmJzLXBvcG92ZXItYm90dG9tID4gLmFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdID4gLmFycm93OjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpLzIgdmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpIHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpLzI7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWNvbG9yKTsgfVxuICAgIC5icy1wb3BvdmVyLWJvdHRvbSA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdID4gLmFycm93OjphZnRlciB7XG4gICAgICB0b3A6IHZhcigtLXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci13aWR0aDogMCB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKS8yIHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KSB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKS8yO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1jb2xvcik7IH1cbiAgLmJzLXBvcG92ZXItYm90dG9tIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiAtdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkvMjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpIHNvbGlkIHZhcigtLXBvcG92ZXItaGVhZGVyLWJnKTsgfVxuXG4uYnMtcG9wb3Zlci1sZWZ0LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgfVxuICAuYnMtcG9wb3Zlci1sZWZ0ID4gLmFycm93LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBjYWxjKHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KSAtIHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpKTtcbiAgICB3aWR0aDogdmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgbWFyZ2luOiB2YXIoLS1wb3BvdmVyLWJvcmRlci1yYWRpdXMpIDA7IH1cbiAgICAuYnMtcG9wb3Zlci1sZWZ0ID4gLmFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSA+IC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKS8yIDAgdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkvMiB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCk7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7IH1cbiAgICAuYnMtcG9wb3Zlci1sZWZ0ID4gLmFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJsZWZ0XCJdID4gLmFycm93OjphZnRlciB7XG4gICAgICByaWdodDogdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpLzIgMCB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKS8yIHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LWNvbG9yKTsgfVxuXG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkpIHZhcigtLXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogdmFyKC0tcG9wb3Zlci1oZWFkZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1wb3BvdmVyLWhlYWRlci1ib3JkZXItYm90dG9tLWNvbG9yKTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7IH1cbiAgLnBvcG92ZXItaGVhZGVyOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS1wb3BvdmVyLWJvZHktcGFkZGluZy15KSB2YXIoLS1wb3BvdmVyLWJvZHktcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLXBvcG92ZXItYm9keS1jb2xvcik7IH1cblxuLnBvcG92ZXItdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDE3cHggMjRweDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcG9wb3Zlci10aXRsZS1iZyk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSktMSB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpLTEgMCAwOyB9XG5cbi5wb3BvdmVyLWNvbnRlbnQge1xuICBwYWRkaW5nOiAxOHB4IDI0cHg7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG5cbi5wb3BvdmVyIC5idG4tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiA2cHg7IH1cbiAgLnBvcG92ZXIgLmJ0bi1ncm91cCAuYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSAhaW1wb3J0YW50OyB9XG4gICAgLnBvcG92ZXIgLmJ0bi1ncm91cCAuYnRuICsgLmJ0biB7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgIC5wb3BvdmVyIC5idG4tZ3JvdXAgLmJ0biBpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogQXJyb3dzICovXG4vKi5hcnJvdyBpcyBvdXRlciwgLmFycm93OmFmdGVyIGlzIGlubmVyKi9cbi5wb3BvdmVyID4gLmFycm93LCAucG9wb3ZlciA+IC5hcnJvdzphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7IH1cblxuLnBvcG92ZXIgPiAuYXJyb3c6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuXG4ucG9wb3ZlciA+IC5hcnJvdyB7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7IH1cblxuLnBvcG92ZXIgPiAuYXJyb3c6YmVmb3JlLFxuLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6IHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi5wb3BvdmVyLnRvcCA+IC5hcnJvdyB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGgpO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yKTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7XG4gIGJvdHRvbTogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7IH1cbiAgLnBvcG92ZXIudG9wID4gLmFycm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBib3R0b206IDFweDtcbiAgICBtYXJnaW4tbGVmdDogLXZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1jb2xvcik7IH1cbiAgLnBvcG92ZXIudG9wID4gLmFycm93OmJlZm9yZSB7XG4gICAgYm90dG9tOiAtOXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwcHg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3KTtcbiAgICB3aWR0aDogMHB4O1xuICAgIGJvcmRlci13aWR0aDogMTBweDtcbiAgICB6LWluZGV4OiAtMzsgfVxuXG4ucG9wb3Zlci5yaWdodCA+IC5hcnJvdyB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLXdpZHRoKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3IpO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3IpOyB9XG4gIC5wb3BvdmVyLnJpZ2h0ID4gLmFycm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBsZWZ0OiAxcHg7XG4gICAgYm90dG9tOiAtdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LWNvbG9yKTsgfVxuICAucG9wb3Zlci5yaWdodCA+IC5hcnJvdzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGxlZnQ6IDFweDtcbiAgICBib3R0b206IC12YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctY29sb3IpOyB9XG5cbi5wb3BvdmVyLmJvdHRvbSA+IC5hcnJvdyB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGgpO1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yKTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7XG4gIHRvcDogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7IH1cbiAgLnBvcG92ZXIuYm90dG9tID4gLmFycm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICB0b3A6IDFweDtcbiAgICBtYXJnaW4tbGVmdDogLXZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1jb2xvcik7IH1cbiAgLnBvcG92ZXIuYm90dG9tID4gLmFycm93OmJlZm9yZSB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgdG9wOiAxcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC12YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctY29sb3IpOyB9XG5cbi5wb3BvdmVyLmxlZnQgPiAuYXJyb3cge1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGgpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLXdpZHRoKTtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcik7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWNvbG9yKTsgfVxuICAucG9wb3Zlci5sZWZ0ID4gLmFycm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICByaWdodDogMXB4O1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1jb2xvcik7XG4gICAgYm90dG9tOiAtdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7IH1cbiAgLnBvcG92ZXIubGVmdCA+IC5hcnJvdzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHJpZ2h0OiAxcHg7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LWNvbG9yKTtcbiAgICBib3R0b206IC12YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTsgfVxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15OyB9XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmNhcm91c2VsLWlubmVyOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjsgfVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lOyB9IH1cbiAgLmNhcm91c2VsLWl0ZW0gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cblxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IG5vbmU7IH1cblxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgei1pbmRleDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gICAgLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogdmFyKC0tY2Fyb3VzZWwtY29udHJvbC13aWR0aCk7XG4gIGNvbG9yOiB2YXIoLS1jYXJvdXNlbC1jb250cm9sLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiB2YXIoLS1jYXJvdXNlbC1jb250cm9sLW9wYWNpdHkpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2OmhvdmVyLCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2OmZvY3VzLXZpc2libGUsIC5jYXJvdXNlbC1jb250cm9sLXByZXY6Zm9jdXMsXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQ6aG92ZXIsXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQ6Zm9jdXMtdmlzaWJsZSxcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNhcm91c2VsLWNvbnRyb2wtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6IHZhcigtLWNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eSk7IH1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgwLCAwLCAwLCAwLjI1KSwgcmdiYSgwLCAwLCAwLCAwLjAwMSkpOyB9XG5cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAwLjI1KSwgcmdiYSgwLCAwLCAwLCAwLjAwMSkpOyB9XG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IHZhcigtLWNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aCk7XG4gIGhlaWdodDogdmFyKC0tY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoKTtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDsgfVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7IH1cblxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpOyB9XG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jYXJvdXNlbC1jb250cm9sLXdpZHRoKTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWNhcm91c2VsLWNvbnRyb2wtd2lkdGgpO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogdmFyKC0tY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLWNhcm91c2VsLWluZGljYXRvci1oZWlnaHQpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcik7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWNhcm91c2VsLWluZGljYXRvci1zcGFjZXIpO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmcpO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyLXRvcDogdmFyKC0tY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTAwJS12YXIoLS1jYXJvdXNlbC1jYXB0aW9uLXdpZHRoKS8yO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6IDEwMCUtdmFyKC0tY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkvMjtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6IHZhcigtLWNhcm91c2VsLWNhcHRpb24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmFsaWduLWJhc2VsaW5lIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLXRleHQtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLXRleHQtdG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cblxuLmJnLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KSAhaW1wb3J0YW50OyB9XG5cbmEuYmctcHJpbWFyeTpob3ZlciwgYS5iZy1wcmltYXJ5OmZvY3VzLXZpc2libGUsIGEuYmctcHJpbWFyeTpmb2N1cyxcbmJ1dHRvbi5iZy1wcmltYXJ5OmhvdmVyLFxuYnV0dG9uLmJnLXByaW1hcnk6Zm9jdXMtdmlzaWJsZSxcbmJ1dHRvbi5iZy1wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1kYXJrZXIpIHRydWUgIWltcG9ydGFudDsgfVxuXG4uYmctc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc2Vjb25kYXJ5KSAhaW1wb3J0YW50OyB9XG5cbmEuYmctc2Vjb25kYXJ5OmhvdmVyLCBhLmJnLXNlY29uZGFyeTpmb2N1cy12aXNpYmxlLCBhLmJnLXNlY29uZGFyeTpmb2N1cyxcbmJ1dHRvbi5iZy1zZWNvbmRhcnk6aG92ZXIsXG5idXR0b24uYmctc2Vjb25kYXJ5OmZvY3VzLXZpc2libGUsXG5idXR0b24uYmctc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc2Vjb25kYXJ5LWRhcmtlcikgdHJ1ZSAhaW1wb3J0YW50OyB9XG5cbi5iZy1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2VzcykgIWltcG9ydGFudDsgfVxuXG5hLmJnLXN1Y2Nlc3M6aG92ZXIsIGEuYmctc3VjY2Vzczpmb2N1cy12aXNpYmxlLCBhLmJnLXN1Y2Nlc3M6Zm9jdXMsXG5idXR0b24uYmctc3VjY2Vzczpob3ZlcixcbmJ1dHRvbi5iZy1zdWNjZXNzOmZvY3VzLXZpc2libGUsXG5idXR0b24uYmctc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MtZGFya2VyKSB0cnVlICFpbXBvcnRhbnQ7IH1cblxuLmJnLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvKSAhaW1wb3J0YW50OyB9XG5cbmEuYmctaW5mbzpob3ZlciwgYS5iZy1pbmZvOmZvY3VzLXZpc2libGUsIGEuYmctaW5mbzpmb2N1cyxcbmJ1dHRvbi5iZy1pbmZvOmhvdmVyLFxuYnV0dG9uLmJnLWluZm86Zm9jdXMtdmlzaWJsZSxcbmJ1dHRvbi5iZy1pbmZvOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtaW5mby1kYXJrZXIpIHRydWUgIWltcG9ydGFudDsgfVxuXG4uYmctd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmcpICFpbXBvcnRhbnQ7IH1cblxuYS5iZy13YXJuaW5nOmhvdmVyLCBhLmJnLXdhcm5pbmc6Zm9jdXMtdmlzaWJsZSwgYS5iZy13YXJuaW5nOmZvY3VzLFxuYnV0dG9uLmJnLXdhcm5pbmc6aG92ZXIsXG5idXR0b24uYmctd2FybmluZzpmb2N1cy12aXNpYmxlLFxuYnV0dG9uLmJnLXdhcm5pbmc6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nLWRhcmtlcikgdHJ1ZSAhaW1wb3J0YW50OyB9XG5cbi5iZy1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXIpICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1kYW5nZXI6aG92ZXIsIGEuYmctZGFuZ2VyOmZvY3VzLXZpc2libGUsIGEuYmctZGFuZ2VyOmZvY3VzLFxuYnV0dG9uLmJnLWRhbmdlcjpob3ZlcixcbmJ1dHRvbi5iZy1kYW5nZXI6Zm9jdXMtdmlzaWJsZSxcbmJ1dHRvbi5iZy1kYW5nZXI6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItZGFya2VyKSB0cnVlICFpbXBvcnRhbnQ7IH1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlciB7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWJhc2UpIHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3A6IHZhcigtLWJvcmRlci13aWR0aC1iYXNlKSBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci1yaWdodCB7XG4gIGJvcmRlci1yaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLWJhc2UpIHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aC1iYXNlKSBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci1sZWZ0IHtcbiAgYm9yZGVyLWxlZnQ6IHZhcigtLWJvcmRlci13aWR0aC1iYXNlKSBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci10b3AtMCB7XG4gIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLXJpZ2h0LTAge1xuICBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLWJvdHRvbS0wIHtcbiAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItbGVmdC0wIHtcbiAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLXByaW1hcnkge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci1zZWNvbmRhcnkge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXNlY29uZGFyeSkgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLXN1Y2Nlc3Mge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXN1Y2Nlc3MpICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci1pbmZvIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvKSAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItd2FybmluZyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtd2FybmluZykgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLWRhbmdlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyKSAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pICFpbXBvcnRhbnQ7IH1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpICFpbXBvcnRhbnQ7IH1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSAhaW1wb3J0YW50OyB9XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgIWltcG9ydGFudDsgfVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpICFpbXBvcnRhbnQ7IH1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSAhaW1wb3J0YW50OyB9XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZykgIWltcG9ydGFudDsgfVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDsgfVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcm91bmRlZC1waWxsKSAhaW1wb3J0YW50OyB9XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IH1cblxuLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjsgfVxuXG4uZC1ub25lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5kLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9XG5cbi5kLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XG5cbi5kLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uZC10YWJsZSB7XG4gIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cblxuLmQtdGFibGUtcm93IHtcbiAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cblxuLmQtdGFibGUtY2VsbCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4uZC1mbGV4IHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG5cbi5kLWlubGluZS1mbGV4IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmQtc20tbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5kLXNtLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgLmQtc20taW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1zbS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1zbS10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAuZC1zbS10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC5kLXNtLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAuZC1zbS1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLmQtc20taW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmQtbWQtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5kLW1kLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgLmQtbWQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1tZC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1tZC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAuZC1tZC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC5kLW1kLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAuZC1tZC1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLmQtbWQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmQtbGctbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5kLWxnLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgLmQtbGctaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1sZy1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1sZy10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAuZC1sZy10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC5kLWxnLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAuZC1sZy1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLmQtbGctaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTMyMHB4KSB7XG4gIC5kLXhsLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC14bC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9XG4gIC5kLXhsLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmQteGwtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmQteGwtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgLmQteGwtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAuZC14bC10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgLmQteGwtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG4gIC5kLXhsLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50IHtcbiAgLmQtcHJpbnQtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH0gfVxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5lbWJlZC1yZXNwb25zaXZlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLmVtYmVkLXJlc3BvbnNpdmUgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLFxuICAuZW1iZWQtcmVzcG9uc2l2ZSBlbWJlZCxcbiAgLmVtYmVkLXJlc3BvbnNpdmUgb2JqZWN0LFxuICAuZW1iZWQtcmVzcG9uc2l2ZSB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwOyB9XG5cbi5lbWJlZC1yZXNwb25zaXZlLTIxYnk5OjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNDIuODU3MTQlOyB9XG5cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5OjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9XG5cbi5lbWJlZC1yZXNwb25zaXZlLTRieTM6OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA3NSU7IH1cblxuLmVtYmVkLXJlc3BvbnNpdmUtMWJ5MTo6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDEwMCU7IH1cblxuLmZsZXgtcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG5cbi5mbGV4LWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuXG4uZmxleC1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbi5mbGV4LWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuLmZsZXgtd3JhcCB7XG4gIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG5cbi5mbGV4LW5vd3JhcCB7XG4gIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cblxuLmZsZXgtd3JhcC1yZXZlcnNlIHtcbiAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4uZmxleC1maWxsIHtcbiAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuXG4uZmxleC1ncm93LTAge1xuICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuXG4uZmxleC1ncm93LTEge1xuICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuXG4uZmxleC1zaHJpbmstMCB7XG4gIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cblxuLmZsZXgtc2hyaW5rLTEge1xuICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbi5qdXN0aWZ5LWNvbnRlbnQtc3RhcnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuXG4uanVzdGlmeS1jb250ZW50LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuXG4uanVzdGlmeS1jb250ZW50LWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cblxuLmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cblxuLmp1c3RpZnktY29udGVudC1hcm91bmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1pdGVtcy1zdGFydCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWl0ZW1zLWVuZCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1pdGVtcy1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWl0ZW1zLWJhc2VsaW5lIHtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWl0ZW1zLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1jb250ZW50LXN0YXJ0IHtcbiAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1jb250ZW50LWVuZCB7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWNvbnRlbnQtY2VudGVyIHtcbiAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWNvbnRlbnQtYmV0d2VlbiB7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tY29udGVudC1hcm91bmQge1xuICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tY29udGVudC1zdHJldGNoIHtcbiAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1zZWxmLWF1dG8ge1xuICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLXNlbGYtc3RhcnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLXNlbGYtZW5kIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tc2VsZi1jZW50ZXIge1xuICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tc2VsZi1iYXNlbGluZSB7XG4gIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZsZXgtc20tcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtc20tY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtc20tcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXNtLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAuZmxleC1zbS13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAuZmxleC1zbS1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtc20td3JhcC1yZXZlcnNlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXNtLWZpbGwge1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtc20tZ3Jvdy0wIHtcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAuZmxleC1zbS1ncm93LTEge1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXNtLXNocmluay0wIHtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXNtLXNocmluay0xIHtcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LXNtLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtc20tc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLXNtLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLXNtLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy1zbS1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLXNtLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1zbS1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtc20tY2VudGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1zbS1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtc20tYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtc20tYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXNtLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtc20tZW5kIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXNtLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtc20tYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtc20tc3RyZXRjaCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mbGV4LW1kLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LW1kLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LW1kLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAuZmxleC1tZC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbWQtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbWQtbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LW1kLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAuZmxleC1tZC1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LW1kLWdyb3ctMCB7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbWQtZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAuZmxleC1tZC1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAuZmxleC1tZC1zaHJpbmstMSB7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LW1kLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy1tZC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy1tZC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtbWQtYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy1tZC1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LW1kLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LW1kLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLW1kLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1tZC1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLW1kLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1tZC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLW1kLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZmxleC1sZy1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAuZmxleC1sZy1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAuZmxleC1sZy1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbGctY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LWxnLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LWxnLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAuZmxleC1sZy13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbGctZmlsbCB7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAuZmxleC1sZy1ncm93LTAge1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LWxnLWdyb3ctMSB7XG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbGctc2hyaW5rLTAge1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbGctc2hyaW5rLTEge1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LWxnLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy1sZy1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtbGctZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtbGctY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLWxnLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtbGctc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1sZy1zdGFydCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LWxnLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1sZy1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LWxnLWJldHdlZW4ge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1sZy1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1sZy1hdXRvIHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtbGctc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1sZy1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtbGctY2VudGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1sZy1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1sZy1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTMyMHB4KSB7XG4gIC5mbGV4LXhsLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXhsLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXhsLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAuZmxleC14bC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgteGwtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgteGwtbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXhsLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAuZmxleC14bC1maWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXhsLWdyb3ctMCB7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgteGwtZ3Jvdy0xIHtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAuZmxleC14bC1zaHJpbmstMCB7XG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAuZmxleC14bC1zaHJpbmstMSB7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LXhsLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC14bC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy14bC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMteGwtYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy14bC1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQteGwtZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXhsLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXhsLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQteGwtc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXhsLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi14bC1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXhsLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi14bC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXhsLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfSB9XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mbG9hdC1zbS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC5mbG9hdC1zbS1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLmZsb2F0LXNtLW5vbmUge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZsb2F0LW1kLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgLmZsb2F0LW1kLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAuZmxvYXQtbWQtbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZmxvYXQtbGctbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAuZmxvYXQtbGctcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gIC5mbG9hdC1sZy1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEzMjBweCkge1xuICAuZmxvYXQteGwtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAuZmxvYXQteGwtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gIC5mbG9hdC14bC1ub25lIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnVzZXItc2VsZWN0LWFsbCB7XG4gIHVzZXItc2VsZWN0OiBhbGwgIWltcG9ydGFudDsgfVxuXG4udXNlci1zZWxlY3QtYXV0byB7XG4gIHVzZXItc2VsZWN0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLnVzZXItc2VsZWN0LW5vbmUge1xuICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5vdmVyZmxvdy1hdXRvIHtcbiAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4ub3ZlcmZsb3ctaGlkZGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG5cbi5vdmVyZmxvdy14LWhpZGRlbiB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1zdGF0aWMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7IH1cblxuLnBvc2l0aW9uLXJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7IH1cblxuLnBvc2l0aW9uLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IH1cblxuLnBvc2l0aW9uLWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7IH1cblxuLnBvc2l0aW9uLXN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDsgfVxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiB2YXIoLS16aW5kZXgtZml4ZWQpOyB9XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IHZhcigtLXppbmRleC1maXhlZCk7IH1cblxuQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gIC5zdGlja3ktdG9wIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtc3RpY2t5KTsgfSB9XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7IH1cblxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxuLnNoYWRvdy1zbSB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctc20pICFpbXBvcnRhbnQ7IH1cblxuLnNoYWRvdyB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3cpICFpbXBvcnRhbnQ7IH1cblxuLnNoYWRvdy1sZyB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGcpICFpbXBvcnRhbnQ7IH1cblxuLnNoYWRvdy1ub25lIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi53LTI1IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi53LTUwIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9XG5cbi53LTc1IHtcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50OyB9XG5cbi53LTEwMCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLnctYXV0byB7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLmgtMjUge1xuICBoZWlnaHQ6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi5oLTUwIHtcbiAgaGVpZ2h0OiA1MCUgIWltcG9ydGFudDsgfVxuXG4uaC03NSB7XG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7IH1cblxuLmgtMTAwIHtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLmgtYXV0byB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5tdy0xMDAge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4ubWgtMTAwIHtcbiAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi5taW4tdnctMTAwIHtcbiAgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XG5cbi5taW4tdmgtMTAwIHtcbiAgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuXG4udnctMTAwIHtcbiAgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cblxuLnZoLTEwMCB7XG4gIGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuXG4ubS0wIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cblxuLm10LTAsXG4ubXktMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ubXItMCxcbi5teC0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm1iLTAsXG4ubXktMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ubWwtMCxcbi5teC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubS0xIHtcbiAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTEsXG4ubXktMSB7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItMSxcbi5teC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTEsXG4ubXktMSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMSxcbi5teC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubS0yIHtcbiAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMixcbi5teS0yIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTIsXG4ubXgtMiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTIsXG4ubXktMiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0yLFxuLm14LTIge1xuICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tMyB7XG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0zLFxuLm15LTMge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTMsXG4ubXgtMyB7XG4gIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0zLFxuLm15LTMge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTMsXG4ubXgtMyB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tNCB7XG4gIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTQsXG4ubXktNCB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci00LFxuLm14LTQge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi00LFxuLm15LTQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNCxcbi5teC00IHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLTUge1xuICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtNSxcbi5teS01IHtcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tci01LFxuLm14LTUge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNSxcbi5teS01IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC01LFxuLm14LTUge1xuICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wLTAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLnB0LTAsXG4ucHktMCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLnByLTAsXG4ucHgtMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4ucGItMCxcbi5weS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ucGwtMCxcbi5weC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnAtMSB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHQtMSxcbi5weS0xIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMSxcbi5weC0xIHtcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0xLFxuLnB5LTEge1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0xLFxuLnB4LTEge1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucC0yIHtcbiAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTIsXG4ucHktMiB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMixcbi5weC0yIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTIsXG4ucHktMiB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMixcbi5weC0yIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucC0zIHtcbiAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0zLFxuLnB5LTMge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wci0zLFxuLnB4LTMge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTMsXG4ucHktMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTMsXG4ucHgtMyB7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wLTQge1xuICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHQtNCxcbi5weS00IHtcbiAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wci00LFxuLnB4LTQge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItNCxcbi5weS00IHtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC00LFxuLnB4LTQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wLTUge1xuICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTUsXG4ucHktNSB7XG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTUsXG4ucHgtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItNSxcbi5weS01IHtcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtNSxcbi5weC01IHtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tbjEge1xuICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LW4xLFxuLm15LW4xIHtcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItbjEsXG4ubXgtbjEge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLW4xLFxuLm15LW4xIHtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtbjEsXG4ubXgtbjEge1xuICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubS1uMiB7XG4gIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC1uMixcbi5teS1uMiB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItbjIsXG4ubXgtbjIge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItbjIsXG4ubXktbjIge1xuICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLW4yLFxuLm14LW4yIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubS1uMyB7XG4gIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtbjMsXG4ubXktbjMge1xuICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci1uMyxcbi5teC1uMyB7XG4gIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItbjMsXG4ubXktbjMge1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC1uMyxcbi5teC1uMyB7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLW40IHtcbiAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LW40LFxuLm15LW40IHtcbiAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci1uNCxcbi5teC1uNCB7XG4gIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi1uNCxcbi5teS1uNCB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtbjQsXG4ubXgtbjQge1xuICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLW41IHtcbiAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC1uNSxcbi5teS1uNSB7XG4gIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLW41LFxuLm14LW41IHtcbiAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi1uNSxcbi5teS1uNSB7XG4gIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLW41LFxuLm14LW41IHtcbiAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tYXV0byB7XG4gIG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5tdC1hdXRvLFxuLm15LWF1dG8ge1xuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLm1yLWF1dG8sXG4ubXgtYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5tYi1hdXRvLFxuLm15LWF1dG8ge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLm1sLWF1dG8sXG4ubXgtYXV0byB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tLXNtLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC5tdC1zbS0wLFxuICAubXktc20tMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5tci1zbS0wLFxuICAubXgtc20tMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXNtLTAsXG4gIC5teS1zbS0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXNtLTAsXG4gIC5teC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5tLXNtLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1zbS0xLFxuICAubXktc20tMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1zbS0xLFxuICAubXgtc20tMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXNtLTEsXG4gIC5teS1zbS0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXNtLTEsXG4gIC5teC1zbS0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLXNtLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXNtLTIsXG4gIC5teS1zbS0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItc20tMixcbiAgLm14LXNtLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXNtLTIsXG4gIC5teS1zbS0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwtc20tMixcbiAgLm14LXNtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1zbS0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDsgfVxuICAubXQtc20tMyxcbiAgLm15LXNtLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubXItc20tMyxcbiAgLm14LXNtLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1zbS0zLFxuICAubXktc20tMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1zbS0zLFxuICAubXgtc20tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubS1zbS00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1zbS00LFxuICAubXktc20tNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXNtLTQsXG4gIC5teC1zbS00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1zbS00LFxuICAubXktc20tNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXNtLTQsXG4gIC5teC1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tc20tNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXNtLTUsXG4gIC5teS1zbS01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXNtLTUsXG4gIC5teC1zbS01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubWItc20tNSxcbiAgLm15LXNtLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAubWwtc20tNSxcbiAgLm14LXNtLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAtc20tMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gIC5wdC1zbS0wLFxuICAucHktc20tMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAucHItc20tMCxcbiAgLnB4LXNtLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAucGItc20tMCxcbiAgLnB5LXNtLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXNtLTAsXG4gIC5weC1zbS0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAucC1zbS0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LXNtLTEsXG4gIC5weS1zbS0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1zbS0xLFxuICAucHgtc20tMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1zbS0xLFxuICAucHktc20tMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucGwtc20tMSxcbiAgLnB4LXNtLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXNtLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1zbS0yLFxuICAucHktc20tMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1zbS0yLFxuICAucHgtc20tMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXNtLTIsXG4gIC5weS1zbS0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXNtLTIsXG4gIC5weC1zbS0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXNtLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDsgfVxuICAucHQtc20tMyxcbiAgLnB5LXNtLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLXNtLTMsXG4gIC5weC1zbS0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXNtLTMsXG4gIC5weS1zbS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1zbS0zLFxuICAucHgtc20tMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAtc20tNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LXNtLTQsXG4gIC5weS1zbS00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLXNtLTQsXG4gIC5weC1zbS00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucGItc20tNCxcbiAgLnB5LXNtLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucGwtc20tNCxcbiAgLnB4LXNtLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAtc20tNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1zbS01LFxuICAucHktc20tNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucHItc20tNSxcbiAgLnB4LXNtLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucGItc20tNSxcbiAgLnB5LXNtLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXNtLTUsXG4gIC5weC1zbS01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubS1zbS1uMSB7XG4gICAgbWFyZ2luOiAtMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1zbS1uMSxcbiAgLm15LXNtLW4xIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1zbS1uMSxcbiAgLm14LXNtLW4xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXNtLW4xLFxuICAubXktc20tbjEge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXNtLW4xLFxuICAubXgtc20tbjEge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLXNtLW4yIHtcbiAgICBtYXJnaW46IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtc20tbjIsXG4gIC5teS1zbS1uMiB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1zbS1uMixcbiAgLm14LXNtLW4yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItc20tbjIsXG4gIC5teS1zbS1uMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1zbS1uMixcbiAgLm14LXNtLW4yIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLXNtLW4zIHtcbiAgICBtYXJnaW46IC0xcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXNtLW4zLFxuICAubXktc20tbjMge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXNtLW4zLFxuICAubXgtc20tbjMge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDsgfVxuICAubWItc20tbjMsXG4gIC5teS1zbS1uMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW0gIWltcG9ydGFudDsgfVxuICAubWwtc20tbjMsXG4gIC5teC1zbS1uMyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tc20tbjQge1xuICAgIG1hcmdpbjogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1zbS1uNCxcbiAgLm15LXNtLW40IHtcbiAgICBtYXJnaW4tdG9wOiAtMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXNtLW40LFxuICAubXgtc20tbjQge1xuICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1zbS1uNCxcbiAgLm15LXNtLW40IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXNtLW40LFxuICAubXgtc20tbjQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tc20tbjUge1xuICAgIG1hcmdpbjogLTNyZW0gIWltcG9ydGFudDsgfVxuICAubXQtc20tbjUsXG4gIC5teS1zbS1uNSB7XG4gICAgbWFyZ2luLXRvcDogLTNyZW0gIWltcG9ydGFudDsgfVxuICAubXItc20tbjUsXG4gIC5teC1zbS1uNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1zbS1uNSxcbiAgLm15LXNtLW41IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1zbS1uNSxcbiAgLm14LXNtLW41IHtcbiAgICBtYXJnaW4tbGVmdDogLTNyZW0gIWltcG9ydGFudDsgfVxuICAubS1zbS1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAubXQtc20tYXV0byxcbiAgLm15LXNtLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDsgfVxuICAubXItc20tYXV0byxcbiAgLm14LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tYi1zbS1hdXRvLFxuICAubXktc20tYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tbC1zbS1hdXRvLFxuICAubXgtc20tYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubS1tZC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAubXQtbWQtMCxcbiAgLm15LW1kLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubXItbWQtMCxcbiAgLm14LW1kLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5tYi1tZC0wLFxuICAubXktbWQtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5tbC1tZC0wLFxuICAubXgtbWQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubS1tZC0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbWQtMSxcbiAgLm15LW1kLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItbWQtMSxcbiAgLm14LW1kLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1tZC0xLFxuICAubXktbWQtMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1tZC0xLFxuICAubXgtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1tZC0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1tZC0yLFxuICAubXktbWQtMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLW1kLTIsXG4gIC5teC1tZC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1tZC0yLFxuICAubXktbWQtMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLW1kLTIsXG4gIC5teC1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbWQtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LW1kLTMsXG4gIC5teS1tZC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLW1kLTMsXG4gIC5teC1tZC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWItbWQtMyxcbiAgLm15LW1kLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbWQtMyxcbiAgLm14LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbWQtNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbWQtNCxcbiAgLm15LW1kLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1tZC00LFxuICAubXgtbWQtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItbWQtNCxcbiAgLm15LW1kLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1tZC00LFxuICAubXgtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLW1kLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1tZC01LFxuICAubXktbWQtNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1tZC01LFxuICAubXgtbWQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLW1kLTUsXG4gIC5teS1tZC01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLW1kLTUsXG4gIC5teC1tZC01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wLW1kLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAucHQtbWQtMCxcbiAgLnB5LW1kLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnByLW1kLTAsXG4gIC5weC1tZC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBiLW1kLTAsXG4gIC5weS1tZC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5wbC1tZC0wLFxuICAucHgtbWQtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnAtbWQtMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1tZC0xLFxuICAucHktbWQtMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucHItbWQtMSxcbiAgLnB4LW1kLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucGItbWQtMSxcbiAgLnB5LW1kLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLW1kLTEsXG4gIC5weC1tZC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucC1tZC0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHQtbWQtMixcbiAgLnB5LW1kLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHItbWQtMixcbiAgLnB4LW1kLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1tZC0yLFxuICAucHktbWQtMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1tZC0yLFxuICAucHgtbWQtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucC1tZC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LW1kLTMsXG4gIC5weS1tZC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1tZC0zLFxuICAucHgtbWQtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1tZC0zLFxuICAucHktbWQtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAucGwtbWQtMyxcbiAgLnB4LW1kLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLW1kLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1tZC00LFxuICAucHktbWQtNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1tZC00LFxuICAucHgtbWQtNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLW1kLTQsXG4gIC5weS1tZC00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLW1kLTQsXG4gIC5weC1tZC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLW1kLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucHQtbWQtNSxcbiAgLnB5LW1kLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLW1kLTUsXG4gIC5weC1tZC01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLW1kLTUsXG4gIC5weS1tZC01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1tZC01LFxuICAucHgtbWQtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbWQtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbWQtbjEsXG4gIC5teS1tZC1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItbWQtbjEsXG4gIC5teC1tZC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1tZC1uMSxcbiAgLm15LW1kLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1tZC1uMSxcbiAgLm14LW1kLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1tZC1uMiB7XG4gICAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LW1kLW4yLFxuICAubXktbWQtbjIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItbWQtbjIsXG4gIC5teC1tZC1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLW1kLW4yLFxuICAubXktbWQtbjIge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbWQtbjIsXG4gIC5teC1tZC1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1tZC1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1tZC1uMyxcbiAgLm15LW1kLW4zIHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1tZC1uMyxcbiAgLm14LW1kLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLW1kLW4zLFxuICAubXktbWQtbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLW1kLW4zLFxuICAubXgtbWQtbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLW1kLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbWQtbjQsXG4gIC5teS1tZC1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1tZC1uNCxcbiAgLm14LW1kLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItbWQtbjQsXG4gIC5teS1tZC1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1tZC1uNCxcbiAgLm14LW1kLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLW1kLW41IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LW1kLW41LFxuICAubXktbWQtbjUge1xuICAgIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLW1kLW41LFxuICAubXgtbWQtbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDsgfVxuICAubWItbWQtbjUsXG4gIC5teS1tZC1uNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbWQtbjUsXG4gIC5teC1tZC1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbWQtYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm10LW1kLWF1dG8sXG4gIC5teS1tZC1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm1yLW1kLWF1dG8sXG4gIC5teC1tZC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAubWItbWQtYXV0byxcbiAgLm15LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsgfVxuICAubWwtbWQtYXV0byxcbiAgLm14LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm0tbGctMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm10LWxnLTAsXG4gIC5teS1sZy0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1yLWxnLTAsXG4gIC5teC1sZy0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAubWItbGctMCxcbiAgLm15LWxnLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAubWwtbGctMCxcbiAgLm14LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm0tbGctMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LWxnLTEsXG4gIC5teS1sZy0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLWxnLTEsXG4gIC5teC1sZy0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItbGctMSxcbiAgLm15LWxnLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbGctMSxcbiAgLm14LWxnLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbGctMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbGctMixcbiAgLm15LWxnLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1sZy0yLFxuICAubXgtbGctMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItbGctMixcbiAgLm15LWxnLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1sZy0yLFxuICAubXgtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLWxnLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1sZy0zLFxuICAubXktbGctMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1sZy0zLFxuICAubXgtbGctMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLWxnLTMsXG4gIC5teS1sZy0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLWxnLTMsXG4gIC5teC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLWxnLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LWxnLTQsXG4gIC5teS1sZy00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItbGctNCxcbiAgLm14LWxnLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLWxnLTQsXG4gIC5teS1sZy00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbGctNCxcbiAgLm14LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1sZy01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbGctNSxcbiAgLm15LWxnLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubXItbGctNSxcbiAgLm14LWxnLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1sZy01LFxuICAubXktbGctNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1sZy01LFxuICAubXgtbGctNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucC1sZy0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnB0LWxnLTAsXG4gIC5weS1sZy0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5wci1sZy0wLFxuICAucHgtbGctMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5wYi1sZy0wLFxuICAucHktbGctMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAucGwtbGctMCxcbiAgLnB4LWxnLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5wLWxnLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucHQtbGctMSxcbiAgLnB5LWxnLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLWxnLTEsXG4gIC5weC1sZy0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLWxnLTEsXG4gIC5weS1sZy0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1sZy0xLFxuICAucHgtbGctMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAtbGctMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LWxnLTIsXG4gIC5weS1sZy0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLWxnLTIsXG4gIC5weC1sZy0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucGItbGctMixcbiAgLnB5LWxnLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucGwtbGctMixcbiAgLnB4LWxnLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAtbGctMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1sZy0zLFxuICAucHktbGctMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAucHItbGctMyxcbiAgLnB4LWxnLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAucGItbGctMyxcbiAgLnB5LWxnLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLWxnLTMsXG4gIC5weC1sZy0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAucC1sZy00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHQtbGctNCxcbiAgLnB5LWxnLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHItbGctNCxcbiAgLnB4LWxnLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1sZy00LFxuICAucHktbGctNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1sZy00LFxuICAucHgtbGctNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucC1sZy01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LWxnLTUsXG4gIC5weS1sZy01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1sZy01LFxuICAucHgtbGctNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1sZy01LFxuICAucHktbGctNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAucGwtbGctNSxcbiAgLnB4LWxnLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tLWxnLW4xIHtcbiAgICBtYXJnaW46IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LWxnLW4xLFxuICAubXktbGctbjEge1xuICAgIG1hcmdpbi10b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLWxnLW4xLFxuICAubXgtbGctbjEge1xuICAgIG1hcmdpbi1yaWdodDogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItbGctbjEsXG4gIC5teS1sZy1uMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbGctbjEsXG4gIC5teC1sZy1uMSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbGctbjIge1xuICAgIG1hcmdpbjogLTAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1sZy1uMixcbiAgLm15LWxnLW4yIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLWxnLW4yLFxuICAubXgtbGctbjIge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1sZy1uMixcbiAgLm15LWxnLW4yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLWxnLW4yLFxuICAubXgtbGctbjIge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbGctbjMge1xuICAgIG1hcmdpbjogLTFyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbGctbjMsXG4gIC5teS1sZy1uMyB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW0gIWltcG9ydGFudDsgfVxuICAubXItbGctbjMsXG4gIC5teC1sZy1uMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1sZy1uMyxcbiAgLm15LWxnLW4zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1sZy1uMyxcbiAgLm14LWxnLW4zIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDsgfVxuICAubS1sZy1uNCB7XG4gICAgbWFyZ2luOiAtMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LWxnLW40LFxuICAubXktbGctbjQge1xuICAgIG1hcmdpbi10b3A6IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItbGctbjQsXG4gIC5teC1sZy1uNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLWxnLW40LFxuICAubXktbGctbjQge1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbGctbjQsXG4gIC5teC1sZy1uNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1sZy1uNSB7XG4gICAgbWFyZ2luOiAtM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1sZy1uNSxcbiAgLm15LWxnLW41IHtcbiAgICBtYXJnaW4tdG9wOiAtM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1sZy1uNSxcbiAgLm14LWxnLW41IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLWxnLW41LFxuICAubXktbGctbjUge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLWxnLW41LFxuICAubXgtbGctbjUge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tLWxnLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tdC1sZy1hdXRvLFxuICAubXktbGctYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tci1sZy1hdXRvLFxuICAubXgtbGctYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm1iLWxnLWF1dG8sXG4gIC5teS1sZy1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm1sLWxnLWF1dG8sXG4gIC5teC1sZy1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEzMjBweCkge1xuICAubS14bC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAubXQteGwtMCxcbiAgLm15LXhsLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubXIteGwtMCxcbiAgLm14LXhsLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5tYi14bC0wLFxuICAubXkteGwtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5tbC14bC0wLFxuICAubXgteGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubS14bC0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQteGwtMSxcbiAgLm15LXhsLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXIteGwtMSxcbiAgLm14LXhsLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi14bC0xLFxuICAubXkteGwtMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC14bC0xLFxuICAubXgteGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubS14bC0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC14bC0yLFxuICAubXkteGwtMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXhsLTIsXG4gIC5teC14bC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi14bC0yLFxuICAubXkteGwtMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXhsLTIsXG4gIC5teC14bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0teGwtMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXhsLTMsXG4gIC5teS14bC0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXhsLTMsXG4gIC5teC14bC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWIteGwtMyxcbiAgLm15LXhsLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWwteGwtMyxcbiAgLm14LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0teGwtNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQteGwtNCxcbiAgLm15LXhsLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci14bC00LFxuICAubXgteGwtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWIteGwtNCxcbiAgLm15LXhsLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC14bC00LFxuICAubXgteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLXhsLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC14bC01LFxuICAubXkteGwtNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tci14bC01LFxuICAubXgteGwtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXhsLTUsXG4gIC5teS14bC01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXhsLTUsXG4gIC5teC14bC01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXhsLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAucHQteGwtMCxcbiAgLnB5LXhsLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnByLXhsLTAsXG4gIC5weC14bC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXhsLTAsXG4gIC5weS14bC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5wbC14bC0wLFxuICAucHgteGwtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnAteGwtMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC14bC0xLFxuICAucHkteGwtMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucHIteGwtMSxcbiAgLnB4LXhsLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucGIteGwtMSxcbiAgLnB5LXhsLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXhsLTEsXG4gIC5weC14bC0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucC14bC0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHQteGwtMixcbiAgLnB5LXhsLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHIteGwtMixcbiAgLnB4LXhsLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi14bC0yLFxuICAucHkteGwtMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC14bC0yLFxuICAucHgteGwtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucC14bC0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LXhsLTMsXG4gIC5weS14bC0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci14bC0zLFxuICAucHgteGwtMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi14bC0zLFxuICAucHkteGwtMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAucGwteGwtMyxcbiAgLnB4LXhsLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXhsLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC14bC00LFxuICAucHkteGwtNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci14bC00LFxuICAucHgteGwtNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXhsLTQsXG4gIC5weS14bC00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXhsLTQsXG4gIC5weC14bC00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXhsLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucHQteGwtNSxcbiAgLnB5LXhsLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLXhsLTUsXG4gIC5weC14bC01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXhsLTUsXG4gIC5weS14bC01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC14bC01LFxuICAucHgteGwtNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0teGwtbjEge1xuICAgIG1hcmdpbjogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQteGwtbjEsXG4gIC5teS14bC1uMSB7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXIteGwtbjEsXG4gIC5teC14bC1uMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi14bC1uMSxcbiAgLm15LXhsLW4xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC14bC1uMSxcbiAgLm14LXhsLW4xIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubS14bC1uMiB7XG4gICAgbWFyZ2luOiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXhsLW4yLFxuICAubXkteGwtbjIge1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXIteGwtbjIsXG4gIC5teC14bC1uMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXhsLW4yLFxuICAubXkteGwtbjIge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwteGwtbjIsXG4gIC5teC14bC1uMiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW0gIWltcG9ydGFudDsgfVxuICAubS14bC1uMyB7XG4gICAgbWFyZ2luOiAtMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC14bC1uMyxcbiAgLm15LXhsLW4zIHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci14bC1uMyxcbiAgLm14LXhsLW4zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXhsLW4zLFxuICAubXkteGwtbjMge1xuICAgIG1hcmdpbi1ib3R0b206IC0xcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXhsLW4zLFxuICAubXgteGwtbjMge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLXhsLW40IHtcbiAgICBtYXJnaW46IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQteGwtbjQsXG4gIC5teS14bC1uNCB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci14bC1uNCxcbiAgLm14LXhsLW40IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWIteGwtbjQsXG4gIC5teS14bC1uNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC14bC1uNCxcbiAgLm14LXhsLW40IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLXhsLW41IHtcbiAgICBtYXJnaW46IC0zcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXhsLW41LFxuICAubXkteGwtbjUge1xuICAgIG1hcmdpbi10b3A6IC0zcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXhsLW41LFxuICAubXgteGwtbjUge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW0gIWltcG9ydGFudDsgfVxuICAubWIteGwtbjUsXG4gIC5teS14bC1uNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW0gIWltcG9ydGFudDsgfVxuICAubWwteGwtbjUsXG4gIC5teC14bC1uNSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0teGwtYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm10LXhsLWF1dG8sXG4gIC5teS14bC1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXhsLWF1dG8sXG4gIC5teC14bC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAubWIteGwtYXV0byxcbiAgLm15LXhsLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsgfVxuICAubWwteGwtYXV0byxcbiAgLm14LXhsLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuXG4uc3RyZXRjaGVkLWxpbms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG5cbi50ZXh0LW1vbm9zcGFjZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1tb25vc3BhY2UpICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuXG4udGV4dC13cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuXG4udGV4dC10cnVuY2F0ZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAudGV4dC1zbS1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtc20tcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtc20tY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGV4dC1tZC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtbWQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtbWQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGV4dC1sZy1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtbGctcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtbGctY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLnRleHQteGwtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC50ZXh0LXhsLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gIC50ZXh0LXhsLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH0gfVxuXG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi5mb250LXdlaWdodC1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCkgIWltcG9ydGFudDsgfVxuXG4uZm9udC13ZWlnaHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpICFpbXBvcnRhbnQ7IH1cblxuLmZvbnQtd2VpZ2h0LW1lZGl1bSB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pICFpbXBvcnRhbnQ7IH1cblxuLmZvbnQtd2VpZ2h0LWJvbGQge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCkgIWltcG9ydGFudDsgfVxuXG4uZm9udC13ZWlnaHQtYm9sZGVyIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJsYWNrKSAhaW1wb3J0YW50OyB9XG5cbi5mb250LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXdoaXRlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ib2R5IHtcbiAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4udGV4dC1tdXRlZCB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYmxhY2stNTAge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtd2hpdGUtNTAge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtaGlkZSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwOyB9XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1yZXNldCB7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoOyB9XG5cbi52aXNpYmxlLXhzIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLXNtIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLW1kIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLWxnIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLXhsIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrLFxuLnZpc2libGUteGwtYmxvY2ssXG4udmlzaWJsZS14bC1pbmxpbmUsXG4udmlzaWJsZS14bC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC52aXNpYmxlLXhzIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnZpc2libGUteHMge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgudmlzaWJsZS14cyxcbiAgdGQudmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC52aXNpYmxlLXhzLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC52aXNpYmxlLXhzLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkgYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC52aXNpYmxlLXNtIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnZpc2libGUtc20ge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgudmlzaWJsZS1zbSxcbiAgdGQudmlzaWJsZS1zbSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnZpc2libGUtc20tYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudmlzaWJsZS1zbS1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC52aXNpYmxlLW1kIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnZpc2libGUtbWQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIudmlzaWJsZS1tZCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgudmlzaWJsZS1tZCxcbiAgdGQudmlzaWJsZS1tZCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnZpc2libGUtbWQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAudmlzaWJsZS1tZC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAudmlzaWJsZS1sZyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICB0YWJsZS52aXNpYmxlLWxnIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoLnZpc2libGUtbGcsXG4gIHRkLnZpc2libGUtbGcge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAudmlzaWJsZS1sZy1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAudmlzaWJsZS1sZy1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gIC52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTMyMHB4KSB7XG4gIC52aXNpYmxlLXhsIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnZpc2libGUteGwge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIudmlzaWJsZS14bCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgudmlzaWJsZS14bCxcbiAgdGQudmlzaWJsZS14bCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEzMjBweCkge1xuICAudmlzaWJsZS14bC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLnZpc2libGUteGwtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLnZpc2libGUteGwtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuaGlkZGVuLXhzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuaGlkZGVuLXNtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMzE5Ljk4cHgpIHtcbiAgLmhpZGRlbi1sZyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEzMjBweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlzaWJsZS1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICB0YWJsZS52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyLnZpc2libGUtcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoLnZpc2libGUtcHJpbnQsXG4gIHRkLnZpc2libGUtcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfSB9XG5cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBwcmludCB7XG4gICAgLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi52aXNpYmxlLXByaW50LWlubGluZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQge1xuICAgIC52aXNpYmxlLXByaW50LWlubGluZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfSB9XG5cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQge1xuICAgIC52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCB7XG4gIC5oaWRkZW4tcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbi5oMSxcbi5oMixcbi5oMyxcbi5oNCxcbi5oNSxcbi5oNiB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gIGgxIHNtYWxsLFxuICBoMSAuc21hbGwsXG4gIGgyIHNtYWxsLFxuICBoMiAuc21hbGwsXG4gIGgzIHNtYWxsLFxuICBoMyAuc21hbGwsXG4gIGg0IHNtYWxsLFxuICBoNCAuc21hbGwsXG4gIGg1IHNtYWxsLFxuICBoNSAuc21hbGwsXG4gIGg2IHNtYWxsLFxuICBoNiAuc21hbGwsXG4gIC5oMSBzbWFsbCxcbiAgLmgxIC5zbWFsbCxcbiAgLmgyIHNtYWxsLFxuICAuaDIgLnNtYWxsLFxuICAuaDMgc21hbGwsXG4gIC5oMyAuc21hbGwsXG4gIC5oNCBzbWFsbCxcbiAgLmg0IC5zbWFsbCxcbiAgLmg1IHNtYWxsLFxuICAuaDUgLnNtYWxsLFxuICAuaDYgc21hbGwsXG4gIC5oNiAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuaDEge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oMSk7IH1cblxuaDIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oMik7IH1cblxuaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oMyk7IH1cblxuaDQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNCk7IH1cblxuaDUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNSk7IH1cblxuaDYge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNik7IH1cblxuLmgxIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDEpICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMSkgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWgxKSAhaW1wb3J0YW50OyB9XG5cbi5oMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDIpICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oMikgIWltcG9ydGFudDsgfVxuXG4uaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMykgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgzKSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDMpICFpbXBvcnRhbnQ7IH1cblxuLmg0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCkgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg0KSAhaW1wb3J0YW50OyB9XG5cbi5oNSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDUpICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNSkgIWltcG9ydGFudDsgfVxuXG4uaDYge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNikgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg2KSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDYpICFpbXBvcnRhbnQ7IH1cblxuLmg3IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDcpICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNykgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg3KSAhaW1wb3J0YW50OyB9XG5cbi5oOCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg4KSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDgpICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oOCkgIWltcG9ydGFudDsgfVxuXG4uaDkge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oOSkgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg5KSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDkpICFpbXBvcnRhbnQ7IH1cblxucCB7XG4gIG1hcmdpbjogMCAwIDE2cHg7IH1cblxuLnAteHhzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4cyk7IH1cblxuLnAteHMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7IH1cblxuLnAtc20ge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IH1cblxuLnAtYmFzZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7IH1cblxuLnAtbGcge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cblxuLnAteGxnIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGxnKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhsZyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cblxuLnAteHhsZyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4bGcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhsZyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cblxuLmxlYWQge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cblxuLmRpc3BsYXktMSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1kaXNwbGF5MS13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZGlzcGxheS1saW5lLWhlaWdodCk7IH1cblxuLmRpc3BsYXktMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZGlzcGxheTItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1kaXNwbGF5Mi13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZGlzcGxheS1saW5lLWhlaWdodCk7IH1cblxuLmRpc3BsYXktMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1kaXNwbGF5My13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZGlzcGxheS1saW5lLWhlaWdodCk7IH1cblxuLmRpc3BsYXktNCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1kaXNwbGF5NC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZGlzcGxheS1saW5lLWhlaWdodCk7IH1cblxuaHIge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1oci1tYXJnaW4teSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWhyLW1hcmdpbi15KTtcbiAgYm9yZGVyLXRvcDogdmFyKC0taHItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1oci1ib3JkZXItY29sb3IpOyB9XG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG5cbm1hcmssXG4ubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci00KTtcbiAgcGFkZGluZzogLjJlbTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuXG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWxhcmdlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtc21hbGwge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSkgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWZhZGVkIHtcbiAgY29sb3I6IHZhcigtLXRleHQtZmFkZWQtY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtbGlnaHRlciB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLmxpbmUtdGhyb3VnaCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtcHJpbWFyeSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LXByaW1hcnk6aG92ZXIsIGEudGV4dC1wcmltYXJ5OmZvY3VzLXZpc2libGUsIGEudGV4dC1wcmltYXJ5OmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnktZGFya2VyKSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXN1Y2Nlc3Mge1xuICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKSAhaW1wb3J0YW50OyB9XG5cbmEudGV4dC1zdWNjZXNzOmhvdmVyLCBhLnRleHQtc3VjY2Vzczpmb2N1cy12aXNpYmxlLCBhLnRleHQtc3VjY2Vzczpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzLWRhcmtlcikgIWltcG9ydGFudDsgfVxuXG4udGV4dC1pbmZvIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWluZm8pICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWluZm86aG92ZXIsIGEudGV4dC1pbmZvOmZvY3VzLXZpc2libGUsIGEudGV4dC1pbmZvOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWluZm8tZGFya2VyKSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKSAhaW1wb3J0YW50OyB9XG5cbmEudGV4dC13YXJuaW5nOmhvdmVyLCBhLnRleHQtd2FybmluZzpmb2N1cy12aXNpYmxlLCBhLnRleHQtd2FybmluZzpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nLWRhcmtlcikgIWltcG9ydGFudDsgfVxuXG4udGV4dC1kYW5nZXIge1xuICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuYS50ZXh0LWRhbmdlcjpob3ZlciwgYS50ZXh0LWRhbmdlcjpmb2N1cy12aXNpYmxlLCBhLnRleHQtZGFuZ2VyOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1kYXJrZXIpICFpbXBvcnRhbnQ7IH1cblxuLmJnLXByaW1hcnkge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uYmctcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1wcmltYXJ5OmhvdmVyLCBhLmJnLXByaW1hcnk6Zm9jdXMtdmlzaWJsZSwgYS5iZy1wcmltYXJ5OmZvY3VzLFxuYnV0dG9uLmJnLXByaW1hcnk6aG92ZXIsXG5idXR0b24uYmctcHJpbWFyeTpmb2N1cy12aXNpYmxlLFxuYnV0dG9uLmJnLXByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci0yKSAhaW1wb3J0YW50OyB9XG5cbi5iZy1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTQpICFpbXBvcnRhbnQ7IH1cblxuYS5iZy1zdWNjZXNzOmhvdmVyLCBhLmJnLXN1Y2Nlc3M6Zm9jdXMtdmlzaWJsZSwgYS5iZy1zdWNjZXNzOmZvY3VzLFxuYnV0dG9uLmJnLXN1Y2Nlc3M6aG92ZXIsXG5idXR0b24uYmctc3VjY2Vzczpmb2N1cy12aXNpYmxlLFxuYnV0dG9uLmJnLXN1Y2Nlc3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMykgIWltcG9ydGFudDsgfVxuXG4uYmctaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWluZm8tbGlnaHRlci0zKSAhaW1wb3J0YW50OyB9XG5cbmEuYmctaW5mbzpob3ZlciwgYS5iZy1pbmZvOmZvY3VzLXZpc2libGUsIGEuYmctaW5mbzpmb2N1cyxcbmJ1dHRvbi5iZy1pbmZvOmhvdmVyLFxuYnV0dG9uLmJnLWluZm86Zm9jdXMtdmlzaWJsZSxcbmJ1dHRvbi5iZy1pbmZvOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtaW5mby1saWdodGVyLTIpICFpbXBvcnRhbnQ7IH1cblxuLmJnLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItNCkgIWltcG9ydGFudDsgfVxuXG5hLmJnLXdhcm5pbmc6aG92ZXIsIGEuYmctd2FybmluZzpmb2N1cy12aXNpYmxlLCBhLmJnLXdhcm5pbmc6Zm9jdXMsXG5idXR0b24uYmctd2FybmluZzpob3ZlcixcbmJ1dHRvbi5iZy13YXJuaW5nOmZvY3VzLXZpc2libGUsXG5idXR0b24uYmctd2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci0zKSAhaW1wb3J0YW50OyB9XG5cbi5iZy1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KSAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGFuZ2VyOmhvdmVyLCBhLmJnLWRhbmdlcjpmb2N1cy12aXNpYmxlLCBhLmJnLWRhbmdlcjpmb2N1cyxcbmJ1dHRvbi5iZy1kYW5nZXI6aG92ZXIsXG5idXR0b24uYmctZGFuZ2VyOmZvY3VzLXZpc2libGUsXG5idXR0b24uYmctZGFuZ2VyOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMykgIWltcG9ydGFudDsgfVxuXG4uYmctZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KSAhaW1wb3J0YW50OyB9XG5cbmEuYmctZGVmYXVsdDpob3ZlciwgYS5iZy1kZWZhdWx0OmZvY3VzLXZpc2libGUsIGEuYmctZGVmYXVsdDpmb2N1cyxcbmJ1dHRvbi5iZy1kZWZhdWx0OmhvdmVyLFxuYnV0dG9uLmJnLWRlZmF1bHQ6Zm9jdXMtdmlzaWJsZSxcbmJ1dHRvbi5iZy1kZWZhdWx0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpICFpbXBvcnRhbnQ7IH1cblxudWwsXG5vbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpLzI7IH1cbiAgdWwgdWwsXG4gIHVsIG9sLFxuICBvbCB1bCxcbiAgb2wgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogLTVweDsgfVxuICAubGlzdC1pbmxpbmUgPiBsaSwgLmxpc3QtaW5saW5lIC5saXN0LWlubGluZS1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4OyB9XG4gICAgLmxpc3QtaW5saW5lID4gbGk6bm90KDpsYXN0LWNoaWxkKSwgLmxpc3QtaW5saW5lIC5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1saXN0LWlubGluZS1wYWRkaW5nKTsgfVxuXG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmJsb2NrcXVvdGUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ibG9ja3F1b3RlLWJnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmxvY2txdW90ZS1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcbiAgcGFkZGluZzogdmFyKC0tYmxvY2txdW90ZS1wYWRkaW5nKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IHZhcigtLWJsb2NrcXVvdGUtZm9udC1jb2xvcik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1iYWxja3F1b3RlLWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJsb2NrcXVvdGUtbGluZS1oZWlnaHQpOyB9XG4gIGJsb2NrcXVvdGUgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBibG9ja3F1b3RlIHAgc3BhbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1hcmdpbjogMDsgfVxuICBibG9ja3F1b3RlIHA6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9xdW90ZS1pY29uLnN2Zyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjRweDtcbiAgICBsZWZ0OiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICB3aWR0aDogMjRweDsgfVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiB2YXIoLS1ibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1ibG9ja3F1b3RlLXNtYWxsLWNvbG9yKTsgfVxuICAuYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgfVxuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNhcmQtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogdmFyKC0tY2FyZC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jYXJkLWJvcmRlci1yYWRpdXMpOyB9XG4gIC5jYXJkID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuY2FyZCA+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7IH1cbiAgICAuY2FyZCA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7IH1cbiAgICAuY2FyZCA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTsgfVxuICAuY2FyZCA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuICAuY2FyZCA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwOyB9XG5cbi5jYXJkLWJvZHkge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiB2YXIoLS1jYXJkLWJvZHktcGFkZGluZyk7IH1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYXJkLXNwYWNlci15KTsgfVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC12YXIoLS1jYXJkLXNwYWNlci15KS8yO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FyZC1saW5rICsgLmNhcmQtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1jYXJkLXNwYWNlci14KTsgfVxuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS1jYXJkLWhlYWRpbmctcGFkZGluZyk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tY2FyZC1ib3JkZXIpOyB9XG4gIC5jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIDAgMDsgfVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiB2YXIoLS1jYXJkLWZvb3Rlci1wYWRkaW5nKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2FyZC1jYXAtYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS1jYXJkLWJvcmRlcik7IH1cbiAgLmNhcmQtZm9vdGVyOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7IH1cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC12YXIoLS1jYXJkLXNwYWNlci14KS8yO1xuICBtYXJnaW4tYm90dG9tOiAtdmFyKC0tY2FyZC1zcGFjZXIteSk7XG4gIG1hcmdpbi1sZWZ0OiAtdmFyKC0tY2FyZC1zcGFjZXIteCkvMjtcbiAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC12YXIoLS1jYXJkLXNwYWNlci14KS8yO1xuICBtYXJnaW4tbGVmdDogLXZhcigtLWNhcmQtc3BhY2VyLXgpLzI7IH1cblxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogdmFyKC0tY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTsgfVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7IH1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpOyB9XG5cbi5jYXJkLWRlY2sgLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYXJkLWRlY2stbWFyZ2luKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmNhcmQtZGVjayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLXZhcigtLWNhcmQtZGVjay1tYXJnaW4pO1xuICAgIG1hcmdpbi1sZWZ0OiAtdmFyKC0tY2FyZC1kZWNrLW1hcmdpbik7IH1cbiAgICAuY2FyZC1kZWNrIC5jYXJkIHtcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tY2FyZC1kZWNrLW1hcmdpbik7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWNhcmQtZGVjay1tYXJnaW4pOyB9IH1cblxuLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNhcmQtZ3JvdXAtbWFyZ2luKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmNhcmQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuICAgIC5jYXJkLWdyb3VwID4gLmNhcmQge1xuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmNhcmQtZ3JvdXAgPiAuY2FyZCArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cbiAgICAgICAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXG4gICAgICAgIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG4gICAgICAgIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsgfVxuICAgICAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cbiAgICAgICAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctdG9wLFxuICAgICAgICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsgfVxuICAgICAgICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOyB9IH1cblxuLmNhcmQtY29sdW1ucyAuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNhcmQtY29sdW1ucy1tYXJnaW4pOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuY2FyZC1jb2x1bW5zIHtcbiAgICBjb2x1bW4tY291bnQ6IHZhcigtLWNhcmQtY29sdW1ucy1jb3VudCk7XG4gICAgY29sdW1uLWdhcDogdmFyKC0tY2FyZC1jb2x1bW5zLWdhcCk7XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7IH1cbiAgICAuY2FyZC1jb2x1bW5zIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmFjY29yZGlvbiB7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTsgfVxuICAuYWNjb3JkaW9uID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cbiAgICAuYWNjb3JkaW9uID4gLmNhcmQ6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7IH1cbiAgICAuYWNjb3JkaW9uID4gLmNhcmQgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7IH1cblxuLmltZy1mbHVpZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogdmFyKC0tdGh1bWJuYWlsLXBhZGRpbmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aHVtYm5haWwtYmcpO1xuICBib3JkZXI6IHZhcigtLXRodW1ibmFpbC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXRodW1ibmFpbC1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS10aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXRodW1ibmFpbC1ib3gtc2hhZG93KTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpLzI7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6IHZhcigtLWZpZ3VyZS1jYXB0aW9uLWNvbG9yKTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG5cbmFydGljbGUsXG5hc2lkZSxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYm9keS1iZyk7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWhlYWRpbmdzLW1hcmdpbi1ib3R0b20pOyB9XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSk7IH1cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAwO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IH1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZHQge1xuICBmb250LXdlaWdodDogdmFyKC0tZHQtZm9udC13ZWlnaHQpOyB9XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7IH1cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IH1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0uMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0uNWVtOyB9XG5cbmEge1xuICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbGluay1kZWNvcmF0aW9uKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbGluay1ob3Zlci1kZWNvcmF0aW9uKTsgfVxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG5zdmcge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXRhYmxlLXRkLXBhZGRpbmcpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tdGFibGUtdGQtcGFkZGluZyk7XG4gIGNvbG9yOiB2YXIoLS10YWJsZS1jYXB0aW9uLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207IH1cblxudGgge1xuICBmb250LXdlaWdodDogdmFyKC0tdGFibGUtdGgtZm9udC13ZWlnaHQpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbGFiZWwtbWFyZ2luLWJvdHRvbSk7IH1cblxuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7IH1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsOyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9XCJidXR0b25cIl06bm90KDpkaXNhYmxlZCksXG5bdHlwZT1cInJlc2V0XCJdOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9XCJzdWJtaXRcIl06bm90KDpkaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDsgfVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICByZXNpemU6IHZlcnRpY2FsOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGxlZ2VuZCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dykgOyB9IH1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IHZhcigtLXNwaW5uZXItd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLXNwaW5uZXItaGVpZ2h0KTtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBib3JkZXI6IHZhcigtLXNwaW5uZXItYm9yZGVyLXdpZHRoKSBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjsgfVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogdmFyKC0tc3Bpbm5lci13aWR0aC1zbSk7XG4gIGhlaWdodDogdmFyKC0tc3Bpbm5lci1oZWlnaHQtc20pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLXNwaW5uZXItYm9yZGVyLXdpZHRoLXNtKTsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogdmFyKC0tc3Bpbm5lci13aWR0aCk7XG4gIGhlaWdodDogdmFyKC0tc3Bpbm5lci1oZWlnaHQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3JvdzsgfVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6IHZhcigtLXNwaW5uZXItd2lkdGgtc20pO1xuICBoZWlnaHQ6IHZhcigtLXNwaW5uZXItaGVpZ2h0LXNtKTsgfVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuc3Bpbm5lci1ib3JkZXIsXG4gIC5zcGlubmVyLWdyb3cge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41czsgfSB9XG5cbi50b2FzdCB7XG4gIGZsZXgtYmFzaXM6IHZhcigtLXRvYXN0LW1heC13aWR0aCk7XG4gIG1heC13aWR0aDogdmFyKC0tdG9hc3QtbWF4LXdpZHRoKTtcbiAgZm9udC1zaXplOiB2YXIoLS10b2FzdC1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tdG9hc3QtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10b2FzdC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXRvYXN0LWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLXRvYXN0LWJveC1zaGFkb3cpO1xuICBvcGFjaXR5OiAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS10b2FzdC1ib3JkZXItcmFkaXVzKTsgfVxuICAudG9hc3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdG9hc3QtcGFkZGluZy14KTsgfVxuICAudG9hc3Quc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAudG9hc3Quc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTsgfVxuICAudG9hc3QuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tdG9hc3QtcGFkZGluZy15KSB2YXIoLS10b2FzdC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tdG9hc3QtaGVhZGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiB2YXIoLS10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXRvYXN0LWhlYWRlci1ib3JkZXItY29sb3IpO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKHZhcigtLXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tdG9hc3QtYm9yZGVyLXdpZHRoKSk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKHZhcigtLXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tdG9hc3QtYm9yZGVyLXdpZHRoKSk7IH1cbiAgLnRvYXN0LWhlYWRlciAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLXRvYXN0LXBhZGRpbmcteCk7IH1cblxuLmZhZGUge1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWZhZGUpOyB9XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLmZhZGUge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG4gIC5mYWRlOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7IH1cblxuLmNvbGxhcHNlOm5vdCgubHUtY29sbGFwc2UpOm5vdCguc2hvdykge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb2xsYXBzZTpub3QoLmx1LWNvbGxhcHNlKS5pbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jb2xsYXBzZS5sdS1jb2xsYXBzZTpub3QoLmx1LXNob3cpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY29sbGFwc2UubHUtY29sbGFwc2UuaW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubHUtY29sbGFwc2luZyxcbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tY29sbGFwc2UpOyB9XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLmx1LWNvbGxhcHNpbmcsXG4gICAgLmNvbGxhcHNpbmcge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG5cbi5wYW5lbC5wYW5lbC1jaGVjay5jaGVja2VkICsgLnBhbmVsLnBhbmVsLWNoZWNrOm5vdCguY2hlY2tlZCkgLnBhbmVsLWNvbGxhcHNlLmNvbGxhcHNlLnNob3cge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qKlxyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqIE1hcmtkb3duIEVkaXRvciBUeXBvZ3JhcGh5XHJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICovXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkFydGljbGUgLSBDb250ZW50XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5tYXJrZG93bi1jb250ZW50LFxuLm1kLXByZXZpZXcge1xuICBjb2xvcjogdmFyKC0tbWFya2Rvd24tZm9udC1jb2xvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWFya2Rvd24tZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWFya2Rvd24tZm9udC13ZWlnaHQtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tYXJrZG93bi1saW5lLWhlaWdodC1iYXNlKTtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDsgfVxuICAubWFya2Rvd24tY29udGVudCA+ICo6bm90KHByZTpoYXMoY29kZSkpOm5vdChociksXG4gIC5tZC1wcmV2aWV3ID4gKjpub3QocHJlOmhhcyhjb2RlKSk6bm90KGhyKSB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1hcmtkb3duLWNvbnRlbnQgPiAqOmZpcnN0LWNoaWxkLFxuICAubWQtcHJldmlldyA+ICo6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLm1hcmtkb3duLWNvbnRlbnQgPiAqOmxhc3QtY2hpbGQsXG4gIC5tZC1wcmV2aWV3ID4gKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tYXJrZG93bi1jb250ZW50IGgxLFxuICAubWFya2Rvd24tY29udGVudCAuaDEsXG4gIC5tZC1wcmV2aWV3IGgxLFxuICAubWQtcHJldmlldyAuaDEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLW1hcmtkb3duLWgxLXBhZGRpbmctdG9wKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbWFya2Rvd24taDEtcGFkZGluZy1ib3R0b20pOyB9XG4gIC5tYXJrZG93bi1jb250ZW50IGgyLFxuICAubWFya2Rvd24tY29udGVudCAuaDIsXG4gIC5tZC1wcmV2aWV3IGgyLFxuICAubWQtcHJldmlldyAuaDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLW1hcmtkb3duLWgyLXBhZGRpbmctdG9wKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbWFya2Rvd24taDItcGFkZGluZy1ib3R0b20pOyB9XG4gIC5tYXJrZG93bi1jb250ZW50IGgzLFxuICAubWFya2Rvd24tY29udGVudCAuaDMsXG4gIC5tZC1wcmV2aWV3IGgzLFxuICAubWQtcHJldmlldyAuaDMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tYXJrZG93bi1oMy1wYWRkaW5nLXRvcCk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLW1hcmtkb3duLWgzLXBhZGRpbmctYm90dG9tKTsgfVxuICAubWFya2Rvd24tY29udGVudCBoNCxcbiAgLm1hcmtkb3duLWNvbnRlbnQgLmg0LFxuICAubWQtcHJldmlldyBoNCxcbiAgLm1kLXByZXZpZXcgLmg0IHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg2KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tbWFya2Rvd24taDQtcGFkZGluZy10b3ApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tYXJrZG93bi1oNC1wYWRkaW5nLWJvdHRvbSk7IH1cbiAgLm1hcmtkb3duLWNvbnRlbnQgaDUsXG4gIC5tYXJrZG93bi1jb250ZW50IC5oNSxcbiAgLm1kLXByZXZpZXcgaDUsXG4gIC5tZC1wcmV2aWV3IC5oNSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLW1hcmtkb3duLWg1LXBhZGRpbmctdG9wKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbWFya2Rvd24taDUtcGFkZGluZy1ib3R0b20pOyB9XG4gIC5tYXJrZG93bi1jb250ZW50IGg2LFxuICAubWFya2Rvd24tY29udGVudCAuaDYsXG4gIC5tZC1wcmV2aWV3IGg2LFxuICAubWQtcHJldmlldyAuaDYge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tbWFya2Rvd24taDYtcGFkZGluZy10b3ApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tYXJrZG93bi1oNi1wYWRkaW5nLWJvdHRvbSk7IH1cbiAgLm1hcmtkb3duLWNvbnRlbnQgaDEsIC5tYXJrZG93bi1jb250ZW50IGgyLCAubWFya2Rvd24tY29udGVudCBoMywgLm1hcmtkb3duLWNvbnRlbnQgaDQsIC5tYXJrZG93bi1jb250ZW50IGg1LCAubWFya2Rvd24tY29udGVudCBoNixcbiAgLm1kLXByZXZpZXcgaDEsXG4gIC5tZC1wcmV2aWV3IGgyLFxuICAubWQtcHJldmlldyBoMyxcbiAgLm1kLXByZXZpZXcgaDQsXG4gIC5tZC1wcmV2aWV3IGg1LFxuICAubWQtcHJldmlldyBoNiB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cbiAgICAubWFya2Rvd24tY29udGVudCBoMSArIGJyLCAubWFya2Rvd24tY29udGVudCBoMiArIGJyLCAubWFya2Rvd24tY29udGVudCBoMyArIGJyLCAubWFya2Rvd24tY29udGVudCBoNCArIGJyLCAubWFya2Rvd24tY29udGVudCBoNSArIGJyLCAubWFya2Rvd24tY29udGVudCBoNiArIGJyLFxuICAgIC5tZC1wcmV2aWV3IGgxICsgYnIsXG4gICAgLm1kLXByZXZpZXcgaDIgKyBicixcbiAgICAubWQtcHJldmlldyBoMyArIGJyLFxuICAgIC5tZC1wcmV2aWV3IGg0ICsgYnIsXG4gICAgLm1kLXByZXZpZXcgaDUgKyBicixcbiAgICAubWQtcHJldmlldyBoNiArIGJyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1hcmtkb3duLWNvbnRlbnQgcCwgLm1hcmtkb3duLWNvbnRlbnQgb2wsXG4gIC5tZC1wcmV2aWV3IHAsXG4gIC5tZC1wcmV2aWV3IG9sIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbWFya2Rvd24tcGFyYWdyYXBoLXBhZGRpbmctYm90dG9tKTsgfVxuICAubWFya2Rvd24tY29udGVudCBiLFxuICAubWFya2Rvd24tY29udGVudCBzdHJvbmcsXG4gIC5tZC1wcmV2aWV3IGIsXG4gIC5tZC1wcmV2aWV3IHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gIC5tYXJrZG93bi1jb250ZW50IC50YWJsZSxcbiAgLm1hcmtkb3duLWNvbnRlbnQgdGFibGUsXG4gIC5tZC1wcmV2aWV3IC50YWJsZSxcbiAgLm1kLXByZXZpZXcgdGFibGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgLm1hcmtkb3duLWNvbnRlbnQgLnRhYmxlIHRkLFxuICAgIC5tYXJrZG93bi1jb250ZW50IC50YWJsZSB0aCxcbiAgICAubWFya2Rvd24tY29udGVudCB0YWJsZSB0ZCxcbiAgICAubWFya2Rvd24tY29udGVudCB0YWJsZSB0aCxcbiAgICAubWQtcHJldmlldyAudGFibGUgdGQsXG4gICAgLm1kLXByZXZpZXcgLnRhYmxlIHRoLFxuICAgIC5tZC1wcmV2aWV3IHRhYmxlIHRkLFxuICAgIC5tZC1wcmV2aWV3IHRhYmxlIHRoIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAubWFya2Rvd24tY29udGVudCBpbWcsXG4gIC5tZC1wcmV2aWV3IGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAubWFya2Rvd24tY29udGVudCB1bCxcbiAgLm1kLXByZXZpZXcgdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMnB4OyB9XG4gICAgLm1hcmtkb3duLWNvbnRlbnQgdWwgbGksXG4gICAgLm1kLXByZXZpZXcgdWwgbGkge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG4gICAgICAubWFya2Rvd24tY29udGVudCB1bCBsaSBjb2RlLFxuICAgICAgLm1kLXByZXZpZXcgdWwgbGkgY29kZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXRlLXN1Y2Nlc3MtYmcpO1xuICAgICAgICBjb2xvcjogdmFyKC0tc3RhdGUtc3VjY2Vzcy10ZXh0KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3RhdGUtc3VjY2Vzcy1ib3JkZXIpO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IDRweDsgfVxuICAubWFya2Rvd24tY29udGVudCBibG9ja3F1b3RlLFxuICAubWQtcHJldmlldyBibG9ja3F1b3RlIHtcbiAgICBwYWRkaW5nOiAwIDAgMCB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tYXJrZG93bi1ibG9ja3F1b3RlLXBhZGRpbmctYm90dG9tKTsgfVxuICAgIC5tYXJrZG93bi1jb250ZW50IGJsb2NrcXVvdGUgcCxcbiAgICAubWQtcHJldmlldyBibG9ja3F1b3RlIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubWFya2Rvd24tY29udGVudCBibG9ja3F1b3RlIHA6OmFmdGVyLFxuICAgICAgLm1kLXByZXZpZXcgYmxvY2txdW90ZSBwOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogY2FsYygtMSAqIHZhcigtLXNwYWNpbmctMngpKTtcbiAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5tYXJrZG93bi1jb250ZW50IHByZSxcbiAgLm1kLXByZXZpZXcgcHJlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItMyk7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoYm9yZGVyLXJhZGl1cy1zbSk7IH1cbiAgICAubWFya2Rvd24tY29udGVudCBwcmU6aGFzKGNvZGUpLFxuICAgIC5tZC1wcmV2aWV3IHByZTpoYXMoY29kZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFya2Rvd24tY29kZS1wYWRkaW5nLWJvdHRvbSk7IH1cbiAgICAubWFya2Rvd24tY29udGVudCBwcmUgY29kZSxcbiAgICAubWQtcHJldmlldyBwcmUgY29kZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1bnNldDtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTsgfVxuICAubWFya2Rvd24tY29udGVudCAuaXAtYWRkcmVzcyxcbiAgLm1kLXByZXZpZXcgLmlwLWFkZHJlc3Mge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ3RoLXh4cyk7IH1cblxuLmFubm91bmNlbWVudHMtbGlzdCBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSAwOyB9XG5cbi8qKlxyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqIE1hcmtkb3duIEVkaXRvclxyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqL1xuLm1kLWVkaXRvciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmcpOyB9XG4gIC5tZC1lZGl0b3IuYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7IH1cblxuLm1kLWVkaXRvciAubWQtaGVhZGVyOmhhcyguYnRuLmFjdGl2ZVtkYXRhLWhhbmRsZXI9XCJib290c3RyYXAtbWFya2Rvd24tY21kUHJldmlld1wiXSkgLmJ0bi1ncm91cDpub3QoLmJ0bi1ncm91cC1wcmV2aWV3KSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1kLWVkaXRvciAubWQtaGVhZGVyOmhhcyguYnRuLmFjdGl2ZVtkYXRhLWhhbmRsZXI9XCJib290c3RyYXAtbWFya2Rvd24tY21kUHJldmlld1wiXSkgLmJ0bi1ncm91cC5idG4tZ3JvdXAtcHJldmlldzo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lOyB9XG5cbi5tZC1lZGl0b3IgLm1kLWhlYWRlcjpoYXMoLmJ0bi5hY3RpdmVbZGF0YS1oYW5kbGVyPVwiYm9vdHN0cmFwLW1hcmtkb3duLWNtZFByZXZpZXdcIl0pIC5idG4tZ3JvdXAuYnRuLWdyb3VwLXByZXZpZXcgLmxzLWFycm93LWxlZnQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4ubWQtZWRpdG9yID4gLmJ0bi10b29sYmFyLm1kLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLm1kLWVkaXRvciA+IC5idG4tdG9vbGJhciA+IC5tZC1jb250cm9scyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5tZC1lZGl0b3IgPiAuYnRuLXRvb2xiYXIgPiAuYnRuLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xeCk7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tZC1lZGl0b3IgPiAuYnRuLXRvb2xiYXIgPiAuYnRuLWdyb3VwOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMTZweDsgfVxuICAubWQtZWRpdG9yID4gLmJ0bi10b29sYmFyID4gLmJ0bi1ncm91cDpoYXMoYnV0dG9uW2RhdGEtaGFuZGxlcj1cImJvb3RzdHJhcC1tYXJrZG93bi1jbWRQcmV2aWV3XCJdKSB7XG4gICAgb3JkZXI6IC0xO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIC5tZC1lZGl0b3IgPiAuYnRuLXRvb2xiYXIgPiAuYnRuLWdyb3VwOmhhcyhidXR0b25bZGF0YS1oYW5kbGVyPVwiYm9vdHN0cmFwLW1hcmtkb3duLWNtZFByZXZpZXdcIl0pIC5idG4tZGVmYXVsdCB7XG4gICAgICBwYWRkaW5nOiA2cHggMTJweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgICB3aWR0aDogdW5zZXQgIWltcG9ydGFudDsgfVxuICAubWQtZWRpdG9yID4gLmJ0bi10b29sYmFyID4gLmJ0bi1ncm91cDpudGgtY2hpbGQoNSkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAgIC5tZC1lZGl0b3IgPiAuYnRuLXRvb2xiYXIgPiAuYnRuLWdyb3VwOm50aC1jaGlsZCg1KTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9uZTsgfVxuICAubWQtZWRpdG9yID4gLmJ0bi10b29sYmFyID4gLmJ0bi1ncm91cCAuYnRuOm5vdCguYnRuLXByaW1hcnkpIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB3aWR0aDogMzBweDsgfVxuICAgIC5tZC1lZGl0b3IgPiAuYnRuLXRvb2xiYXIgPiAuYnRuLWdyb3VwIC5idG46bm90KC5idG4tcHJpbWFyeSkgLmZhLFxuICAgIC5tZC1lZGl0b3IgPiAuYnRuLXRvb2xiYXIgPiAuYnRuLWdyb3VwIC5idG46bm90KC5idG4tcHJpbWFyeSkgLmZhcyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7IH1cbiAgICAubWQtZWRpdG9yID4gLmJ0bi10b29sYmFyID4gLmJ0bi1ncm91cCAuYnRuOm5vdCguYnRuLXByaW1hcnkpIC5mYS1zZWFyY2gge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7IH1cbiAgICAubWQtZWRpdG9yID4gLmJ0bi10b29sYmFyID4gLmJ0bi1ncm91cCAuYnRuOm5vdCguYnRuLXByaW1hcnkpOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICAgICAgLm1kLWVkaXRvciA+IC5idG4tdG9vbGJhciA+IC5idG4tZ3JvdXAgLmJ0bjpub3QoLmJ0bi1wcmltYXJ5KTpob3ZlciAuZmEsXG4gICAgICAubWQtZWRpdG9yID4gLmJ0bi10b29sYmFyID4gLmJ0bi1ncm91cCAuYnRuOm5vdCguYnRuLXByaW1hcnkpOmhvdmVyIC5mYXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucy1ob3Zlcik7IH1cblxuLm1kLWVkaXRvciA+IHRleHRhcmVhLm1hcmtkb3duLWVkaXRvcixcbi5tZC1lZGl0b3IgPiAubWQtcHJldmlldyB7XG4gIHBhZGRpbmc6IDE1cHggIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1iZykgIWltcG9ydGFudDsgfVxuXG4ubWFya2Rvd24tZWRpdG9yLXN0YXR1cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cblxuLnNtYWxsLWZvbnQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eHMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4vKipcclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiBNYXJrZG93biBDb250ZW50IEZvcm1hdHRpbmdcclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKi9cbi5tZC1lZGl0b3IgLm1kLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuXG4ubWQtZWRpdG9yID4gLm1kLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiBjYWxjKHZhcigtLXNwYWNpbmctMXgpIC8gMik7IH1cblxuLm1kLWVkaXRvciA+IC5tZC1oZWFkZXIge1xuICBtYXJnaW46IDA7IH1cblxuLm1kLWVkaXRvciA+IC5tZC1wcmV2aWV3IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjZGRkO1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICNkZGQ7XG4gIG1pbi1oZWlnaHQ6IDEwcHg7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi5tZC1lZGl0b3IgPiB0ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgb3V0bGluZTogMDtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjZGRkO1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICNkZGQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNlZWU7IH1cblxuLm1kLWVkaXRvciA+IHRleHRhcmVhOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4ubWQtZWRpdG9yIC5tZC1jb250cm9scyAubWQtY29udHJvbCB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAubWQtZWRpdG9yIC5tZC1jb250cm9scyAubWQtY29udHJvbDpub3QoOmhvdmVyKSB7XG4gICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpOyB9XG4gIC5tZC1lZGl0b3IgLm1kLWNvbnRyb2xzIC5tZC1jb250cm9sOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWRhcmtlcik7IH1cblxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogOTk5OTk7XG4gIHBhZGRpbmc6IDYwcHggMzBweCAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG5cbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1mb290ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1pbnB1dCxcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1wcmV2aWV3IHtcbiAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjOTk5O1xuICBsaW5lLWhlaWdodDogMS42ZW0gIWltcG9ydGFudDtcbiAgcmVzaXplOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAubWQtcHJldmlldyB7XG4gIGNvbG9yOiAjMzMzO1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAubWQtaW5wdXQ6Zm9jdXMsXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAubWQtaW5wdXQ6aG92ZXIge1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50OyB9XG5cbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAyMHB4OyB9XG5cbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5idG4tZ3JvdXAge1xuICBmbG9hdDogbm9uZTsgfVxuXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAuYnRuIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiAwIDA7XG4gIGNvbG9yOiAjYjNiM2IzOyB9XG5cbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5idG4uYWN0aXZlLFxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUgLmJ0bjphY3RpdmUsXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAuYnRuOmZvY3VzLFxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUgLmJ0bjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjMzMzOyB9XG5cbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1mdWxsc2NyZWVuLWNvbnRyb2xzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIHJpZ2h0OiAyMHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgei1pbmRleDogMTAwMjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUgLm1kLWZ1bGxzY3JlZW4tY29udHJvbHMgYSB7XG4gIGNvbG9yOiAjYjNiM2IzO1xuICBjbGVhcjogcmlnaHQ7XG4gIG1hcmdpbjogMTBweDtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1mdWxsc2NyZWVuLWNvbnRyb2xzIGE6aG92ZXIge1xuICBjb2xvcjogIzMzMztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1lZGl0b3Ige1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5tZC1lZGl0b3IgLm1kLWZ1bGxzY3JlZW4tY29udHJvbHMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZC1ub292ZXJmbG93IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTsgfVxuXG50YWJsZS5kYXRhVGFibGUge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5kYXRhVGFibGUgdGQsXG4gIHRhYmxlLmRhdGFUYWJsZSB0aCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50OyB9XG4gICAgdGFibGUuZGF0YVRhYmxlIHRkLmRhdGFUYWJsZXNfZW1wdHksXG4gICAgdGFibGUuZGF0YVRhYmxlIHRoLmRhdGFUYWJsZXNfZW1wdHkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgdGFibGUuZGF0YVRhYmxlIHRkOmZvY3VzLFxuICAgIHRhYmxlLmRhdGFUYWJsZSB0aDpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lOyB9XG4gIHRhYmxlLmRhdGFUYWJsZSA+IHRoZWFkID4gdHIgPiB0aDplbXB0eSB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLmRhdGFUYWJsZS5ub3dyYXAgdGgsXG4gIHRhYmxlLmRhdGFUYWJsZS5ub3dyYXAgdGQge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuZGl2LmRhdGFUYWJsZXNfd3JhcHBlciBkaXYuZGF0YVRhYmxlc19sZW5ndGggbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbmRpdi5kYXRhVGFibGVzX3dyYXBwZXIgZGl2LmRhdGFUYWJsZXNfbGVuZ3RoIHNlbGVjdCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS11aS1wYWRkaW5nLXhzLXYpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tdWktcGFkZGluZy14cy12KTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS11aS1wYWRkaW5nLXhzLWgpO1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC14cyk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG5kaXYuZGF0YVRhYmxlc193cmFwcGVyIGRpdi5kYXRhVGFibGVzX2ZpbHRlciB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIGRpdi5kYXRhVGFibGVzX3dyYXBwZXIgZGl2LmRhdGFUYWJsZXNfZmlsdGVyIGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICBkaXYuZGF0YVRhYmxlc193cmFwcGVyIGRpdi5kYXRhVGFibGVzX2ZpbHRlciBpbnB1dCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bzsgfVxuXG5kaXYuZGF0YVRhYmxlc193cmFwcGVyIGRpdi5kYXRhVGFibGVzX2luZm8ge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuZGl2LmRhdGFUYWJsZXNfd3JhcHBlciBkaXYuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgZGl2LmRhdGFUYWJsZXNfd3JhcHBlciBkaXYuZGF0YVRhYmxlc19wYWdpbmF0ZSB1bC5wYWdpbmF0aW9uIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbmRpdi5kYXRhVGFibGVzX3dyYXBwZXIgZGl2LmRhdGFUYWJsZXNfcHJvY2Vzc2luZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDIwMHB4O1xuICBtYXJnaW4tbGVmdDogLTEwMHB4O1xuICBtYXJnaW4tdG9wOiAtMjZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxZW0gMDsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2MsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcgPiBzcGFuLFxuICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjID4gc3BhbixcbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2MgPiBzcGFuLFxuICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkID4gc3BhbixcbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcgPiBzcGFuIHNwYW46bm90KC5zb3J0aW5nLWFycm93cyksXG4gICAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzYyA+IHNwYW4gc3Bhbjpub3QoLnNvcnRpbmctYXJyb3dzKSxcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzYyA+IHNwYW4gc3Bhbjpub3QoLnNvcnRpbmctYXJyb3dzKSxcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkID4gc3BhbiBzcGFuOm5vdCguc29ydGluZy1hcnJvd3MpLFxuICAgIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjX2Rpc2FibGVkID4gc3BhbiBzcGFuOm5vdCguc29ydGluZy1hcnJvd3MpIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nOmJlZm9yZSwgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nOmFmdGVyLFxuICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjOmJlZm9yZSxcbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzYzphZnRlcixcbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2M6YmVmb3JlLFxuICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzYzphZnRlcixcbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzY19kaXNhYmxlZDpiZWZvcmUsXG4gIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19hc2NfZGlzYWJsZWQ6YWZ0ZXIsXG4gIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjX2Rpc2FibGVkOmJlZm9yZSxcbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcgLnNvcnRpbmctYXJyb3dzLFxuICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjIC5zb3J0aW5nLWFycm93cyxcbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2MgLnNvcnRpbmctYXJyb3dzLFxuICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkIC5zb3J0aW5nLWFycm93cyxcbiAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQgLnNvcnRpbmctYXJyb3dzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZyAuc29ydGluZy1hcnJvd3M6YmVmb3JlLCB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcgLnNvcnRpbmctYXJyb3dzOmFmdGVyLFxuICAgIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19hc2MgLnNvcnRpbmctYXJyb3dzOmJlZm9yZSxcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjIC5zb3J0aW5nLWFycm93czphZnRlcixcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzYyAuc29ydGluZy1hcnJvd3M6YmVmb3JlLFxuICAgIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjIC5zb3J0aW5nLWFycm93czphZnRlcixcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkIC5zb3J0aW5nLWFycm93czpiZWZvcmUsXG4gICAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzY19kaXNhYmxlZCAuc29ydGluZy1hcnJvd3M6YWZ0ZXIsXG4gICAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQgLnNvcnRpbmctYXJyb3dzOmJlZm9yZSxcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzY19kaXNhYmxlZCAuc29ydGluZy1hcnJvd3M6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IHZhcigtLWRlY29yYXRpb24taWNvbnMpO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7IH1cbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcgLnNvcnRpbmctYXJyb3dzOmJlZm9yZSxcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjIC5zb3J0aW5nLWFycm93czpiZWZvcmUsXG4gICAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2MgLnNvcnRpbmctYXJyb3dzOmJlZm9yZSxcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkIC5zb3J0aW5nLWFycm93czpiZWZvcmUsXG4gICAgdGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQgLnNvcnRpbmctYXJyb3dzOmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb250ZW50OiBcIlxcZTkzOVwiICFpbXBvcnRhbnQ7IH1cbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcgLnNvcnRpbmctYXJyb3dzOmFmdGVyLFxuICAgIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19hc2MgLnNvcnRpbmctYXJyb3dzOmFmdGVyLFxuICAgIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjIC5zb3J0aW5nLWFycm93czphZnRlcixcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkIC5zb3J0aW5nLWFycm93czphZnRlcixcbiAgICB0YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzY19kaXNhYmxlZCAuc29ydGluZy1hcnJvd3M6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgY29udGVudDogXCJcXGU5M2FcIiAhaW1wb3J0YW50OyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjIC5zb3J0aW5nLWFycm93czphZnRlciB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19hc2MgLnNvcnRpbmctYXJyb3dzOmJlZm9yZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kaXNhYmxlZCB7XG4gIGN1cnNvcjogYXV0byAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kaXNhYmxlZCAuc29ydGluZy1hcnJvd3Mge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuZGl2LmRhdGFUYWJsZXNfc2Nyb2xsSGVhZCB0YWJsZS5kYXRhVGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGhlYWQgLnNvcnRpbmc6YWZ0ZXIsXG4gIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRoZWFkIC5zb3J0aW5nX2FzYzphZnRlcixcbiAgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGhlYWQgLnNvcnRpbmdfZGVzYzphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0Ym9keSA+IHRyOmZpcnN0LWNoaWxkID4gdGgsXG4gIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRib2R5ID4gdHI6Zmlyc3QtY2hpbGQgPiB0ZCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG5kaXYuZGF0YVRhYmxlc19zY3JvbGxGb290ID4gLmRhdGFUYWJsZXNfc2Nyb2xsRm9vdElubmVyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cbiAgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsRm9vdCA+IC5kYXRhVGFibGVzX3Njcm9sbEZvb3RJbm5lciA+IHRhYmxlIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG50YWJsZS5kYXRhVGFibGUudGFibGUtY29uZGVuc2VkID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuXG50YWJsZS5kYXRhVGFibGUudGFibGUtY29uZGVuc2VkIC5zb3J0aW5nOmFmdGVyLFxudGFibGUuZGF0YVRhYmxlLnRhYmxlLWNvbmRlbnNlZCAuc29ydGluZ19hc2M6YWZ0ZXIsXG50YWJsZS5kYXRhVGFibGUudGFibGUtY29uZGVuc2VkIC5zb3J0aW5nX2Rlc2M6YWZ0ZXIge1xuICB0b3A6IDZweDtcbiAgcmlnaHQ6IDZweDsgfVxuXG50YWJsZS50YWJsZS1ib3JkZXJlZC5kYXRhVGFibGUgdGgsXG50YWJsZS50YWJsZS1ib3JkZXJlZC5kYXRhVGFibGUgdGQge1xuICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICB0YWJsZS50YWJsZS1ib3JkZXJlZC5kYXRhVGFibGUgdGg6bGFzdC1jaGlsZCwgdGFibGUudGFibGUtYm9yZGVyZWQuZGF0YVRhYmxlIHRoOmxhc3QtY2hpbGQsXG4gIHRhYmxlLnRhYmxlLWJvcmRlcmVkLmRhdGFUYWJsZSB0ZDpsYXN0LWNoaWxkLFxuICB0YWJsZS50YWJsZS1ib3JkZXJlZC5kYXRhVGFibGUgdGQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9XG5cbnRhYmxlLnRhYmxlLWJvcmRlcmVkLmRhdGFUYWJsZSB0Ym9keSB0aCxcbnRhYmxlLnRhYmxlLWJvcmRlcmVkLmRhdGFUYWJsZSB0Ym9keSB0ZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7IH1cblxuZGl2LmRhdGFUYWJsZXNfc2Nyb2xsSGVhZCB0YWJsZS50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7IH1cblxuZGl2LnRhYmxlLXJlc3BvbnNpdmUgPiBkaXYuZGF0YVRhYmxlc193cmFwcGVyID4gZGl2LnJvdyB7XG4gIG1hcmdpbjogMDsgfVxuICBkaXYudGFibGUtcmVzcG9uc2l2ZSA+IGRpdi5kYXRhVGFibGVzX3dyYXBwZXIgPiBkaXYucm93ID4gZGl2W2NsYXNzXj1cImNvbC1cIl06Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICBkaXYudGFibGUtcmVzcG9uc2l2ZSA+IGRpdi5kYXRhVGFibGVzX3dyYXBwZXIgPiBkaXYucm93ID4gZGl2W2NsYXNzXj1cImNvbC1cIl06bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGQuY2hpbGQsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGguY2hpbGQsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGQuZGF0YVRhYmxlc19lbXB0eSB7XG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0ZC5jaGlsZDpiZWZvcmUsXG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0aC5jaGlsZDpiZWZvcmUsXG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0ZC5kYXRhVGFibGVzX2VtcHR5OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0ZC5jaGlsZCxcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0aC5jaGlsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDYwcHg7IH1cbiAgdGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ciA+IHRkLmNoaWxkIHVsLFxuICB0YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGguY2hpbGQgdWwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgdGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ciA+IHRkLmNoaWxkIHVsOmJlZm9yZSxcbiAgICB0YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGguY2hpbGQgdWw6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhYmxlLWNvbnRhaW5lci1oZWFkZXItYmcpO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiA0NHB4OyB9XG4gICAgdGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ciA+IHRkLmNoaWxkIHVsIGxpLFxuICAgIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0aC5jaGlsZCB1bCBsaSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRkOmZpcnN0LWNoaWxkLFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0cltyb2xlPVwicm93XCJdID4gdGg6Zmlyc3QtY2hpbGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogNjBweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRkOmZpcnN0LWNoaWxkOmJlZm9yZSxcbiAgdGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0cltyb2xlPVwicm93XCJdID4gdGg6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRkOmZpcnN0LWNoaWxkIC5idG4tdGFibGUtY29sbGFwc2UsXG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRoOmZpcnN0LWNoaWxkIC5idG4tdGFibGUtY29sbGFwc2Uge1xuICAgIHRvcDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtaW5kZW50OiAwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWJsZS1jb250YWluZXItaGVhZGVyLWJnKTsgfVxuICAgIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRkOmZpcnN0LWNoaWxkIC5idG4tdGFibGUtY29sbGFwc2U6YmVmb3JlLFxuICAgIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRoOmZpcnN0LWNoaWxkIC5idG4tdGFibGUtY29sbGFwc2U6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCk7XG4gICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7IH1cbiAgICB0YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyW3JvbGU9XCJyb3dcIl0gPiB0ZDpmaXJzdC1jaGlsZCAuYnRuLXRhYmxlLWNvbGxhcHNlOmJlZm9yZSxcbiAgICB0YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyW3JvbGU9XCJyb3dcIl0gPiB0aDpmaXJzdC1jaGlsZCAuYnRuLXRhYmxlLWNvbGxhcHNlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTkzMVwiOyB9XG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRkOmZpcnN0LWNoaWxkIC5wcm9kdWN0LWdyYXBoaWMsXG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRoOmZpcnN0LWNoaWxkIC5wcm9kdWN0LWdyYXBoaWMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ci5wYXJlbnQgPiB0ZDpmaXJzdC1jaGlsZCAuYnRuLXRhYmxlLWNvbGxhcHNlLFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ci5wYXJlbnQgPiB0aDpmaXJzdC1jaGlsZCAuYnRuLXRhYmxlLWNvbGxhcHNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFibGUtY29udGFpbmVyLWhlYWRlci1iZykgIWltcG9ydGFudDsgfVxuICB0YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyLnBhcmVudCA+IHRkOmZpcnN0LWNoaWxkIC5idG4tdGFibGUtY29sbGFwc2U6YmVmb3JlLFxuICB0YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyLnBhcmVudCA+IHRoOmZpcnN0LWNoaWxkIC5idG4tdGFibGUtY29sbGFwc2U6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkyY1wiOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ciA+IHRkLmNvbnRyb2wsXG50YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIgPiB0aC5jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgdGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGQuY29udHJvbDpiZWZvcmUsXG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ciA+IHRoLmNvbnRyb2w6YmVmb3JlIHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFibGUtY29udGFpbmVyLWhlYWRlci1iZyk7IH1cbiAgICB0YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIgPiB0ZC5jb250cm9sOmJlZm9yZTpiZWZvcmUsXG4gICAgdGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGguY29udHJvbDpiZWZvcmU6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCk7XG4gICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7IH1cbiAgICB0YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIgPiB0ZC5jb250cm9sOmJlZm9yZTpiZWZvcmUsXG4gICAgdGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGguY29udHJvbDpiZWZvcmU6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTMxXCI7IH1cblxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyLnBhcmVudCB0ZC5jb250cm9sOmJlZm9yZSxcbnRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ci5wYXJlbnQgdGguY29udHJvbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWJsZS1jb250YWluZXItaGVhZGVyLWJnKSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ci5wYXJlbnQgdGQuY29udHJvbDpiZWZvcmU6YmVmb3JlLFxuICB0YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIucGFyZW50IHRoLmNvbnRyb2w6YmVmb3JlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MmNcIjsgfVxuXG50YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHtcbiAgcGFkZGluZzogMC41ZW0gMWVtOyB9XG4gIHRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuZGF0YVRhYmxlID4gdGJvZHkgPiB0ci5jaGlsZCB1bC5kdHItZGV0YWlscyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIHRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQgdWwuZHRyLWRldGFpbHMgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICB0YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHVsLmR0ci1kZXRhaWxzID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgdGFibGUuZGF0YVRhYmxlID4gdGJvZHkgPiB0ci5jaGlsZCB1bC5kdHItZGV0YWlscyA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIHRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQgc3Bhbi5kdHItdGl0bGUge1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgdGFibGUuZGF0YVRhYmxlID4gdGJvZHkgPiB0ci5jaGlsZCBzcGFuLmR0ci10aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIjpcIjsgfVxuICB0YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHNwYW4uZHRyLWRhdGEgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmJ0bi10YWJsZS1jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuZGl2LmR0ci1tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7XG4gIHBhZGRpbmc6IDEwZW0gMWVtOyB9XG4gIGRpdi5kdHItbW9kYWwgZGl2LmR0ci1tb2RhbC1kaXNwbGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiA1MCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHotaW5kZXg6IDEwMjtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY3O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICAgIGJveC1zaGFkb3c6IDAgMTJweCAzMHB4IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuICBkaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDFlbTsgfVxuICBkaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDZweDtcbiAgICByaWdodDogNnB4O1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMTI7IH1cbiAgICBkaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtY2xvc2U6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTsgfVxuICBkaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtYmFja2dyb3VuZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxMDE7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG5cbnRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiA2MHB4ICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQgLmJ0bi10YWJsZS1jb2xsYXBzZSB7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtaW5kZW50OiAwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjdmODtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFibGUtY29udGFpbmVyLWhlYWRlci1iZyk7IH1cbiAgICB0YWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRoZWFkID4gdHIgPiB0aDpmaXJzdC1jaGlsZCAuYnRuLXRhYmxlLWNvbGxhcHNlOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtc21hbGwpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpOyB9XG4gICAgdGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQgLmJ0bi10YWJsZS1jb2xsYXBzZTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MzFcIjsgfVxuICAgIHRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIC5idG4tdGFibGUtY29sbGFwc2UuZXhwYW5kZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFibGUtY29udGFpbmVyLWhlYWRlci1iZykgIWltcG9ydGFudDsgfVxuICAgICAgdGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQgLmJ0bi10YWJsZS1jb2xsYXBzZS5leHBhbmRlZDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTkyY1wiOyB9XG4gIHRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIC5jaGVja2JveC1zdHlsZWQge1xuICAgIG1hcmdpbi1yaWdodDogLTFweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgZGl2LmR0ci1tb2RhbCBkaXYuZHRyLW1vZGFsLWRpc3BsYXkge1xuICAgIHdpZHRoOiA5NSU7IH0gfVxuXG4uaW50bC10ZWwtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmludGwtdGVsLWlucHV0ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5pbnRsLXRlbC1pbnB1dCAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuaW50bC10ZWwtaW5wdXQgLnYtaGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5pbnRsLXRlbC1pbnB1dCBpbnB1dCwgLmludGwtdGVsLWlucHV0IGlucHV0W3R5cGU9dGV4dF0sIC5pbnRsLXRlbC1pbnB1dCBpbnB1dFt0eXBlPXRlbF0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxMDZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmludGwtdGVsLWlucHV0IC5mbGFnLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogMXB4OyB9XG4gIC5pbnRsLXRlbC1pbnB1dCAuc2VsZWN0ZWQtZmxhZyB7XG4gICAgei1pbmRleDogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDk0cHg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMCAyMHB4IDAgMTJweDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXIpOyB9XG4gICAgLmludGwtdGVsLWlucHV0IC5zZWxlY3RlZC1mbGFnOmZvY3VzLXZpc2libGUge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgICAgIC5pbnRsLXRlbC1pbnB1dCAuc2VsZWN0ZWQtZmxhZzpmb2N1cy12aXNpYmxlIC5pdGktYXJyb3cge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICAgIC5pbnRsLXRlbC1pbnB1dCAuc2VsZWN0ZWQtZmxhZyAuaXRpLWZsYWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiBhdXRvOyB9XG4gICAgLmludGwtdGVsLWlucHV0IC5zZWxlY3RlZC1mbGFnIC5pdGktYXJyb3cge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgcmlnaHQ6IDEycHg7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCB2YXIoLS11aS1pY29uLWNvbG9yKTsgfVxuICAgICAgLmludGwtdGVsLWlucHV0IC5zZWxlY3RlZC1mbGFnIC5pdGktYXJyb3cudXAge1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgdmFyKC0tdWktaWNvbi1jb2xvcik7IH1cbiAgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxcHg7XG4gICAgcmlnaHQ6IDFweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMCAwIDAgLTFweDtcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlcik7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdC5kcm9wdXAge1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDsgfVxuICAgIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5mbGFnLWJveCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMjBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xuICAgICAgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3Qge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuZGl2aWRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlcik7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuY291bnRyeSB7XG4gICAgICBwYWRkaW5nOiA5cHggMTJweCA3cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3QgLmNvdW50cnkgLmRpYWwtY29kZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG4gICAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuY291bnRyeS5hY3RpdmUge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAgIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5jb3VudHJ5LmhpZ2hsaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktbmF2LWxpbmstYWN0aXZlLWJnKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gICAgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3QgLmZsYWctYm94LCAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuY291bnRyeS1uYW1lLCAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuZGlhbC1jb2RlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuZmxhZy1ib3gsIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5jb3VudHJ5LW5hbWUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5jb3VudHJ5LW5hbWUge1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gLmZsYWctY29udGFpbmVyLCAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlIC5mbGFnLWNvbnRhaW5lciB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDsgfVxuICAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gLmZsYWctY29udGFpbmVyOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gLmZsYWctY29udGFpbmVyOmhvdmVyIC5zZWxlY3RlZC1mbGFnIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gICAgICAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gLmZsYWctY29udGFpbmVyOmhvdmVyIC5zZWxlY3RlZC1mbGFnIC5pdGktYXJyb3cge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gaW5wdXRbZGlzYWJsZWRdICsgLmZsYWctY29udGFpbmVyOmhvdmVyLCAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gaW5wdXRbcmVhZG9ubHldICsgLmZsYWctY29udGFpbmVyOmhvdmVyIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gaW5wdXRbZGlzYWJsZWRdICsgLmZsYWctY29udGFpbmVyOmhvdmVyIC5zZWxlY3RlZC1mbGFnLCAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gaW5wdXRbcmVhZG9ubHldICsgLmZsYWctY29udGFpbmVyOmhvdmVyIC5zZWxlY3RlZC1mbGFnIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUgLnNlbGVjdGVkLWZsYWcge1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUgLnNlbGVjdGVkLWRpYWwtY29kZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmctdG9wOiAzcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyOHB4OyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5pdGktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTAwMHB4O1xuICAgIGxlZnQ6IC0xMDAwcHg7XG4gICAgei1pbmRleDogMTA2MDtcbiAgICBwYWRkaW5nOiAxcHg7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQuaXRpLWNvbnRhaW5lcjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLml0aS1tb2JpbGUgLmludGwtdGVsLWlucHV0Lml0aS1jb250YWluZXIge1xuICB0b3A6IDMwcHg7XG4gIGJvdHRvbTogMzBweDtcbiAgbGVmdDogMzBweDtcbiAgcmlnaHQ6IDMwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uaXRpLW1vYmlsZSAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5pdGktbW9iaWxlIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5jb3VudHJ5IHtcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG5cbi5pdGktZmxhZyB7XG4gIHdpZHRoOiAyMHB4OyB9XG4gIC5pdGktZmxhZy5iZSB7XG4gICAgd2lkdGg6IDE4cHg7IH1cbiAgLml0aS1mbGFnLmNoIHtcbiAgICB3aWR0aDogMTVweDsgfVxuICAuaXRpLWZsYWcubWMge1xuICAgIHdpZHRoOiAxOXB4OyB9XG4gIC5pdGktZmxhZy5uZSB7XG4gICAgd2lkdGg6IDE4cHg7IH1cbiAgLml0aS1mbGFnLm5wIHtcbiAgICB3aWR0aDogMTNweDsgfVxuICAuaXRpLWZsYWcudmEge1xuICAgIHdpZHRoOiAxNXB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyIC8gMSksIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgLml0aS1mbGFnIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNTYzMHB4IDE1cHg7IH0gfVxuICAuaXRpLWZsYWcuYWMge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5hZCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYWUge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAwcHg7IH1cbiAgLml0aS1mbGFnLmFmIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5hZyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04OHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYWkge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5hbCB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzJweCAwcHg7IH1cbiAgLml0aS1mbGFnLmFtIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1NHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYW8ge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5hcSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOThweCAwcHg7IH1cbiAgLml0aS1mbGFnLmFyIHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYXMge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQycHggMHB4OyB9XG4gIC5pdGktZmxhZy5hdCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjRweCAwcHg7IH1cbiAgLml0aS1mbGFnLmF1IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4NnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYXcge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5heCB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMzBweCAwcHg7IH1cbiAgLml0aS1mbGFnLmF6IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYmEge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzc0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5iYiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zOTZweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJkIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxOHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYmUge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5iZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjBweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJnIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYmgge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTA0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5iaSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjZweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJqIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0OHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYmwge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTcwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ibSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01OTJweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJuIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTYxNHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYm8ge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjM2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5icSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NThweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJyIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY4MHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYnMge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzAycHggMHB4OyB9XG4gIC5pdGktZmxhZy5idCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC03MjRweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJ2IHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTc0NnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYncge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzY4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ieSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC03OTBweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJ6IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgxMnB4IDBweDsgfVxuICAuaXRpLWZsYWcuY2Ege1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODM0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jYyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04NTZweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNkIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTg3OHB4IDBweDsgfVxuICAuaXRpLWZsYWcuY2Yge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTAwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5jZyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05MjJweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNoIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk0NHB4IDBweDsgfVxuICAuaXRpLWZsYWcuY2kge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTYxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5jayB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05ODNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNsIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMDVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNtIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMjdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNuIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwNDlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNvIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwNzFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNwIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNyIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmN1IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMzdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmN2IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExNTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmN3IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExODFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmN4IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMDNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmN5IHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMjVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmN6IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyNDdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmRlIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyNjlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmRnIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmRqIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzMTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmRrIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzMzVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmRtIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzNTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmRvIHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzNzlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmR6IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0MDFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmVhIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0MjNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmVjIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NDVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmVlIHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NjdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmVnIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0ODlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmVoIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmVyIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MzNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmVzIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1NTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmV0IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1NzdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmV1IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1OTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmZpIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MjFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmZqIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2NDNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmZrIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2NjVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmZtIHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2ODdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmZvIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3MDlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmZyIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3MzFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdhIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdiIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NzVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdkIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3OTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdlIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdmIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4NDFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdnIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4NjNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdoIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4ODVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdpIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MDdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdsIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MjlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdtIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5NTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmduIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5NzNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdwIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5OTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdxIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdyIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMzlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmdzIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwNjFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmd0IHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwODNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmd1IHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxMDVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmd3IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxMjdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmd5IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxNDlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmhrIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxNzFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmhtIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxOTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmhuIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmhyIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMzdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmh0IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmh1IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyODFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmljIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzMDNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmlkIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzMjVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmllIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzNDdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmlsIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzNjlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmltIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzOTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmluIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmlvIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MzVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmlxIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0NTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmlyIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0NzlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmlzIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1MDFweCAwcHg7IH1cbiAgLml0aS1mbGFnLml0IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1MjNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmplIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NDVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmptIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NjdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmpvIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1ODlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmpwIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2MTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmtlIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2MzNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmtnIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2NTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmtoIHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2NzdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmtpIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2OTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmttIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3MjFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmtuIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3NDNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmtwIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3NjVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmtyIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3ODdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmt3IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4MDlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmt5IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4MzFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmt6IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4NTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmxhIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4NzVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmxiIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmxjIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5MTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmxpIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5NDFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmxrIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5NjNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmxyIHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5ODVweCAwcHg7IH1cbiAgLml0aS1mbGFnLmxzIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwMDdweCAwcHg7IH1cbiAgLml0aS1mbGFnLmx0IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwMjlweCAwcHg7IH1cbiAgLml0aS1mbGFnLmx1IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwNTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLmx2IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwNzNweCAwcHg7IH1cbiAgLml0aS1mbGFnLmx5IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwOTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1hIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxMTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1jIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxMzlweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1kIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxNjBweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1lIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxODJweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1mIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMDRweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1nIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMjZweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1oIHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyNDhweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1rIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyNzBweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1sIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyOTJweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1tIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzMTRweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1uIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzMzZweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1vIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzNThweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1wIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzODBweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1xIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0MDJweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1yIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0MjRweCAwcHg7IH1cbiAgLml0aS1mbGFnLm1zIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0NDZweCAwcHg7IH1cbiAgLml0aS1mbGFnLm10IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0NjhweCAwcHg7IH1cbiAgLml0aS1mbGFnLm11IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0OTBweCAwcHg7IH1cbiAgLml0aS1mbGFnLm12IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MTJweCAwcHg7IH1cbiAgLml0aS1mbGFnLm13IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MzRweCAwcHg7IH1cbiAgLml0aS1mbGFnLm14IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1NTZweCAwcHg7IH1cbiAgLml0aS1mbGFnLm15IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1NzhweCAwcHg7IH1cbiAgLml0aS1mbGFnLm16IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2MDBweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5hIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2MjJweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5jIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2NDRweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5lIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2NjZweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5mIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2ODZweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5nIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3MDhweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5pIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3MzBweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5sIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3NTJweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5vIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3NzRweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5wIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3OTZweCAwcHg7IH1cbiAgLml0aS1mbGFnLm5yIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLm51IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MzNweCAwcHg7IH1cbiAgLml0aS1mbGFnLm56IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4NTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLm9tIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4NzdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBhIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4OTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBlIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5MjFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBmIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5NDNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBnIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5NjVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBoIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5ODdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBrIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwMDlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBsIHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwMzFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBtIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwNTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBuIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwNzVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnByIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwOTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnBzIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxMTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnB0IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNDFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnB3IHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNjNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnB5IHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxODVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnFhIHtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjA3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5yZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjI5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ybyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjUxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ycyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjczcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ydSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00Mjk1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ydyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzE3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zYSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzM5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zYiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzYxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5zYyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzgzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5zZCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDA1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zZSB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDI3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zZyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDQ5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zaCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDcxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5zaSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDkzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5zaiB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTE1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zayB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTM3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zbCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTU5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zbSB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTgxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5zbiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjAzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5zbyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjI1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjQ3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zcyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjY5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zdCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjkxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5zdiB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NzEzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5zeCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NzM1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zeSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NzU3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5zeiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00Nzc5cHggMHB4OyB9XG4gIC5pdGktZmxhZy50YSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODAxcHggMHB4OyB9XG4gIC5pdGktZmxhZy50YyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODIzcHggMHB4OyB9XG4gIC5pdGktZmxhZy50ZCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODQ1cHggMHB4OyB9XG4gIC5pdGktZmxhZy50ZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODY3cHggMHB4OyB9XG4gIC5pdGktZmxhZy50ZyB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODg5cHggMHB4OyB9XG4gIC5pdGktZmxhZy50aCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTExcHggMHB4OyB9XG4gIC5pdGktZmxhZy50aiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTMzcHggMHB4OyB9XG4gIC5pdGktZmxhZy50ayB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTU1cHggMHB4OyB9XG4gIC5pdGktZmxhZy50bCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTc3cHggMHB4OyB9XG4gIC5pdGktZmxhZy50bSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTk5cHggMHB4OyB9XG4gIC5pdGktZmxhZy50biB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDIxcHggMHB4OyB9XG4gIC5pdGktZmxhZy50byB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDQzcHggMHB4OyB9XG4gIC5pdGktZmxhZy50ciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDY1cHggMHB4OyB9XG4gIC5pdGktZmxhZy50dCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDg3cHggMHB4OyB9XG4gIC5pdGktZmxhZy50diB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTA5cHggMHB4OyB9XG4gIC5pdGktZmxhZy50dyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTMxcHggMHB4OyB9XG4gIC5pdGktZmxhZy50eiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTUzcHggMHB4OyB9XG4gIC5pdGktZmxhZy51YSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTc1cHggMHB4OyB9XG4gIC5pdGktZmxhZy51ZyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTk3cHggMHB4OyB9XG4gIC5pdGktZmxhZy51bSB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjE5cHggMHB4OyB9XG4gIC5pdGktZmxhZy51cyB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjQxcHggMHB4OyB9XG4gIC5pdGktZmxhZy51eSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjYzcHggMHB4OyB9XG4gIC5pdGktZmxhZy51eiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01Mjg1cHggMHB4OyB9XG4gIC5pdGktZmxhZy52YSB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzA3cHggMHB4OyB9XG4gIC5pdGktZmxhZy52YyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzI0cHggMHB4OyB9XG4gIC5pdGktZmxhZy52ZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzQ2cHggMHB4OyB9XG4gIC5pdGktZmxhZy52ZyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzY4cHggMHB4OyB9XG4gIC5pdGktZmxhZy52aSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzkwcHggMHB4OyB9XG4gIC5pdGktZmxhZy52biB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDEycHggMHB4OyB9XG4gIC5pdGktZmxhZy52dSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDM0cHggMHB4OyB9XG4gIC5pdGktZmxhZy53ZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDU2cHggMHB4OyB9XG4gIC5pdGktZmxhZy53cyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDc4cHggMHB4OyB9XG4gIC5pdGktZmxhZy54ayB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTAwcHggMHB4OyB9XG4gIC5pdGktZmxhZy55ZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTIycHggMHB4OyB9XG4gIC5pdGktZmxhZy55dCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTQ0cHggMHB4OyB9XG4gIC5pdGktZmxhZy56YSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTY2cHggMHB4OyB9XG4gIC5pdGktZmxhZy56bSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTg4cHggMHB4OyB9XG4gIC5pdGktZmxhZy56dyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NjEwcHggMHB4OyB9XG5cbi5pdGktZmxhZyB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMXB4IDBweCAjODg4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZmxhZ3MucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREJEQkRCO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyMHB4IDA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIgLyAxKSwgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICAuaXRpLWZsYWcge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ZsYWdzQDJ4LnBuZ1wiKTsgfSB9XG5cbi5pdGktZmxhZy5ucCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQnV0dG9ucyAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogdmFyKC0tYnRuLWJveC1zaGFkb3cpOyB9XG4gIC5idG4tcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5idG4tcmVnaXN0ZXItZG9tYWluIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgLmJ0bi1pbnB1dC1wYWRkZWQtcmVzcG9uc2l2ZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzgwcHgpIHtcbiAgLmJ0bi1pbnB1dC1wYWRkZWQtcmVzcG9uc2l2ZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBCdXR0b25zIC0gUHJpbWFyeSBCbG9ja1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uYXBwLW5hdi1wcmltYXJ5IC5idG4uYnRuLW91dGxpbmUsXG4uYXBwLW5hdi1zZWNvbmRhcnkgLmJ0bi5idG4tb3V0bGluZSxcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuLmJ0bi1vdXRsaW5lLFxuLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bi5idG4tb3V0bGluZSB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1vdXRsaW5lLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1vdXRsaW5lLWJvcmRlci1jb2xvcik7IH1cbiAgLmFwcC1uYXYtcHJpbWFyeSAuYnRuLmJ0bi1vdXRsaW5lOmhvdmVyLFxuICAuYXBwLW5hdi1zZWNvbmRhcnkgLmJ0bi5idG4tb3V0bGluZTpob3ZlcixcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG4uYnRuLW91dGxpbmU6aG92ZXIsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG4uYnRuLW91dGxpbmU6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1vdXRsaW5lLWhvdmVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLW91dGxpbmUtaG92ZXItYmcpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1vdXRsaW5lLWhvdmVyLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDsgfVxuICAuYXBwLW5hdi1wcmltYXJ5IC5idG4uYnRuLW91dGxpbmU6Zm9jdXMsIC5hcHAtbmF2LXByaW1hcnkgLmJ0bi5idG4tb3V0bGluZTpmb2N1cy12aXNpYmxlLCAuYXBwLW5hdi1wcmltYXJ5IC5idG4uYnRuLW91dGxpbmU6YWN0aXZlLFxuICAuYXBwLW5hdi1zZWNvbmRhcnkgLmJ0bi5idG4tb3V0bGluZTpmb2N1cyxcbiAgLmFwcC1uYXYtc2Vjb25kYXJ5IC5idG4uYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgLmFwcC1uYXYtc2Vjb25kYXJ5IC5idG4uYnRuLW91dGxpbmU6YWN0aXZlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bi5idG4tb3V0bGluZTpmb2N1cyxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG4uYnRuLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG4uYnRuLW91dGxpbmU6YWN0aXZlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuLmJ0bi1vdXRsaW5lOmZvY3VzLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuLmJ0bi1vdXRsaW5lOmZvY3VzLXZpc2libGUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG4uYnRuLW91dGxpbmU6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tb3V0bGluZS1ob3Zlci1jb2xvcikgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWFjdGl2ZS1idG4tb3V0bGluZS1ob3Zlci1iZykgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLW91dGxpbmUtYWN0aXZlLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSxcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLFxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbi5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0biksXG4ucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbi5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbi5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSxcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0biksXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWJvcmRlci1jb2xvcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmZvY3VzLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6Zm9jdXMsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpmb2N1cy12aXNpYmxlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZm9jdXMsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpmb2N1cyxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmZvY3VzLXZpc2libGUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5mb2N1cyxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpmb2N1cyxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpmb2N1cy12aXNpYmxlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmZvY3VzLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpmb2N1cyxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZm9jdXMsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmZvY3VzLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpmb2N1cy12aXNpYmxlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5mb2N1cyxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmZvY3VzLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6Zm9jdXMtdmlzaWJsZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmZvY3VzLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmZvY3VzLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmZvY3VzLXZpc2libGUsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZm9jdXMsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6Zm9jdXMsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5mb2N1cyxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6Zm9jdXMsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmZvY3VzLXZpc2libGUsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmZvY3VzLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6Zm9jdXMsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpmb2N1cy12aXNpYmxlLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZm9jdXMsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpmb2N1cyxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmZvY3VzLXZpc2libGUsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5mb2N1cyxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmZvY3VzLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6Zm9jdXMtdmlzaWJsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmZvY3VzLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmZvY3VzLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmZvY3VzLXZpc2libGUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZm9jdXMsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6Zm9jdXMsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6Zm9jdXMtdmlzaWJsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmhvdmVyLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6aG92ZXIsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpob3ZlcixcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpob3ZlcixcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6aG92ZXIsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmhvdmVyLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6aG92ZXIsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6aG92ZXIsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6aG92ZXIsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmhvdmVyLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6aG92ZXIsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpob3ZlcixcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmhvdmVyLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmhvdmVyLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4taG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWhvdmVyLWJvcmRlci1jb2xvcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tYWN0aXZlLWJvcmRlci1jb2xvcik7IH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPiAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID5cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPlxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWhvdmVyLWJvcmRlci1jb2xvcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSksXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSksXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cyxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlcixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlcixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlcixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlcixcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4taG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlcixcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cyxcbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4gICAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmFjdGl2ZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYWN0aXZlLFxuICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmFjdGl2ZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6YWN0aXZlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCk6YWN0aXZlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bik6YWN0aXZlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKTphY3RpdmUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTphY3RpdmUsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTphY3RpdmUsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmFjdGl2ZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpOmFjdGl2ZSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pOmFjdGl2ZSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmFjdGl2ZSxcbiAgLm9wZW4gPlxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bik6YWN0aXZlLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kcm9wZG93bi10b2dnbGUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTphY3RpdmUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKTphY3RpdmUsXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuYWN0aXZlLFxuICAub3BlbiA+XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZHJvcGRvd24tdG9nZ2xlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pOmFjdGl2ZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5hY3RpdmUsXG4gIC5vcGVuID5cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZClbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZClbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSB7XG4gICAgb3BhY2l0eTogdmFyKC0tYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZClbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKVtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKVtkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZClbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKVtkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKVtkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksXG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKS5kaXNhYmxlZDpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKVtkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksXG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bilbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjY7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmJhZGdlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikgLmJhZGdlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmJhZGdlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5iYWRnZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikgLmJhZGdlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSAuYmFkZ2UsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAuYmFkZ2UsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikgLmJhZGdlLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIC5iYWRnZSxcbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmJhZGdlLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0bikgLmJhZGdlLFxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0bikgLmJhZGdlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmJhZGdlLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06bm90KC5idG4pIC5iYWRnZSxcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOm5vdCguYnRuKSAuYmFkZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tY29sb3IpOyB9XG5cbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2VzcyB7XG4gIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzcy5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1ib3JkZXIpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1ib3JkZXIpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJvcmRlcik7IH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1ib3JkZXIpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3M6YWN0aXZlLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3MuYWN0aXZlLFxuICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2Vzc1tkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2VzcyB7XG4gICAgb3BhY2l0eTogdmFyKC0tYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tc3VjY2VzcyAubG9hZGVyIC5zcGlubmVyID4gZGl2IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1zdWNjZXNzLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3NbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNjsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLXN1Y2Nlc3MgLmJhZGdlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlciB7XG4gIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kZWZhdWx0LWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ib3JkZXIpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlcjpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlci5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJvcmRlcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1hY3RpdmUtYm9yZGVyKTsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJvcmRlcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlci5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXIuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyOmFjdGl2ZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXIuYWN0aXZlLFxuICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlci5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLCAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlcltkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlci5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVyIC5idG4tZGFuZ2VyIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlci5kaXNhYmxlZDpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSwgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0bi1kYW5nZXJbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNjsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciAuYnRuLWRhbmdlciAuYmFkZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1iZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtY29sb3IpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIEJ1dHRvbnMgLSBTb2NpYWwgQnV0dG9uc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uc29jaWFsLXNpZ25pbi1idG5zOm5vdCguc29jaWFsLXNpZ25pbi1idG5zLWNpcmNsZSkgLmJ0bi1zb2NpYWw6YmVmb3JlLFxuLnNvY2lhbC1zaWduaW4tYnRuczpub3QoLnNvY2lhbC1zaWduaW4tYnRucy1jaXJjbGUpIC5idG4tc29jaWFsIGkge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5zb2NpYWwtc2lnbmluLWJ0bnM6bm90KC5zb2NpYWwtc2lnbmluLWJ0bnMtY2lyY2xlKSAuYnRuLXNvY2lhbDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7IH1cblxuLnNvY2lhbC1zaWduaW4tYnRucy1jaXJjbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiAwIC04cHg7IH1cbiAgLnNvY2lhbC1zaWduaW4tYnRucy1jaXJjbGUgLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cblxuLmJ0bi1zb2NpYWwge1xuICBoZWlnaHQ6IHZhcigtLWJ0bi1zb2NpYWwtaGVpZ2h0KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tc29jaWFsLWJvcmRlci1yYWRpdXMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDsgfVxuICAuYnRuLXNvY2lhbCBpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWluZGVudDogMDsgfVxuICAuYnRuLXNvY2lhbCBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJ0bi1zb2NpYWwuYnRuIHtcbiAgICBoZWlnaHQ6IHZhcigtLWJ0bi1zb2NpYWwtaGVpZ2h0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWJ0bi1zb2NpYWwtZm9udC1zaXplKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWJ0bi1zb2NpYWwtcGFkZGluZy1oKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1idG4tc29jaWFsLXBhZGRpbmctaCk7IH1cbiAgICAuYnRuLXNvY2lhbC5idG4tZmFjZWJvb2sge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZmFjZWJvb2stY29sb3IpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc29jaWFsLWZhY2Vib29rLWJvcmRlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tc29jaWFsLWZhY2Vib29rLWJnKTsgfVxuICAgICAgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICBtaW4td2lkdGg6IDE4cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjRweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9hdXRoL2xvZ28tZmFjZWJvb2suc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAuYnRuLXNvY2lhbC5idG4tZmFjZWJvb2s6aG92ZXI6bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCksIC5idG4tc29jaWFsLmJ0bi1mYWNlYm9vazpmb2N1czpub3QoLmRpc2FibGVkKTpub3QoOmRpc2FibGVkKSwgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rOmZvY3VzLXZpc2libGU6bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCksIC5idG4tc29jaWFsLmJ0bi1mYWNlYm9vazphY3RpdmU6bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCksIC5idG4tc29jaWFsLmJ0bi1mYWNlYm9vay5hY3RpdmU6bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCkge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXNvY2lhbC1mYWNlYm9vay1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZmFjZWJvb2staG92ZXItYmcpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZmFjZWJvb2staG92ZXItYm9yZGVyKTsgfVxuICAgICAgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rW2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rW2Rpc2FibGVkXTpmb2N1cywgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLCAuYnRuLXNvY2lhbC5idG4tZmFjZWJvb2tbZGlzYWJsZWRdOmFjdGl2ZSwgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rW2Rpc2FibGVkXS5hY3RpdmUsIC5idG4tc29jaWFsLmJ0bi1mYWNlYm9vay5kaXNhYmxlZDpob3ZlciwgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rLmRpc2FibGVkOmZvY3VzLCAuYnRuLXNvY2lhbC5idG4tZmFjZWJvb2suZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rLmRpc2FibGVkOmFjdGl2ZSwgLmJ0bi1zb2NpYWwuYnRuLWZhY2Vib29rLmRpc2FibGVkLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZmFjZWJvb2stYmcpOyB9XG4gICAgICAuYnRuLXNvY2lhbC5idG4tZmFjZWJvb2sgaSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYnRuLXNvY2lhbC5idG4tZ29vZ2xlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tc29jaWFsLWdvb2dsZS1jb2xvcik7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZ29vZ2xlLWJvcmRlci1jb2xvcik7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAuYnRuLXNvY2lhbC5idG4tZ29vZ2xlLmdfaWRfc2lnbmluIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IGF1dG87IH1cbiAgICAgICAgLmJ0bi1zb2NpYWwuYnRuLWdvb2dsZS5nX2lkX3NpZ25pbiA+IC5TOWdVcmYtWW9aNGpmIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tYnRuLXNvY2lhbC1oZWlnaHQpICsgNHB4KTsgfVxuICAgICAgICAgIC5idG4tc29jaWFsLmJ0bi1nb29nbGUuZ19pZF9zaWduaW4gPiAuUzlnVXJmLVlvWjRqZiA+IGRpdiB7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tYnRuLXNvY2lhbC1oZWlnaHQpICsgNHB4KTsgfVxuICAgICAgICAgICAgLmJ0bi1zb2NpYWwuYnRuLWdvb2dsZS5nX2lkX3NpZ25pbiA+IC5TOWdVcmYtWW9aNGpmID4gZGl2ID4gLm5zbTdCYi1IelY3bS1MZ2JzU2Uge1xuICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tYnRuLXNvY2lhbC1oZWlnaHQpKTtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXNvY2lhbC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuICAgICAgICAgICAgICAuYnRuLXNvY2lhbC5idG4tZ29vZ2xlLmdfaWRfc2lnbmluID4gLlM5Z1VyZi1Zb1o0amYgPiBkaXYgPiAubnNtN0JiLUh6VjdtLUxnYnNTZSAubnNtN0JiLUh6VjdtLUxnYnNTZS1CUHJXSWQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYnRuLXNvY2lhbC1mb250LXNpemUpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idG4tYmFzZS1mb250LXdlaWdodCk7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWJ0bi1mb250LWZhbWlseSk7IH1cbiAgICAgICAgICAgIC5idG4tc29jaWFsLmJ0bi1nb29nbGUuZ19pZF9zaWduaW4gPiAuUzlnVXJmLVlvWjRqZiA+IGRpdjplbXB0eSB7XG4gICAgICAgICAgICAgIGhlaWdodDogMDsgfVxuICAgICAgICAgICAgICAuYnRuLXNvY2lhbC5idG4tZ29vZ2xlLmdfaWRfc2lnbmluID4gLlM5Z1VyZi1Zb1o0amYgPiBkaXY6ZW1wdHkgKyBkaXYgPiBpZnJhbWUsXG4gICAgICAgICAgICAgIC5idG4tc29jaWFsLmJ0bi1nb29nbGUuZ19pZF9zaWduaW4gPiAuUzlnVXJmLVlvWjRqZiA+IGRpdjplbXB0eSArIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5idG4tc29jaWFsLmJ0bi1nb29nbGU6bm90KC5nX2lkX3NpZ25pbik6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIG1pbi13aWR0aDogMThweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2F1dGgvbG9nby1nb29nbGUuc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAuYnRuLXNvY2lhbC5idG4tZ29vZ2xlOmhvdmVyLCAuYnRuLXNvY2lhbC5idG4tZ29vZ2xlOmZvY3VzLCAuYnRuLXNvY2lhbC5idG4tZ29vZ2xlOmZvY3VzLXZpc2libGUsIC5idG4tc29jaWFsLmJ0bi1nb29nbGU6YWN0aXZlLCAuYnRuLXNvY2lhbC5idG4tZ29vZ2xlLmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXNvY2lhbC1nb29nbGUtYm9yZGVyLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgLmJ0bi1zb2NpYWwuYnRuLWdvb2dsZSBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmJ0bi1zb2NpYWwuYnRuLXR3aXR0ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtdHdpdHRlci1jb2xvcik7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtdHdpdHRlci1iZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tc29jaWFsLXR3aXR0ZXItYmcpOyB9XG4gICAgICAuYnRuLXNvY2lhbC5idG4tdHdpdHRlcjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgbWluLXdpZHRoOiAxOHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYXV0aC9sb2dvLXR3aXR0ZXIuc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAuYnRuLXNvY2lhbC5idG4tdHdpdHRlcjpob3ZlciwgLmJ0bi1zb2NpYWwuYnRuLXR3aXR0ZXI6Zm9jdXMsIC5idG4tc29jaWFsLmJ0bi10d2l0dGVyOmZvY3VzLXZpc2libGUsIC5idG4tc29jaWFsLmJ0bi10d2l0dGVyOmFjdGl2ZSwgLmJ0bi1zb2NpYWwuYnRuLXR3aXR0ZXIuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtdHdpdHRlci1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtdHdpdHRlci1ob3Zlci1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXNvY2lhbC10d2l0dGVyLWJvcmRlci1ob3Zlci1jb2xvcik7IH1cbiAgICAgIC5idG4tc29jaWFsLmJ0bi10d2l0dGVyW2Rpc2FibGVkXTpob3ZlciwgLmJ0bi1zb2NpYWwuYnRuLXR3aXR0ZXJbZGlzYWJsZWRdOmZvY3VzLCAuYnRuLXNvY2lhbC5idG4tdHdpdHRlcltkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zb2NpYWwuYnRuLXR3aXR0ZXJbZGlzYWJsZWRdOmFjdGl2ZSwgLmJ0bi1zb2NpYWwuYnRuLXR3aXR0ZXJbZGlzYWJsZWRdLmFjdGl2ZSwgLmJ0bi1zb2NpYWwuYnRuLXR3aXR0ZXIuZGlzYWJsZWQ6aG92ZXIsIC5idG4tc29jaWFsLmJ0bi10d2l0dGVyLmRpc2FibGVkOmZvY3VzLCAuYnRuLXNvY2lhbC5idG4tdHdpdHRlci5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLCAuYnRuLXNvY2lhbC5idG4tdHdpdHRlci5kaXNhYmxlZDphY3RpdmUsIC5idG4tc29jaWFsLmJ0bi10d2l0dGVyLmRpc2FibGVkLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtdHdpdHRlci1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXNvY2lhbC10d2l0dGVyLWNvbG9yLWJnKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJ1dHRvbnMgLSBQcm92aWRlciBMaW5raW5nXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wcm92aWRlckxpbmtpbmdGZWVkYmFjayB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmJ1dHRvbnMtZ3JvdXAge1xuICBtYXJnaW4tbGVmdDogLTRweDtcbiAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfVxuICAuYnV0dG9ucy1ncm91cCAuYnRuIHtcbiAgICBtYXJnaW46IDAgNHB4OyB9XG4gIC5idXR0b25zLWdyb3VwLmJ1dHRvbnMtNSAuYnRuIHtcbiAgICBmbGV4LWJhc2lzOiAyMCU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5idXR0b25zLWdyb3VwLmJ1dHRvbnMtNSAuYnRuIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQnV0dG9ucyAtIENsZWFyIEZpbHRlcnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnRhYmxlLXRvcCAjY2xlYXJGaWx0ZXJzIHtcbiAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWNvbG9yKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIHBhZGRpbmctaW5saW5lOiAxMnB4O1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC50YWJsZS10b3AgI2NsZWFyRmlsdGVyczpob3ZlciwgLnRhYmxlLXRvcCAjY2xlYXJGaWx0ZXJzOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAudGFibGUtdG9wICNjbGVhckZpbHRlcnMgaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5DYXB0Y2hhIC0gR2VuZXJhbFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uY2FwdGNoYSB7XG4gIHdpZHRoOiAyNTZweDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tKTsgfVxuICAuY2FwdGNoYS1jZW50ZXJlZCB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICAuY2FwdGNoYS1jZW50ZXJlZCAuaW5wdXQtZ3JvdXAge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmNhcHRjaGF0ZXh0IHtcbiAgICBwYWRkaW5nOiA4cHggMDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTsgfVxuICAuY2FwdGNoYWltYWdlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbjogMjRweCBhdXRvIDBweCBhdXRvOyB9XG4gICAgLmNhcHRjaGFpbWFnZSA+ICoge1xuICAgICAgd2lkdGg6IDEyOHB4OyB9XG4gICAgLmNhcHRjaGFpbWFnZSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNjAlOyB9XG4gICAgLmNhcHRjaGFpbWFnZSAjaW5wdXRDYXB0Y2hhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNDAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gICAgICAuY2FwdGNoYWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4jaW5wdXRDYXB0Y2hhIHtcbiAgd2lkdGg6IDEyOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuI2RlZmF1bHQtY2FwdGNoYS1kb21haW5jaGVja2VyLnNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAxOHB4OyB9XG5cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcbiAgei1pbmRleDogOTk7IH1cblxuLmNhcHRjaGEtb3ZlcmxheS1iYWRnZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAyMHB4O1xuICByaWdodDogMjBweDtcbiAgei1pbmRleDogOTk5OTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5jYXB0Y2hhLW92ZXJsYXktYmFkZ2UtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2FwdGNoYS1vdmVybGF5LWJhZGdlIGltZyB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmNhcHRjaGEtb3ZlcmxheS1wb3B1cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiA4OHB4O1xuICByaWdodDogMjBweDtcbiAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgd2lkdGg6IDMwMnB4O1xuICB6LWluZGV4OiA5OTk4OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRm9ybSAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnNlbGVjdC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvOyB9XG4gIC5zZWxlY3QtaW5saW5lLWlubGluZS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAuc2VsZWN0LWlubGluZS1pbmxpbmUtY29udGFpbmVyIHNlbGVjdDpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cbiAgLnNlbGVjdC1pbmxpbmUjc3RhdGVzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5mb3JtLWFjdGlvbnMge1xuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhsZyk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmZvcm0tYWN0aW9ucy5mbGV4LWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmZvcm0tYWN0aW9ucy5mbGV4LWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAuZm9ybS1hY3Rpb25zIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgLmZvcm0tYWN0aW9ucyAubS1yLWEge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uc2VjdGlvbiArIC5mb3JtLWFjdGlvbnMge1xuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhsZyk7IH1cblxuLmZvcm0tdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm9ybS10b29sdGlwIC50b29sdGlwLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLmZvcm0tdG9vbHRpcCAudG9vbHRpcC1pY29uOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gIC5mb3JtLXRvb2x0aXAgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuXG4jaW5wdXROZXdQYXNzd29yZDIge1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG5cbi5pbnB1dC1wYXNzd29yZC1zdHJlbmdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaW5wdXQtcGFzc3dvcmQtc3RyZW5naHQgLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuICAuaW5wdXQtcGFzc3dvcmQtc3RyZW5naHQgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmlucHV0LXBhc3N3b3JkLXN0cmVuZ2h0ID4gc3BhbiA+ICoge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuaW5wdXQtcGFzc3dvcmQtc3RyZW5naHQgPiBzcGFuIGkge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLmlucHV0LXBhc3N3b3JkLXN0cmVuZ2h0ID4gc3BhbiBpOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWxpbmstY29sb3IpOyB9XG4gICAgLmlucHV0LXBhc3N3b3JkLXN0cmVuZ2h0ID4gc3BhbiAjcGFzc3dvcmRTdHJlbmd0aFRleHRMYWJlbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbmlucHV0W3R5cGU9J2ZpbGUnXS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG4uaGFzLWZlZWRiYWNrIGxhYmVsIH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHRvcDogMjdweCAhaW1wb3J0YW50OyB9XG5cbi5pbnB1dC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmlucHV0LWlubGluZS0xMDAge1xuICAgIHdpZHRoOiAxMDBweDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZvcm0gLSBNdWx0aXNlbGVjdFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ubXVsdGlzZWxlY3QtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAubXVsdGlzZWxlY3QtY29udGFpbmVyIC5pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luOiA1cHg7IH1cbiAgLm11bHRpc2VsZWN0LWNvbnRhaW5lciA+IGxpIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm11bHRpc2VsZWN0LWNvbnRhaW5lciA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAubXVsdGlzZWxlY3QtY29udGFpbmVyID4gbGkgPiBhID4gbGFiZWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBwYWRkaW5nOiAzcHggMjBweCAzcHggNDBweDsgfVxuICAgICAgICAubXVsdGlzZWxlY3QtY29udGFpbmVyID4gbGkgPiBhID4gbGFiZWwuY2hlY2tib3gsIC5tdWx0aXNlbGVjdC1jb250YWluZXIgPiBsaSA+IGEgPiBsYWJlbC5yYWRpbyB7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgIC5tdWx0aXNlbGVjdC1jb250YWluZXIgPiBsaSA+IGEgPiBsYWJlbCA+IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgICAubXVsdGlzZWxlY3QtY29udGFpbmVyID4gbGkgPiBhLm11bHRpc2VsZWN0LWFsbCBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgLm11bHRpc2VsZWN0LWNvbnRhaW5lciA+IGxpLm11bHRpc2VsZWN0LWdyb3VwIGxhYmVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDNweCAyMHB4IDNweCAyMHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIC5tdWx0aXNlbGVjdC1jb250YWluZXIgPiBsaS5tdWx0aXNlbGVjdC1ncm91cC1jbGlja2FibGUgbGFiZWwge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm50aC1jaGlsZCgyKSA+IC5tdWx0aXNlbGVjdC5idG4ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgfVxuXG4uZm9ybS1pbmxpbmUgLm11bHRpc2VsZWN0LWNvbnRhaW5lciBsYWJlbC5yYWRpbywgLmZvcm0taW5saW5lIC5tdWx0aXNlbGVjdC1jb250YWluZXIgbGFiZWwuY2hlY2tib3gge1xuICBwYWRkaW5nOiAzcHggMjBweCAzcHggNDBweDsgfVxuXG4uZm9ybS1pbmxpbmUgLm11bHRpc2VsZWN0LWNvbnRhaW5lciBsaSBhIGxhYmVsLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLmZvcm0taW5saW5lIC5tdWx0aXNlbGVjdC1jb250YWluZXIgbGkgYSBsYWJlbC5yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRm9ybSAtIEZpbGUgaW5wdXRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTsgfVxuICAuZmlsZS1pbnB1dC1idXR0b24ge1xuICAgIG1hcmdpbjogLTFweDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC5maWxlLWlucHV0LXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxMnB4OyB9XG4gIC5maWxlLWlucHV0LXJlbW92ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgei1pbmRleDogMjsgfVxuICAuZmlsZS1pbnB1dCBpbnB1dFt0eXBlPWZpbGVdIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZmlsZS1pbnB1dDpoYXMoaW5wdXQ6Zm9jdXMtdmlzaWJsZSkge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcbiAgICBib3JkZXI6IHZhcigtLWlucHV0LWJvcmRlcik7IH1cbiAgICAuZmlsZS1pbnB1dDpoYXMoaW5wdXQ6Zm9jdXMtdmlzaWJsZSkgLmZpbGUtaW5wdXQtYnV0dG9uIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpOyB9XG4gIC5maWxlLWlucHV0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1iZyk7XG4gICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpOyB9XG4gICAgLmZpbGUtaW5wdXQ6aG92ZXIgLmZpbGUtaW5wdXQtYnV0dG9uIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpOyB9XG5cbiNmaWxlVXBsb2Fkc0NvbnRhaW5lciAuZmlsZS1pbnB1dCB7XG4gIG1hcmdpbi10b3A6IDEycHg7IH1cblxuLmJpbGxpbmctZGV0YWlscy1mb3JtIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTsgfVxuXG4uaW5saW5lLWZvcm0ge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5pbmxpbmUtZm9ybSAuaW5saW5lLWZvcm0tZWxlbWVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgIC5pbmxpbmUtZm9ybSAuaW5saW5lLWZvcm0tZWxlbWVudDpudGgtY2hpbGQoMyksIC5pbmxpbmUtZm9ybSAuaW5saW5lLWZvcm0tZWxlbWVudDpudGgtY2hpbGQoMikge1xuICAgICAgbWluLXdpZHRoOiAxMjBweDsgfVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICByZXNpemU6IHZlcnRpY2FsO1xuICBtaW4taGVpZ2h0OiA1MHB4OyB9XG5cbi5wYXNzd29yZC1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnBhc3N3b3JkLWNvbnRlbnQgLnByb2dyZXNzIHtcbiAgICBmbGV4OiAxO1xuICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XG4gIC5wYXNzd29yZC1jb250ZW50IC5idG4tZGVmYXVsdCAubHMge1xuICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTsgfVxuICAucGFzc3dvcmQtY29udGVudC1ncm91cCAucHJvZ3Jlc3Mge1xuICAgIGhlaWdodDogNnB4O1xuICAgIG1heC13aWR0aDogdmFyKC0tcHJvZ3Jlc3Mtd2lkdGgpO1xuICAgIHdpZHRoOiB2YXIoLS1wcm9ncmVzcy13aWR0aCk7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5wYXNzd29yZC1jb250ZW50LWdyb3VwIC5wcm9ncmVzcyArIC5wYXNzd29yZC1jb250ZW50LXRleHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gIC5wYXNzd29yZC1jb250ZW50LWdyb3VwID4gbGFiZWwge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAucGFzc3dvcmQtY29udGVudC10b3Age1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgIC5wYXNzd29yZC1jb250ZW50LXRvcCBsYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRm9ybSAtIFNlbGVjdGl6ZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wgLnNlbGVjdGl6ZS1pbnB1dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1pbnB1dC1mb250LXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LWxpbmUtaGVpZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogdmFyKC0taW5wdXQtYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgLnNlbGVjdGl6ZS1jb250cm9sLmZvcm0tY29udHJvbCAuc2VsZWN0aXplLWlucHV0IHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG4gICAgLnNlbGVjdGl6ZS1jb250cm9sLmZvcm0tY29udHJvbCAuc2VsZWN0aXplLWlucHV0OmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0taW5wdXQtYm94LXNoYWRvdyksIHZhcigtLWlucHV0LWZvY3VzLWJveC1zaGFkb3cpOyB9XG4gICAgLnNlbGVjdGl6ZS1jb250cm9sLmZvcm0tY29udHJvbCAuc2VsZWN0aXplLWlucHV0OmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtc21hbGwpO1xuICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogN3B4O1xuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgY29udGVudDogXCJcXGU5MDJcIjsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wgLnNlbGVjdGl6ZS1pbnB1dDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJvcmRlci1jb2xvcik7IH1cbiAgICAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIC5zZWxlY3RpemUtaW5wdXQuZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWZvY3VzLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgLnNlbGVjdGl6ZS1jb250cm9sLmZvcm0tY29udHJvbCAuc2VsZWN0aXplLWlucHV0LmRyb3Bkb3duLWFjdGl2ZTpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgICAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIC5zZWxlY3RpemUtaW5wdXQuZHJvcGRvd24tYWN0aXZlIGlucHV0IHtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wgLnNlbGVjdGl6ZS1pbnB1dC5pdGVtcyBpbnB1dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wgLnNlbGVjdGl6ZS1pbnB1dC5pdGVtcyA+IGRpdiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIHBhZGRpbmc6IDRweCA2cHg7XG4gICAgICBtYXJnaW46IDAgNHB4IDRweCAwO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTMpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG4gICAgICAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIC5zZWxlY3RpemUtaW5wdXQuaXRlbXMgPiBkaXYgLnJlbW92ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIC5zZWxlY3RpemUtaW5wdXQuaXRlbXMgPiBkaXYgLnJlbW92ZTpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MTJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtc21hbGwpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTtcbiAgICAgICAgICB0ZXh0LWluZGVudDogMDsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wgLnNlbGVjdGl6ZS1pbnB1dCBpbnB1dCB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICAgIGhlaWdodDogY2FsYyh2YXIoLS11aS1oZWlnaHQtYmFzZSkgLSA0cHgpO1xuICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIC5zZWxlY3RpemUtaW5wdXQgaW5wdXQ6YWN0aXZlLCAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIC5zZWxlY3RpemUtaW5wdXQgaW5wdXQ6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wgLnNlbGVjdGl6ZS1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IHZhcigtLXppbmRleC1kcm9wZG93bik7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgLnNlbGVjdGl6ZS1jb250cm9sLmZvcm0tY29udHJvbCAuc2VsZWN0aXplLWRyb3Bkb3duLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogMTk0cHg7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1iZyk7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiB2YXIoLS1kcm9wZG93bi1ib3JkZXIpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1kcm9wZG93bi1ib3gtc2hhZG93KTsgfVxuICAgIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wgLnNlbGVjdGl6ZS1kcm9wZG93biAub3B0aW9uIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIC5zZWxlY3RpemUtZHJvcGRvd24gLm9wdGlvbiAuYmFkZ2Uge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgLnNlbGVjdGl6ZS1jb250cm9sLmZvcm0tY29udHJvbCAuc2VsZWN0aXplLWRyb3Bkb3duIC5vcHRpb246aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaG92ZXItYmcpOyB9XG4gICAgICAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sIC5zZWxlY3RpemUtZHJvcGRvd24gLm9wdGlvbi5zZWxlY3RlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1hY3RpdmUtYmcpOyB9XG4gIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLS14cyAuc2VsZWN0aXplLWRyb3Bkb3duIC5vcHRpb24sIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLS1zbSAuc2VsZWN0aXplLWRyb3Bkb3duIC5vcHRpb24ge1xuICAgIG1pbi1oZWlnaHQ6IDI0cHg7XG4gICAgcGFkZGluZzogNHB4IDE2cHg7IH1cbiAgLnNlbGVjdGl6ZS1jb250cm9sLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtLXhsZyAuc2VsZWN0aXplLWRyb3Bkb3duIC5vcHRpb24sIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLS1sZyAuc2VsZWN0aXplLWRyb3Bkb3duIC5vcHRpb24ge1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7IH1cbiAgLnNlbGVjdGl6ZS1jb250cm9sLmZvcm0tY29udHJvbC5jdXN0b20tbXVsdGlzZWxlY3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogNTAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7IH1cbiAgICAuc2VsZWN0aXplLWNvbnRyb2wuZm9ybS1jb250cm9sLmN1c3RvbS1tdWx0aXNlbGVjdCAuc2VsZWN0aXplLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwYWRkaW5nOiA0cHggMjhweCAwIHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpOyB9XG5cbi5oYXMtZGFyay1iYWNrZ3JvdW5kIC5zZWxlY3RpemUtaW5wdXQge1xuICBib3JkZXItY29sb3I6ICNmZmY7IH1cblxuLnJlcXVpcmVkIHtcbiAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gIG1hcmdpbi1sZWZ0OiAzcHg7IH1cblxuLmNoZWNrYm94IC5yZXF1aXJlZCB7XG4gIG1hcmdpbi1sZWZ0OiA2cHg7IH1cblxuLmNoZWNrYm94LFxuLnJhZGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jaGVja2JveCxcbiAgLmNoZWNrYm94ID4gbGFiZWwsXG4gIC5yYWRpbyxcbiAgLnJhZGlvID4gbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3IpOyB9XG4gICAgLmNoZWNrYm94ID4gLmNoZWNrYm94LXN0eWxlZCxcbiAgICAuY2hlY2tib3ggPiAucmFkaW8tc3R5bGVkLFxuICAgIC5jaGVja2JveCA+IFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgLmNoZWNrYm94ID4gW3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggPiBsYWJlbCA+IC5jaGVja2JveC1zdHlsZWQsXG4gICAgLmNoZWNrYm94ID4gbGFiZWwgPiAucmFkaW8tc3R5bGVkLFxuICAgIC5jaGVja2JveCA+IGxhYmVsID4gW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICAuY2hlY2tib3ggPiBsYWJlbCA+IFt0eXBlPVwicmFkaW9cIl0sXG4gICAgLnJhZGlvID4gLmNoZWNrYm94LXN0eWxlZCxcbiAgICAucmFkaW8gPiAucmFkaW8tc3R5bGVkLFxuICAgIC5yYWRpbyA+IFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgLnJhZGlvID4gW3R5cGU9XCJyYWRpb1wiXSxcbiAgICAucmFkaW8gPiBsYWJlbCA+IC5jaGVja2JveC1zdHlsZWQsXG4gICAgLnJhZGlvID4gbGFiZWwgPiAucmFkaW8tc3R5bGVkLFxuICAgIC5yYWRpbyA+IGxhYmVsID4gW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICAucmFkaW8gPiBsYWJlbCA+IFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jaGVja2JveC1zcGFjaW5nKTsgfVxuICAgIC5jaGVja2JveC5sYWJlbC1jdXN0b20tY2hlY2ssXG4gICAgLmNoZWNrYm94ID4gbGFiZWwubGFiZWwtY3VzdG9tLWNoZWNrLFxuICAgIC5yYWRpby5sYWJlbC1jdXN0b20tY2hlY2ssXG4gICAgLnJhZGlvID4gbGFiZWwubGFiZWwtY3VzdG9tLWNoZWNrIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAuY2hlY2tib3gubGFiZWwtY3VzdG9tLWNoZWNrIC5jaGVja2JveC1zdHlsZWQsXG4gICAgICAuY2hlY2tib3ggPiBsYWJlbC5sYWJlbC1jdXN0b20tY2hlY2sgLmNoZWNrYm94LXN0eWxlZCxcbiAgICAgIC5yYWRpby5sYWJlbC1jdXN0b20tY2hlY2sgLmNoZWNrYm94LXN0eWxlZCxcbiAgICAgIC5yYWRpbyA+IGxhYmVsLmxhYmVsLWN1c3RvbS1jaGVjayAuY2hlY2tib3gtc3R5bGVkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyB9XG4gICAgLmNoZWNrYm94OmhvdmVyID4gLmNoZWNrYm94LXN0eWxlZDpub3QoLmNoZWNrZWQpOm5vdCguZGlzYWJsZWQpLFxuICAgIC5jaGVja2JveDpob3ZlciA+IC5yYWRpby1zdHlsZWQ6bm90KC5jaGVja2VkKTpub3QoLmRpc2FibGVkKSwgLmNoZWNrYm94OmZvY3VzLXZpc2libGUgPiAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLmNoZWNrYm94OmZvY3VzLXZpc2libGUgPiAucmFkaW8tc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLmNoZWNrYm94ID4gbGFiZWw6aG92ZXIgPiAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLmNoZWNrYm94ID4gbGFiZWw6aG92ZXIgPiAucmFkaW8tc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLmNoZWNrYm94ID4gbGFiZWw6Zm9jdXMtdmlzaWJsZSA+IC5jaGVja2JveC1zdHlsZWQ6bm90KC5jaGVja2VkKTpub3QoLmRpc2FibGVkKSxcbiAgICAuY2hlY2tib3ggPiBsYWJlbDpmb2N1cy12aXNpYmxlID4gLnJhZGlvLXN0eWxlZDpub3QoLmNoZWNrZWQpOm5vdCguZGlzYWJsZWQpLFxuICAgIC5yYWRpbzpob3ZlciA+IC5jaGVja2JveC1zdHlsZWQ6bm90KC5jaGVja2VkKTpub3QoLmRpc2FibGVkKSxcbiAgICAucmFkaW86aG92ZXIgPiAucmFkaW8tc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLnJhZGlvOmZvY3VzLXZpc2libGUgPiAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLnJhZGlvOmZvY3VzLXZpc2libGUgPiAucmFkaW8tc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLnJhZGlvID4gbGFiZWw6aG92ZXIgPiAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLnJhZGlvID4gbGFiZWw6aG92ZXIgPiAucmFkaW8tc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXG4gICAgLnJhZGlvID4gbGFiZWw6Zm9jdXMtdmlzaWJsZSA+IC5jaGVja2JveC1zdHlsZWQ6bm90KC5jaGVja2VkKTpub3QoLmRpc2FibGVkKSxcbiAgICAucmFkaW8gPiBsYWJlbDpmb2N1cy12aXNpYmxlID4gLnJhZGlvLXN0eWxlZDpub3QoLmNoZWNrZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTsgfVxuICAuY2hlY2tib3ggKyAuaGVscC1ibG9jayxcbiAgLnJhZGlvICsgLmhlbHAtYmxvY2sge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWljaGVjay1zaXplKSArIHZhcigtLWNoZWNrYm94LXNwYWNpbmcpKTsgfVxuXG4ucmFkaW8gPiAuaWNoZWNrLWNvbnRyb2wge1xuICB3aWR0aDogdW5zZXQgIWltcG9ydGFudDsgfVxuXG4uaWNoZWNrLWxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5pY2hlY2stY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDE4MCU7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ucmFkaW8tc3R5bGVkLFxuLmNoZWNrYm94LXN0eWxlZCxcbi5pY2hlY2tib3hfc3F1YXJlLWJsdWUsXG4uaXJhZGlvX3NxdWFyZS1ibHVlIHtcbiAgdG9wOiAtMXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogdmFyKC0taWNoZWNrLXNpemUpO1xuICB3aWR0aDogdmFyKC0taWNoZWNrLXNpemUpO1xuICBtaW4td2lkdGg6IHZhcigtLWljaGVjay1zaXplKTtcbiAgbWluLWhlaWdodDogdmFyKC0taWNoZWNrLXNpemUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pY2hlY2stYmcpO1xuICBib3JkZXI6IHZhcigtLWljaGVjay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY2hlY2stYm9yZGVyLXJhZGl1cyk7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAucmFkaW8tc3R5bGVkOmJlZm9yZSxcbiAgLmNoZWNrYm94LXN0eWxlZDpiZWZvcmUsXG4gIC5pY2hlY2tib3hfc3F1YXJlLWJsdWU6YmVmb3JlLFxuICAuaXJhZGlvX3NxdWFyZS1ibHVlOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTsgfVxuICAucmFkaW8tc3R5bGVkOmhvdmVyLCAucmFkaW8tc3R5bGVkOmZvY3VzLXZpc2libGUsXG4gIC5jaGVja2JveC1zdHlsZWQ6aG92ZXIsXG4gIC5jaGVja2JveC1zdHlsZWQ6Zm9jdXMtdmlzaWJsZSxcbiAgLmljaGVja2JveF9zcXVhcmUtYmx1ZTpob3ZlcixcbiAgLmljaGVja2JveF9zcXVhcmUtYmx1ZTpmb2N1cy12aXNpYmxlLFxuICAuaXJhZGlvX3NxdWFyZS1ibHVlOmhvdmVyLFxuICAuaXJhZGlvX3NxdWFyZS1ibHVlOmZvY3VzLXZpc2libGUge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWNoZWNrLWhvdmVyLWJvcmRlci1jb2xvcik7IH1cbiAgLnJhZGlvLXN0eWxlZC5jaGVja2VkLFxuICAuY2hlY2tib3gtc3R5bGVkLmNoZWNrZWQsXG4gIC5pY2hlY2tib3hfc3F1YXJlLWJsdWUuY2hlY2tlZCxcbiAgLmlyYWRpb19zcXVhcmUtYmx1ZS5jaGVja2VkIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWljaGVjay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY2hlY2stYWN0aXZlLWJnKTsgfVxuICAgIC5yYWRpby1zdHlsZWQuY2hlY2tlZDpiZWZvcmUsXG4gICAgLmNoZWNrYm94LXN0eWxlZC5jaGVja2VkOmJlZm9yZSxcbiAgICAuaWNoZWNrYm94X3NxdWFyZS1ibHVlLmNoZWNrZWQ6YmVmb3JlLFxuICAgIC5pcmFkaW9fc3F1YXJlLWJsdWUuY2hlY2tlZDpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgLnJhZGlvLXN0eWxlZC5kaXNhYmxlZCxcbiAgLmNoZWNrYm94LXN0eWxlZC5kaXNhYmxlZCxcbiAgLmljaGVja2JveF9zcXVhcmUtYmx1ZS5kaXNhYmxlZCxcbiAgLmlyYWRpb19zcXVhcmUtYmx1ZS5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY2hlY2stZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWNoZWNrLWRpc2FibGVkLWJvcmRlci1jb2xvcik7IH1cbiAgLnJhZGlvLXN0eWxlZCA+IGlucHV0LFxuICAuY2hlY2tib3gtc3R5bGVkID4gaW5wdXQsXG4gIC5pY2hlY2tib3hfc3F1YXJlLWJsdWUgPiBpbnB1dCxcbiAgLmlyYWRpb19zcXVhcmUtYmx1ZSA+IGlucHV0IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uaWNoZWNrYm94X3NxdWFyZS1ibHVlOmJlZm9yZSxcbi5jaGVja2JveC1zdHlsZWQ6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29udGVudDogXCJcXGU5MTFcIjtcbiAgaGVpZ2h0OiBjYWxjKHZhcigtLWljaGVjay1zaXplKSAtIHZhcigtLWljaGVjay1ib3JkZXItd2lkdGgpICogMik7XG4gIHdpZHRoOiBjYWxjKHZhcigtLWljaGVjay1zaXplKSAtIHZhcigtLWljaGVjay1ib3JkZXItd2lkdGgpICogMik7XG4gIGNvbG9yOiB2YXIoLS1pY2hlY2stYWN0aXZlLWljb24tY29sb3IpO1xuICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCk7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5pcmFkaW9fc3F1YXJlLWJsdWUsXG4ucmFkaW8tc3R5bGVkIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICAuaXJhZGlvX3NxdWFyZS1ibHVlOmJlZm9yZSxcbiAgLnJhZGlvLXN0eWxlZDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSogKHZhcigtLXNwYWNpbmctMXgpIC8gMikpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xKiAodmFyKC0tc3BhY2luZy0xeCkgLyAyKSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuXG5bZGF0YS1yYWRpby10YWJdIC5yYWRpby1zdHlsZWQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5yYWRpby1pbmxpbmUgKyAucmFkaW8taW5saW5lLFxuLmNoZWNrYm94LWlubGluZSArIC5jaGVja2JveC1pbmxpbmUge1xuICBtYXJnaW4tbGVmdDogMzBweDsgfVxuXG4ucmFkaW8taW5saW5lID4gLmFkZG9uLXNlbGVjdG9yIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5tZy1yYy1kcm9wZG93bnMgLmlyYWRpb19zcXVhcmUtYmx1ZSxcbiNjb250YWluZXJOZXdVc2VyU2VjdXJpdHkgLmljaGVja2JveF9zcXVhcmUtYmx1ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB0b3A6IDRweDsgfVxuXG4uY2hlY2tib3gtc3R5bGUge1xuICB3aWR0aDogdmFyKC0taWNoZWNrLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLWljaGVjay1zaXplKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cbiAgLmNoZWNrYm94LXN0eWxlICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cblxuLm9yZGVyLWNoZWNrYm94ICsgLnNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTN4KTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkludm9pY2VcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmludm9pY2Uge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XG4gIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcbiAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy14bGcpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctbGcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTsgfVxuICAuaW52b2ljZS10aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDIpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gICAgLmludm9pY2UtdGl0bGUtc20ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgzKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pOyB9XG4gICAgLmludm9pY2UtdGl0bGUgLmxhYmVsIHtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgLmludm9pY2UgYWRkcmVzcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuaW52b2ljZSAud2VsbCB7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5pbnZvaWNlIC5saXN0LWluZm8gbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAuaW52b2ljZSAuc3ViLXRvdGFsLXJvdyB0ZCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgLmludm9pY2UgLnN1Yi10b3RhbC1yb3cubGFzdCB0ZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDE2cHg7IH1cbiAgLmludm9pY2UgLnN1Yi10b3RhbC1yb3cuZmlyc3QgdGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS10YWJsZS1ib3JkZXItY29sb3IpO1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gIC5pbnZvaWNlIC50YWJsZSB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuaW52b2ljZSAudG90YWwtcm93IHRkIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmludm9pY2UgLnRvdGFsLXJvdyB0ZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpOyB9IH1cbiAgLmludm9pY2UgLm5vdGVzIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAgIC5pbnZvaWNlIC5ub3RlcyAubm90ZXMtYm9keSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS13ZWxsLWJvcmRlcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb2xvci10cmFuc3BhcmVudCk7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5pbnZvaWNlIC5zZWN0aW9uIGgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfVxuICAuaW52b2ljZS1kZWJpdC1ub3RlIHtcbiAgICBtYXgtd2lkdGg6IDk2MHB4O1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5pbnZvaWNlIHtcbiAgICBwYWRkaW5nOiAyNnB4IDI0cHggMzJweDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuSW52b2ljZSAtIFNpZGViYXIgXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1wYXltZW50IC5zZWxlY3QtaW5saW5lIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnBhbmVsLXBheW1lbnQgZm9ybSArIC5idG4gKyBmb3JtICsgLmJ0biB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cblxuLnBhbmVsLXBheW1lbnQgLmJ0biArIC5idG4ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LnBhbmVsLXZpZXctaW52b2ljZSAucGF5bWVudC1mb3JtID4gcCBiciB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5kZWJpdC1ub3RlLWFjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLnBheW1lbnQtZm9ybSBwIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NCk7XG4gIG1hcmdpbjogMDsgfVxuXG4ucGF5bWVudC1mb3JtIHRhYmxlIHtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogdW5zZXQ7IH1cbiAgLnBheW1lbnQtZm9ybSB0YWJsZSB0Ym9keSwgLnBheW1lbnQtZm9ybSB0YWJsZSB0ciwgLnBheW1lbnQtZm9ybSB0YWJsZSB0ZCB7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiB1bnNldDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMDsgfVxuICAucGF5bWVudC1mb3JtIHRhYmxlIHRib2R5IHRyIHRkICsgdGQge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pOyB9XG5cbi5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5wYXltZW50LWZvcm0gLmJ0biB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSBpOm5vdCguZmEtc3Bpbm5lciksXG4gIC5wYXltZW50LWZvcm0gLmJ0biBpOm5vdCguZmEtc3Bpbm5lcikge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBheW1lbnQtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIC5mYS1zcGlubmVyLFxuICAucGF5bWVudC1mb3JtIC5idG4gLmZhLXNwaW5uZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgIG1hcmdpbi1yaWdodDogLTE2cHg7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuXG4ucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UtYmFzZSk7XG4gIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctYmFzZS12ZXJ0aWNhbCkgdmFyKC0tcGFkZGluZy1iYXNlLWhvcml6b250YWwpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1iZyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJnKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuICAucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbiAgLnBheW1lbnQtZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyB7XG4gICAgb3V0bGluZTogMDsgfVxuICAucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTo6LW1zLWV4cGFuZCxcbiAgLnBheW1lbnQtZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTo6LW1zLWV4cGFuZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdW2Rpc2FibGVkXSwgLnBheW1lbnQtZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1bcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLnBheW1lbnQtZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gIC5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl1bZGlzYWJsZWRdLFxuICAucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWJnLWRpc2FibGVkKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdIC5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdXG4gIC5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGN1cnNvcjogZGlzYWJsZWQ7IH1cblxuLnBheW1lbnQtZm9ybSAuYnRuLXNtLCAucGF5bWVudC1mb3JtIC5idG4tZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1idG4tYmFzZS1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1iYXNlLWJvcmRlci1yYWRpdXMpO1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7IH1cblxuLnBheW1lbnQtZm9ybSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuLnBheW1lbnQtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLnBheW1lbnQtZm9ybSAuYnRuIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XG4gIHdoaXRlLXNwYWNlOiB1bnNldDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnBhZ2Utdmlld2ludm9pY2UgLnJvdy1lcS1oZWlnaHQucm93LWVxLWhlaWdodCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ucGFnZS12aWV3aW52b2ljZSAuc2VjdGlvbi0tYmFuay1kZXRhaWxzIC5zZWN0aW9uLWJvZHkgPiBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnBhZ2Utdmlld2ludm9pY2UgLmludm9pY2UgLnRhYmxlLWNvbmRlbnNlZCB0ciB0ZCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4gIC5wYWdlLXZpZXdpbnZvaWNlIC5pbnZvaWNlIC50YWJsZS1jb25kZW5zZWQubS1iLTAgdGhlYWQgPiB0ciA+IHRoOm50aC1jaGlsZCgzKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJJRFwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSovIH1cbiAgICAucGFnZS12aWV3aW52b2ljZSAuaW52b2ljZSAudGFibGUtY29uZGVuc2VkLm0tYi0wIHRoZWFkID4gdHIgPiB0aDpudGgtY2hpbGQoMykgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wYWdlLXZpZXdpbnZvaWNlIC5pbnZvaWNlIC50YWJsZS1jb25kZW5zZWQubS1iLTAgdGJvZHkgPiB0cjpub3QoLnRvdGFsLXJvdykgPiB0ZDpudGgtY2hpbGQoMykge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhZ2Utdmlld2ludm9pY2UgLmludm9pY2UgLnRhYmxlLWNvbmRlbnNlZC5tLWItMCB0Ym9keSA+IHRyLnRvdGFsLXJvdyA+IHRkOmZpcnN0LW9mLXR5cGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhZ2Utdmlld2ludm9pY2UgLmludm9pY2UgLnN1Yi10b3RhbC1yb3cuZmlyc3QgdGQge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzODBweCkge1xuICAucGFnZS12aWV3aW52b2ljZSAuaW52b2ljZSAudGFibGUtY29uZGVuc2VkIHRyIHRkIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbmxpc3QgLSBMaXN0IEluZm9cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmxpc3QtaW5mbyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDsgfVxuICAubGlzdC1pbmZvIGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5saXN0LWluZm8tdGV4dCB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cbiAgLmxpc3QtaW5mby10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gIC5saXN0LWluZm8tdiBsaSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5saXN0LWluZm8tdiBsaTpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgLmxpc3QtaW5mby12IC5saXN0LWluZm8tdGV4dCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gIC5saXN0LWluZm8tNTAgbGk6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5saXN0LWluZm8tNTAgLmxpc3QtaW5mby10aXRsZSwgLmxpc3QtaW5mby01MCAubGlzdC1pbmZvLXRleHQge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkOyB9XG4gIC5saXN0LWluZm8tc20ge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG4gIC5saXN0LWluZm8tYm9yZGVyZWQgbGkge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgICAubGlzdC1pbmZvLWJvcmRlcmVkIGxpOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cblxuLmxpc3QtZmVhdHVyZXMgPiBsaSB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIDA7IH1cbiAgLmxpc3QtZmVhdHVyZXMgPiBsaSBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGlzdCBHcm91cCAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmxpc3QtZ3JvdXAtdiAubGlzdC1ncm91cC1pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5saXN0LWdyb3VwLWl0ZW0gLmJhZGdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tYmFkZ2UtY29sb3IpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGlzdCBHcm91cCAtIFNpZGViYXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLm1haW4tc2lkZWJhciAubGlzdC1ncm91cC1pdGVtLXNlbGVjdGVkLFxuLnNpZGViYXIgLmxpc3QtZ3JvdXAtaXRlbS1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1zZWxlY3RlZC1iZyk7XG4gIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tc2VsZWN0ZWQtYmFkZ2UtY29sb3IpOyB9XG4gIC5tYWluLXNpZGViYXIgLmxpc3QtZ3JvdXAtaXRlbS1zZWxlY3RlZCAuYmFkZ2UsXG4gIC5zaWRlYmFyIC5saXN0LWdyb3VwLWl0ZW0tc2VsZWN0ZWQgLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tc2VsZWN0ZWQtYmFkZ2UtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tc2VsZWN0ZWQtYmFkZ2UtY29sb3IpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIE1lc3NhZ2VcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLm1lc3NhZ2UsXG4ubWVzc2FnZS1ib2R5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLm1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XG4gIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XG4gIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgLm1lc3NhZ2UgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lc3NhZ2UtYm9keSB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtc20pOyB9XG4gIC5tZXNzYWdlLWljb24ge1xuICAgIHdpZHRoOiA1NnB4O1xuICAgIGhlaWdodDogNTZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tdWktaWNvbi1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7IH1cbiAgICAubWVzc2FnZS1pY29uIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm1lc3NhZ2UtaW1hZ2Uge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNjRweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubWVzc2FnZS1pbWFnZSBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5tZXNzYWdlLXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgIC5tZXNzYWdlLXRpdGxlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgICAubWVzc2FnZS10aXRsZTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAubWVzc2FnZS10aXRsZTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5tZXNzYWdlLWRlc2Mge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAubWVzc2FnZS1hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubWVzc2FnZS1hY3Rpb25zID4gLmJ0biArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pOyB9XG4gIC5tZXNzYWdlOm5vdCguaGlkZGVuKSArIC5tZXNzYWdlIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAubWVzc2FnZS1uby1ib3JkZXIge1xuICAgIGJvcmRlcjogbm9uZTsgfVxuXG4ubWVzc2FnZS1uby1kYXRhIHtcbiAgbWluLWhlaWdodDogMzgwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAubWVzc2FnZS1uby1kYXRhIHtcbiAgICAgIGhlaWdodDogMzIwcHg7IH0gfVxuICAubWVzc2FnZS1uby1kYXRhIC5tZXNzYWdlLWltYWdlIHtcbiAgICB3aWR0aDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7IH1cbiAgICAubWVzc2FnZS1uby1kYXRhIC5tZXNzYWdlLWltYWdlIHN2ZyB7XG4gICAgICB3aWR0aDogNDhweDtcbiAgICAgIGhlaWdodDogNDhweDsgfVxuICAubWVzc2FnZS1uby1kYXRhIC5tZXNzYWdlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtc20pOyB9XG4gICAgLm1lc3NhZ2Utbm8tZGF0YSAubWVzc2FnZS10aXRsZTpoYXMoKyAubWVzc2FnZS1kZXNjKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgLm1lc3NhZ2Utbm8tZGF0YSAubWVzc2FnZS1kZXNjIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1lc3NhZ2UgLSBIb3Jpem9udGFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWVzc2FnZS1oLFxuICAubWVzc2FnZS1oIC5tZXNzYWdlLWNvbnRlbnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubWVzc2FnZS1oIC5tZXNzYWdlLWJvZHksXG4gICAgLm1lc3NhZ2UtaCAubWVzc2FnZS1jb250ZW50IC5tZXNzYWdlLWJvZHkge1xuICAgICAgZmxleDogMTtcbiAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgLm1lc3NhZ2UtaCAubWVzc2FnZS10aXRsZSxcbiAgICAubWVzc2FnZS1oIC5tZXNzYWdlLWFjdGlvbnMsXG4gICAgLm1lc3NhZ2UtaCAubWVzc2FnZS1jb250ZW50IC5tZXNzYWdlLXRpdGxlLFxuICAgIC5tZXNzYWdlLWggLm1lc3NhZ2UtY29udGVudCAubWVzc2FnZS1hY3Rpb25zIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLm1lc3NhZ2UtaCA+ICogKyAqLFxuICAgIC5tZXNzYWdlLWggLm1lc3NhZ2UtY29udGVudCA+ICogKyAqIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAgIC5tZXNzYWdlLWgubWVzc2FnZS1sZyA+ICogKyAqLFxuICAgIC5tZXNzYWdlLWggLm1lc3NhZ2UtY29udGVudC5tZXNzYWdlLWxnID4gKiArICoge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteGxnKTsgfVxuICAubWVzc2FnZS1oIC5tZXNzYWdlLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gIC5tZXNzYWdlLWggLm1lc3NhZ2UtYWN0aW9ucyB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgLm1lc3NhZ2UtaCAubWVzc2FnZS1jb250ZW50IC5tZXNzYWdlLWFjdGlvbnMge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMngpOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NZXNzYWdlIC0gU2l6ZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLm1lc3NhZ2UtbGcge1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7IH1cbiAgLm1lc3NhZ2UtbGcubWVzc2FnZS1uby1kYXRhIHtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuICAubWVzc2FnZS1sZyAubWVzc2FnZS1pY29uIHtcbiAgICB3aWR0aDogODBweDtcbiAgICBoZWlnaHQ6IDgwcHg7IH1cbiAgICAubWVzc2FnZS1sZyAubWVzc2FnZS1pY29uID4gaSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eGxnKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1lc3NhZ2UgLSBTdGF0ZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLm1lc3NhZ2Utc3VjY2VzcyAubWVzc2FnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLXN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc3RhdGUtc3VjY2Vzcy1iZyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN0YXRlLXN1Y2Nlc3MtYmcpOyB9XG5cbi5tZXNzYWdlLXN1Y2Nlc3MgLm1lc3NhZ2UtdGV4dCxcbi5tZXNzYWdlLXN1Y2Nlc3MgLm1lc3NhZ2UtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTsgfVxuXG4ubWVzc2FnZS1kYW5nZXIgLm1lc3NhZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0ZS1kYW5nZXItdGV4dCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc3RhdGUtZGFuZ2VyLWJnKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3RhdGUtZGFuZ2VyLWJnKTsgfVxuXG4ubWVzc2FnZS1kYW5nZXIgLm1lc3NhZ2UtdGV4dCxcbi5tZXNzYWdlLWRhbmdlciAubWVzc2FnZS10aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cblxuLm1lc3NhZ2Utd2FybmluZyAubWVzc2FnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLXN0YXRlLXdhcm5pbmctdGV4dCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc3RhdGUtd2FybmluZy1iZyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN0YXRlLXdhcm5pbmctYmcpOyB9XG5cbi5tZXNzYWdlLXdhcm5pbmcgLm1lc3NhZ2UtdGV4dCxcbi5tZXNzYWdlLXdhcm5pbmcgLm1lc3NhZ2UtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTsgfVxuXG4ubWVzc2FnZS1pbmZvIC5tZXNzYWdlLWljb24ge1xuICBjb2xvcjogdmFyKC0tc3RhdGUtaW5mby10ZXh0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zdGF0ZS1pbmZvLWJnKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3RhdGUtaW5mby1iZyk7IH1cblxuLm1lc3NhZ2UtaW5mbyAubWVzc2FnZS10ZXh0LFxuLm1lc3NhZ2UtaW5mbyAubWVzc2FnZS10aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWluZm8tY29sb3IpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgLSBHZW5lcmFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnBhbmVsLW5hdiwgLnBhbmVsLXRhYnMge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1oZWFkZXItYmcpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1wYW5lbC1ib3JkZXItZGl2aWRlci1jb2xvcik7XG4gICAgcGFkZGluZzogMCBjYWxjKHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgLSB2YXIoLS1uYXYtbGluay1wYWRkaW5nLWgpKTsgfVxuICAgIC5wYW5lbC1uYXYgPiBsaSwgLnBhbmVsLXRhYnMgPiBsaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAucGFuZWwtZm9ybSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmctZm9ybSk7IH1cbiAgLnBhbmVsLWRyb3Bkb3duIHtcbiAgICB6LWluZGV4OiBhdXRvOyB9XG4gICAgLnBhbmVsLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wYW5lbC1mb290ZXItc3BhY2UtYmV0d2VlbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLnBhbmVsLWZvb3RlciBpbWcge1xuICAgIG1heC13aWR0aDogMTUwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDVweCAwIDE1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnBhbmVsLWZvb3RlciBiciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucGFuZWwtZm9vdGVyLXNtIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTN4KTsgfVxuICAucGFuZWwtZm9vdGVyIC5wYW5lbC1mb290ZXItbGluayB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgICAucGFuZWwtZm9vdGVyIC5wYW5lbC1mb290ZXItbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAucGFuZWwtZm9vdGVyOm5vdCguc3VtbWFyeS1ib3R0b20pIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2NXB4KSB7XG4gICAgLnBhbmVsLWZvb3Rlcjpub3QoLnN1bW1hcnktYm90dG9tKSAuYnRuIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAucGFuZWwtZm9vdGVyOm5vdCguc3VtbWFyeS1ib3R0b20pIC5idG4gKyAuYnRuIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSAwIDAgMDsgfSB9XG4gIC5wYW5lbC1sZyAucGFuZWwtaGVhZGluZyB7XG4gICAgcGFkZGluZzogdmFyKC0tcGFuZWwtbGctaGVhZGluZy1wYWRkaW5nKTsgfVxuICAucGFuZWwtbGcgLnBhbmVsLWJvZHkge1xuICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLWxnLWJvZHktcGFkZGluZyk7IH1cbiAgICAucGFuZWwtbGcgLnBhbmVsLWJvZHkucGFuZWwtYm9keS1ob3N0aW5nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgdmFyKC0tcGFuZWwtbGctYm9keS1wYWRkaW5nKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNzBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgIC5wYW5lbC1sZyAucGFuZWwtYm9keS5wYW5lbC1ib2R5LWhvc3Rpbmcge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4OyB9IH1cbiAgICAgIC5wYW5lbC1sZyAucGFuZWwtYm9keS5wYW5lbC1ib2R5LWhvc3RpbmcgPiBoNSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTsgfVxuICAgICAgLnBhbmVsLWxnIC5wYW5lbC1ib2R5LnBhbmVsLWJvZHktaG9zdGluZyA+IHAge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuICAgICAgLnBhbmVsLWxnIC5wYW5lbC1ib2R5LnBhbmVsLWJvZHktaG9zdGluZyAucGFuZWwtaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNzNweDtcbiAgICAgICAgcmlnaHQ6IC0zMnB4O1xuICAgICAgICBoZWlnaHQ6IDI1MnB4O1xuICAgICAgICB3aWR0aDogMjkycHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5wYW5lbC1sZyAucGFuZWwtYm9keS5wYW5lbC1ib2R5LWhvc3RpbmcgLnBhbmVsLWljb24gPiBzdmcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgICAgLnBhbmVsLWxnIC5wYW5lbC1ib2R5LnBhbmVsLWJvZHktaG9zdGluZyAucGFuZWwtaWNvbiB7XG4gICAgICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC0xNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNDJweDsgfSB9XG4gIC5wYW5lbC1sZyAucGFuZWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1sZy1mb290ZXItcGFkZGluZyk7IH1cbiAgLnBhbmVsLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1hY3RpdmUtYmcpOyB9XG4gIC5wYW5lbCAucGFuZWwtYm9keTpub3QoLnRhYi1wYW5lKSArIC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cblxuYS5wYW5lbCB7XG4gIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIGEucGFuZWw6aG92ZXIsIGEucGFuZWw6Zm9jdXMsIGEucGFuZWw6Zm9jdXMtdmlzaWJsZSwgYS5wYW5lbDphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLThweCwgMCk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtaG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1wYW5lbC1ob3Zlci1zaGFkb3cpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgLSBMaXN0IEdyb3VwXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbCAubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAucGFuZWwgLmxpc3QtZ3JvdXAgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQsIC5wYW5lbCAubGlzdC1ncm91cCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gIC5wYW5lbCAubGlzdC1ncm91cCA+IC5saXN0LWdyb3VwLWl0ZW0gaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAucGFuZWwgLmxpc3QtZ3JvdXAgPiAubGlzdC1ncm91cC1pdGVtIGk6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAucGFuZWwgLmxpc3QtZ3JvdXAgPiAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkLCAucGFuZWwgLmxpc3QtZ3JvdXAgPiAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmZvY3VzLCAucGFuZWwgLmxpc3QtZ3JvdXAgPiAubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkOmZvY3VzLXZpc2libGUsIC5wYW5lbCAubGlzdC1ncm91cCA+IC5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLXNpZGViYXItYm9yZGVyLWNvbG9yKTtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLnBhbmVsIC5saXN0LWdyb3VwID4gLmxpc3QtZ3JvdXAtaXRlbSBpOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gIC5wYW5lbCAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSwgLnBhbmVsIC5saXN0LWdyb3VwID4gYS5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyLCAucGFuZWwgLmxpc3QtZ3JvdXAgPiBhLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWFjdGl2ZS1iZyk7IH1cblxuLnBhbmVsIC50d2VldCB7XG4gIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAucGFuZWwgLnR3ZWV0ID4gaSB7XG4gICAgZm9udC1zaXplOiAxOXB4OyB9XG4gIC5wYW5lbCAudHdlZXQgPiBwIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDsgfVxuICAucGFuZWwgLnR3ZWV0ICsgcCB7XG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XG4gICAgbWFyZ2luOiAwOyB9XG5cbi5wYW5lbCN0d2l0dGVyRmVlZE91dHB1dCAubG9hZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhbmVsIC0gQ29sbGFwc2FibGUgKHRpY2tldCByZXBseSlcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLWNvbGxhcHNhYmxlID4gLnBhbmVsLWhlYWRpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1ibG9jay1ib3JkZXItY29sb3IpOyB9XG4gIC5wYW5lbC1jb2xsYXBzYWJsZSA+IC5wYW5lbC1oZWFkaW5nIC5jb2xsYXBzZS1pY29uIHtcbiAgICBvcmRlcjogMjsgfVxuICAucGFuZWwtY29sbGFwc2FibGUgPiAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUsXG4gIC5wYW5lbC1jb2xsYXBzYWJsZSA+IC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSA+IGkge1xuICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTsgfVxuXG4ucGFuZWwtY29sbGFwc2FibGUgPiAucGFuZWwtYm9keSB7XG4gIHBhZGRpbmc6IDE4cHggMTVweCAyNHB4OyB9XG5cbi5wYW5lbC1jb2xsYXBzYWJsZSA+IC5wYW5lbC1ib2R5LWNvbGxhcHNlZCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCAtIFByb21vY29kZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFuZWwtcHJvbW8tY29kZSAucGFuZWwtaGVhZGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLnBhbmVsLXByb21vLWNvZGUgLnBhbmVsLWhlYWRpbmcge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cbiAgLnBhbmVsLXByb21vLWNvZGUgLnBhbmVsLWhlYWRpbmcgbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pOyB9XG4gIC5wYW5lbC1wcm9tby1jb2RlIC5wYW5lbC1oZWFkaW5nIC5wcm9tby1jb2RlLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpOyB9XG4gIC5wYW5lbC1wcm9tby1jb2RlIC5wYW5lbC1oZWFkaW5nIC5wcm9tby1jb2RlLWFjdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgIC5wYW5lbC1wcm9tby1jb2RlIC5wYW5lbC1oZWFkaW5nIC5wcm9tby1jb2RlLWFjdGlvbiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgLSBDaGVja1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFuZWwtY2hlY2sge1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAucGFuZWwtY2hlY2suY2hlY2tlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1hY3RpdmUtYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWFjdGl2ZS1iZyk7XG4gICAgei1pbmRleDogOTsgfVxuICAgIC5wYW5lbC1jaGVjay5jaGVja2VkIC5jaGVjay1zaWduIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnBhbmVsLWNoZWNrLmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cbiAgICAucGFuZWwtY2hlY2suZGlzYWJsZWQgLmNoZWNrLWNvbnRlbnQge1xuICAgICAgb3BhY2l0eTogMC41OyB9XG4gICAgLnBhbmVsLWNoZWNrLmRpc2FibGVkIC5jaGVjayA+IGxhYmVsIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDsgfVxuXG4ucGFuZWwtY2hlY2sgLnBhbmVsLWhlYWRpbmcuY2hlY2sge1xuICBwYWRkaW5nOiAwOyB9XG4gIC5wYW5lbC1jaGVjayAucGFuZWwtaGVhZGluZy5jaGVjayAuYWNjb3VudC1zZWxlY3QtbGFiZWwge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5wYW5lbC1jaGVjayAuY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucGFuZWwtY2hlY2sgLmNoZWNrID4gbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogdmFyKC0tcGFuZWwtY2hlY2stcGFkZGluZyk7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnBhbmVsLWNoZWNrIC5jaGVjayA+IGxhYmVsID4gLmNoZWNrYm94LXN0eWxlZCxcbiAgICAucGFuZWwtY2hlY2sgLmNoZWNrID4gbGFiZWwgPiAucmFkaW8tc3R5bGVkLFxuICAgIC5wYW5lbC1jaGVjayAuY2hlY2sgPiBsYWJlbCA+IC5pY2hlY2stY29udHJvbCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGNhbGModmFyKC0tcGFuZWwtY2hlY2stcGFkZGluZykgKyAodmFyKC0tbGluZS1oZWlnaHQtbWQpIC0gdmFyKC0taWNoZWNrLXNpemUpKSAvIDIpO1xuICAgICAgbGVmdDogdmFyKC0tcGFuZWwtY2hlY2stcGFkZGluZyk7IH1cbiAgLnBhbmVsLWNoZWNrIC5jaGVjayA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYW5lbC1jaGVjayAuY2hlY2stY29udGVudCB7XG4gIGZsZXg6IDE7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWljaGVjay1zaXplKSArIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pKTsgfVxuICAucGFuZWwtY2hlY2sgLmNoZWNrLWNvbnRlbnQgPiBzcGFuIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTsgfVxuXG4ucGFuZWwtY2hlY2sgLmNoZWNrLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpOyB9XG4gIC5wYW5lbC1jaGVjayAuY2hlY2stdGl0bGUgW2RhdGEtdG9nZ2xlPSd0b29sdGlwJ10ge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpOyB9XG4gICAgLnBhbmVsLWNoZWNrIC5jaGVjay10aXRsZSBbZGF0YS10b2dnbGU9J3Rvb2x0aXAnXTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuXG4ucGFuZWwtY2hlY2sgLmNoZWNrLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogNnB4O1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYW5lbC1jaGVjayAuY2hlY2stZGVzYyB7XG4gIG1hcmdpbjogOHB4IDAgMCAwO1xuICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpOyB9XG5cbi5wYW5lbC1jaGVjayAuY2hlY2staWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmNoZWNrLWN5Y2xlIC5jaGVjay1zdWJ0aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IH1cbiAgLmNoZWNrLWN5Y2xlIC5jaGVjay1zdWJ0aXRsZSAuc2F2ZSxcbiAgLmNoZWNrLWN5Y2xlIC5jaGVjay1zdWJ0aXRsZSAudGV4dC1wcmltYXJ5IHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5jaGVjay1jeWNsZS5zYXZlLWF0dGFjaGVkIC5jaGVjay1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cblxuLmNoZWNrLWN5Y2xlLnNhdmUtYXR0YWNoZWQgLmxhYmVsLXNhdmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTEycHg7XG4gIHJpZ2h0OiAxNnB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIG1hcmdpbjogMDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhbmVsIC0gU3dpdGNoXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1zd2l0Y2gge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnBhbmVsLXN3aXRjaCB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lOyB9IH1cbiAgLnBhbmVsLXN3aXRjaDpob3ZlciwgLnBhbmVsLXN3aXRjaDpmb2N1cy12aXNpYmxlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJvcmRlci1jb2xvcik7IH1cbiAgLnBhbmVsLXN3aXRjaCAucGFuZWwtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDI0cHggMTZweDsgfVxuICAgIC5wYW5lbC1zd2l0Y2ggLnBhbmVsLWJvZHkgLnN3aXRjaCB7XG4gICAgICBtYXJnaW46IDAgMCAwIGF1dG87IH1cbiAgICAucGFuZWwtc3dpdGNoIC5wYW5lbC1ib2R5IC5zd2l0Y2gtbGFiZWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuXG4ucGFuZWwtY2hlY2ssXG4ucGFuZWwtc3dpdGNoIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5wYW5lbC1jaGVjazpob3ZlciwgLnBhbmVsLWNoZWNrOmZvY3VzLXZpc2libGUsXG4gIC5wYW5lbC1zd2l0Y2g6aG92ZXIsXG4gIC5wYW5lbC1zd2l0Y2g6Zm9jdXMtdmlzaWJsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1ob3Zlci1ib3JkZXItY29sb3IpOyB9XG4gIC5wYW5lbC1jaGVjayA+IC5jaGVjayxcbiAgLnBhbmVsLXN3aXRjaCA+IC5jaGVjayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucGFuZWwtY2hlY2stZ3JvdXAsXG4gIC5wYW5lbC1zd2l0Y2gtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IC0yNHB4ICFpbXBvcnRhbnQ7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCAtIEdyb3VwXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1ncm91cCAucGFuZWwtaGVhZGluZyB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5wYW5lbC1ncm91cC1jb25kZW5zZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpOyB9XG4gIC5wYW5lbC1ncm91cC1jb25kZW5zZWQgPiAucGFuZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLnBhbmVsLWdyb3VwLWNvbmRlbnNlZCA+IC5wYW5lbCArIC5wYW5lbCB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgICAucGFuZWwtZ3JvdXAtY29uZGVuc2VkID4gLnBhbmVsOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyB9XG4gICAgLnBhbmVsLWdyb3VwLWNvbmRlbnNlZCA+IC5wYW5lbCAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuICAgIC5wYW5lbC1ncm91cC1jb25kZW5zZWQgPiAucGFuZWwgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cCB7XG4gICAgICBib3JkZXItdG9wOiAwOyB9XG4gIC5wYW5lbC1ncm91cC1jb25kZW5zZWQgPiAucGFuZWwtY2hlY2sge1xuICAgIGN1cnNvcjogYXV0bzsgfVxuXG5ib2R5LmxhZ29tLWRlZmF1bHQgLnBhbmVsLWdyb3VwLWNvbmRlbnNlZCA+IC5wYW5lbCArIC5wYW5lbCB7XG4gIG1hcmdpbi10b3A6IC0xcHg7IH1cblxuYm9keTpub3QoLmxhZ29tLWRlZmF1bHQpIC5wYW5lbC1ncm91cC1jb25kZW5zZWQgPiAucGFuZWwuY2hlY2tlZCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcikgIWltcG9ydGFudDsgfVxuXG4ucGFuZWwtY29uZmlndXJlLW9wdGlvbiAuZm9ybS1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLnBhbmVsLWNvbmZpZ3VyZS1vcHRpb24gLmZvcm0tZ3JvdXAge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7IH0gfVxuICAucGFuZWwtY29uZmlndXJlLW9wdGlvbiAuZm9ybS1ncm91cCA+IGRpdiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtZ3JvdXAtYWRkb24tYmcpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctMngpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgLSBBY2NvcmRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLWFjY29yZGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC5wYW5lbC1hY2NvcmRpb24gLnBhbmVsLWhlYWRpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1hY2NvcmRpb24taGVhZGluZy1iZyk7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLnBhbmVsLWFjY29yZGlvbiAucGFuZWwtaGVhZGluZyA+IC5wYW5lbC10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnBhbmVsLWFjY29yZGlvbiAucGFuZWwtaGVhZGluZyA+IC5wYW5lbC10aXRsZSA+IGkge1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTsgfVxuICAgIC5wYW5lbC1hY2NvcmRpb24gLnBhbmVsLWhlYWRpbmc6Zm9jdXMtdmlzaWJsZSA+IC5wYW5lbC10aXRsZSwgLnBhbmVsLWFjY29yZGlvbiAucGFuZWwtaGVhZGluZzpob3ZlciA+IC5wYW5lbC10aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tcGFuZWwtYWNjb3JkaW9uLWFjdGl2ZS1oZWFkaW5nLWNvbG9yKTsgfVxuICAgICAgLnBhbmVsLWFjY29yZGlvbiAucGFuZWwtaGVhZGluZzpmb2N1cy12aXNpYmxlID4gLnBhbmVsLXRpdGxlID4gaSwgLnBhbmVsLWFjY29yZGlvbiAucGFuZWwtaGVhZGluZzpob3ZlciA+IC5wYW5lbC10aXRsZSA+IGkge1xuICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtYWNjb3JkaW9uLWFjdGl2ZS1oZWFkaW5nLWNvbG9yKTsgfVxuICAucGFuZWwtYWNjb3JkaW9uIC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAwcHg7XG4gICAgcGFkZGluZy10b3A6IDBweDsgfVxuICAgIC5wYW5lbC1hY2NvcmRpb24gLnBhbmVsLWJvZHkgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYW5lbC1hY2NvcmRpb24uaXMtb3BlbiB7XG4gICAgei1pbmRleDogMjtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWFjY29yZGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50OyB9XG4gICAgLnBhbmVsLWFjY29yZGlvbi5pcy1vcGVuIC5wYW5lbC1oZWFkaW5nID4gLnBhbmVsLXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1hY2NvcmRpb24tYWN0aXZlLWhlYWRpbmctY29sb3IpOyB9XG4gICAgICAucGFuZWwtYWNjb3JkaW9uLmlzLW9wZW4gLnBhbmVsLWhlYWRpbmcgPiAucGFuZWwtdGl0bGUgPiBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXBhbmVsLWFjY29yZGlvbi1hY3RpdmUtaGVhZGluZy1jb2xvcik7IH1cbiAgICAgICAgLnBhbmVsLWFjY29yZGlvbi5pcy1vcGVuIC5wYW5lbC1oZWFkaW5nID4gLnBhbmVsLXRpdGxlID4gaTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTU1XCI7IH1cbiAgLnBhbmVsLWFjY29yZGlvbjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWFjY29yZGlvbi1ob3Zlci1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5wYW5lbC1mZWVkYmFjayAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wYW5lbC1mZWVkYmFjayAuYnRuLWdyb3VwIC5idG4ge1xuICAgICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtc20pOyB9IH1cblxuI3BheW1lbnRHYXRld2F5c0NvbnRhaW5lciAuY2hlY2staWNvbiB7XG4gIG1heC13aWR0aDogNzBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgI3BheW1lbnRHYXRld2F5c0NvbnRhaW5lciAuY2hlY2staWNvbiBpbWcsICNwYXltZW50R2F0ZXdheXNDb250YWluZXIgLmNoZWNrLWljb24gc3ZnIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLnBhbmVsLXN1cHBvcnQtdGlja2V0cyBzcGFuIHN0cm9uZyB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuLnBhbmVsLXNlbnNpdGl2ZS1kYXRhIHtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1icmFuZC1zdWNjZXNzKTsgfVxuICAucGFuZWwtc2Vuc2l0aXZlLWRhdGEgLnBhbmVsLWJvZHkgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5wYW5lbC1jYW5jZWxyZXF1ZXN0IC53ZWxsIHtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ucGFuZWwtY2FuY2VscmVxdWVzdCAuYWxlcnQge1xuICBhbGlnbi1pdGVtczogc3RhcnQ7IH1cbiAgLnBhbmVsLWNhbmNlbHJlcXVlc3QgLmFsZXJ0IC5hbGVydC1pY29uIHtcbiAgICBhbGlnbi1zZWxmOiBzdGFydDsgfVxuXG4ucGFuZWwtY2FuY2VscmVxdWVzdCAuY2hlY2tib3gge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpOyB9XG4gIC5wYW5lbC1jYW5jZWxyZXF1ZXN0IC5jaGVja2JveCArIHAge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1pY2hlY2stc2l6ZSkgKyB2YXIoLS1jaGVja2JveC1zcGFjaW5nKSk7IH1cblxuLnBhbmVsLWNhbmNlbHJlcXVlc3QgKyAucGFuZWwgLmJ0biArIC5idG4ge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gICAgLnBhbmVsLWNhbmNlbHJlcXVlc3QgKyAucGFuZWwgLmJ0biArIC5idG4ge1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAucGFuZWwtY2FuY2VscmVxdWVzdCArIC5wYW5lbCAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi50YWItcGFuZSNBZGRvbnMgLnBhbmVsLXRpdGxlOmhhcyguZ3JhcGhpYy1pdGVtKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBQYW5lbCBTaWRlYmFyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSkge1xuICBib3JkZXItd2lkdGg6IHZhcigtLXBhbmVsLXNpZGViYXItYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWJvcmRlcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLXNpZGViYXItYmcpO1xuICBib3gtc2hhZG93OiB2YXIoLS1wYW5lbC1zaWRlYmFyLWJveC1zaGFkb3cpO1xuICAvKiBTdHlsZSB0aGUgcGFuZWwgc2lkZWJhciBsaW5rcyAqLyB9XG4gIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSkgLnBhbmVsLWhlYWRpbmcge1xuICAgIG1pbi1oZWlnaHQ6IHZhcigtLXBhbmVsLXNpZGViYXItaGVhZGluZy1oZWlnaHQpO1xuICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXNpZGViYXItaGVhZGluZy1wYWRkaW5nKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWhlYWRpbmctYmcpO1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpIC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWZvb3RlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpIC5wYW5lbC1ib2R5IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXNpZGViYXItYm9keS1wYWRkaW5nKTsgfVxuICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpIC5wYW5lbC1mb290ZXIge1xuICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXNpZGViYXItZm9vdGVyLXBhZGRpbmcpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLXNpZGViYXItZm9vdGVyLWJnKTtcbiAgICBib3JkZXItdG9wOiAwOyB9XG4gICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KSAucGFuZWwtZm9vdGVyIC5idG4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KSAucGFuZWwtZm9vdGVyIC5idG4gaSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KTpub3QoLnBhbmVsLXN0eWxlZC1ncm91cCkgLmxpc3QtZ3JvdXAge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWJvZHktcGFkZGluZyk7IH1cbiAgICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSk6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIC5saXN0LWdyb3VwID4gLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KTpub3QoLnBhbmVsLXN0eWxlZC1ncm91cCkgLmxpc3QtZ3JvdXAgPiBhLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstYmcpO1xuICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLXBhZGRpbmcpO1xuICAgICAgbWFyZ2luOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstbWFyZ2luKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsLXNpZGViYXItbGluay1ib3JkZXItcmFkaXVzKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstY29sb3IpOyB9XG4gICAgICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstaWNvbi1jb2xvcik7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSk6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIC5saXN0LWdyb3VwID4gYS5saXN0LWdyb3VwLWl0ZW06aG92ZXIsIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSk6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIC5saXN0LWdyb3VwID4gYS5saXN0LWdyb3VwLWl0ZW06Zm9jdXMsIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSk6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIC5saXN0LWdyb3VwID4gYS5saXN0LWdyb3VwLWl0ZW06Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KTpub3QoLnBhbmVsLXN0eWxlZC1ncm91cCkgLmxpc3QtZ3JvdXAgPiBhLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstaG92ZXItYmcpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhbmVsLXNpZGViYXItbGluay1ob3Zlci1wYWRkaW5nLWgpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstaG92ZXItcGFkZGluZy1oKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXBhbmVsLXNpZGViYXItbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAgICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KTpub3QoLnBhbmVsLXN0eWxlZC1ncm91cCkgLmxpc3QtZ3JvdXAgPiBhLmxpc3QtZ3JvdXAtaXRlbTpob3ZlciA+IGksIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSk6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIC5saXN0LWdyb3VwID4gYS5saXN0LWdyb3VwLWl0ZW06Zm9jdXMgPiBpLCAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtOmZvY3VzLXZpc2libGUgPiBpLCAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstaG92ZXItaWNvbi1jb2xvcik7IH1cbiAgICAgICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KTpub3QoLnBhbmVsLXN0eWxlZC1ncm91cCkgLmxpc3QtZ3JvdXAgPiBhLmxpc3QtZ3JvdXAtaXRlbTpob3Zlcjo6YmVmb3JlLCAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtOmZvY3VzOjpiZWZvcmUsIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSk6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIC5saXN0LWdyb3VwID4gYS5saXN0LWdyb3VwLWl0ZW06Zm9jdXMtdmlzaWJsZTo6YmVmb3JlLCAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTo6YmVmb3JlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLWhvdmVyLWljb24tY29sb3IpOyB9XG4gICAgICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtOmFjdGl2ZSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSk6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIC5saXN0LWdyb3VwID4gYS5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlLCAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpob3ZlciwgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KTpub3QoLnBhbmVsLXN0eWxlZC1ncm91cCkgLmxpc3QtZ3JvdXAgPiBhLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstYWN0aXZlLWJnKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstYWN0aXZlLXBhZGRpbmctaCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhbmVsLXNpZGViYXItbGluay1hY3RpdmUtcGFkZGluZy1oKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXBhbmVsLXNpZGViYXItbGluay1hY3RpdmUtY29sb3IpOyB9XG4gICAgICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSk6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIC5saXN0LWdyb3VwID4gYS5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlID4gaSwgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KTpub3QoLnBhbmVsLXN0eWxlZC1ncm91cCkgLmxpc3QtZ3JvdXAgPiBhLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6aG92ZXIgPiBpLCAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpmb2N1cyA+IGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstYWN0aXZlLWljb24tY29sb3IpOyB9XG4gICAgICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpOm5vdCgucGFuZWwtc3R5bGVkLWdyb3VwKSAubGlzdC1ncm91cCA+IGEubGlzdC1ncm91cC1pdGVtIC5sb2FkaW5nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpIC5wYW5lbC1taW5pbWlzZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpIC5yZWNlbnQtdGlja2V0IHtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KS52aWV3LWZpbHRlci1idG5zIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlLCAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpLnZpZXctZmlsdGVyLWJ0bnMgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmU6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSkudmlldy1maWx0ZXItYnRucyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTo6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KS52aWV3LWZpbHRlci1idG5zIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIGJvcmRlci1jb2xvcjogI2VlZTtcbiAgICBjb2xvcjogIzU1NTsgfVxuICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KS5wYW5lbC1hZGQtZnVuZHMgLnBhbmVsLWJvZHkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KS5wYW5lbC1hZGQtZnVuZHMgLnBhbmVsLWJvZHkgLmZvcm0tZ3JvdXAgLmlucHV0LWdyb3VwIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDEycHggMHB4IDBweCAwcHg7IH1cbiAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KVttZW51aXRlbW5hbWU9XCJTdXBwb3J0IFBJTlwiXSAuaW5wdXQtZ3JvdXAtYnRuICNkcGxfY29weVBpbiB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ib3JkZXItY29sb3IpOyB9XG4gICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KVttZW51aXRlbW5hbWU9XCJTdXBwb3J0IFBJTlwiXSAuaW5wdXQtZ3JvdXAtYnRuICNkcGxfY29weVBpbjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4taG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4taG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpOyB9XG4gIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSlbbWVudWl0ZW1uYW1lPVwiU3VwcG9ydCBQSU5cIl0gLmlucHV0LWdyb3VwLWJ0biBpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDBweDsgfVxuICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpW21lbnVpdGVtbmFtZT1cIlN1cHBvcnQgUElOXCJdIC5waW5jb2RlLWlucHV0LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSlbbWVudWl0ZW1uYW1lPVwiU3VwcG9ydCBQSU5cIl0gLnBpbmNvZGUtaW5wdXQtY29udGFpbmVyIGlucHV0IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KS5wYW5lbC1yZWdpc3RlciB7XG4gICAgcGFkZGluZzogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTsgfVxuICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSkucGFuZWwtcmVnaXN0ZXIucGFuZWwtc2lkZWJhci1kZWZhdWx0IHtcbiAgICAgIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTsgfVxuICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSkucGFuZWwtcmVnaXN0ZXIgLmlucHV0LWdyb3VwIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpOyB9XG4gICAgICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpLnBhbmVsLXJlZ2lzdGVyIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1zdW1tYXJ5KS5wYW5lbC1yZWdpc3RlciAuaW5wdXQtZ3JvdXAtYWRkb24gaSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXNlYXJjaC1maWVsZC1pY29uLWNvbG9yKTsgfVxuICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtc3VtbWFyeSkucGFuZWwtcmVnaXN0ZXIgLmZvcm0tY29udHJvbCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uc2lkZWJhciAucGFuZWwtc2lkZWJhciB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXBhbmVsLXNpZGViYXItbWFyZ2luLWJvdHRvbSk7IH1cbiAgLnNpZGViYXIgLnBhbmVsLXNpZGViYXIgLnBhbmVsLWJvZHkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLnBhbmVsLXNpZGViYXIgLnBhbmVsLXRpdGxlIHtcbiAgLyogSGlkZSBwYW5lbCBpY29ucyBnZW5lcmF0ZWQgYnkgV0hNQ1MgKi8gfVxuICAucGFuZWwtc2lkZWJhciAucGFuZWwtdGl0bGUgPiBpIHtcbiAgICB3aWR0aDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogMDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24pID4gLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KSAhaW1wb3J0YW50OyB9XG4gIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uKSA+IC5saXN0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24pID4gLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXJlY2VudC10aWNrZXRzKSA+IC5saXN0LWdyb3VwIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnBhbmVsLXNpZGViYXIgPiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDMzJSAtIDE2cHgpOyB9XG4gICAgLnBhbmVsLXNpZGViYXIgPiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBmbGV4LWJhc2lzOiAzNCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucGFuZWwtc2lkZWJhciA+IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gMTZweCk7IH1cbiAgICAucGFuZWwtc2lkZWJhciA+IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIGZsZXgtYmFzaXM6IDUwJTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAucGFuZWwtc2lkZWJhciA+IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGFuZWwgU2lkZWJhciAtIENsaWVudCBEZXRhaWxzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIHtcbiAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xuICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xuICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3cpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1oZWFkaW5nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyBzdHJvbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyBzdHJvbmcgKyBiciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIGVtIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctc20tdikgdmFyKC0tdWktcGFkZGluZy1zbS1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1idG4tc20tZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXNtLWJvcmRlci1yYWRpdXMpO1xuICBmb250LXdlaWdodDogdmFyKC0tYnRuLXNtLWZvbnQtd2VpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuZm9jdXMsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cywgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLm9wZW4gPiAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5vcGVuID4gLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlcik7IH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgLm9wZW4gPiAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgIC5vcGVuID4gLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAub3BlbiA+IC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgLm9wZW4gPiAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgLm9wZW4gPiAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOmFjdGl2ZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmFjdGl2ZSxcbiAgLm9wZW4gPiAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuZHJvcGRvd24tdG9nZ2xlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpOmFjdGl2ZSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5hY3RpdmUsXG4gIC5vcGVuID4gLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5kcm9wZG93bi10b2dnbGUsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKTphY3RpdmUsIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKS5hY3RpdmUsXG4gIC5vcGVuID4gLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSlbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSlbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bjpub3QoLmJ0bi1vdXRsaW5lKSAubG9hZGVyIC5zcGlubmVyID4gZGl2IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSlbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSlbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNjsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG46bm90KC5idG4tb3V0bGluZSkgLmJhZGdlLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpIC5iYWRnZSwgLnBhbmVsLXNpZGViYXJbbWVudWl0ZW1uYW1lKj1TdXBwb3J0LVBpbl0gLnBhbmVsLWZvb3RlciAuYnRuOm5vdCguYnRuLW91dGxpbmUpIC5iYWRnZSB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIgLmJ0bixcbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuLmJ0bi1vdXRsaW5lLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuLFxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLnBhbmVsLWZvb3RlciAuYnRuLmJ0bi1vdXRsaW5lLCAucGFuZWwtc2lkZWJhclttZW51aXRlbW5hbWUqPVN1cHBvcnQtUGluXSAucGFuZWwtZm9vdGVyIC5idG4sXG4gIC5wYW5lbC1zaWRlYmFyW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIC5wYW5lbC1mb290ZXIgLmJ0bi5idG4tb3V0bGluZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiA0cHggMDsgfSB9XG5cbi5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIge1xuICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLXNwYWNpbmctMXgpKTtcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXNwYWNpbmctMXgpKTsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1kZXRhaWxzIC5wYW5lbC1mb290ZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuLFxuICAgICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWRldGFpbHMgLnBhbmVsLWZvb3RlciAuYnRuLmJ0bi1vdXRsaW5lIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTF4KSAwIHZhcigtLXNwYWNpbmctMXgpOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGFuZWwgU2lkZWJhciAtIENsaWVudCBDb250YWN0c1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLmxpc3QtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAtOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogU2V0IGNvbnRhY3QgaWNvbiAqL1xuICAgIC8qIERpc3BsYXkgb25seSAzIGZpcnN0IGNvbnRhY3RzICovIH1cbiAgICAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLmxpc3QtZ3JvdXAtaXRlbTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29udGVudDogXCJcXGU5NDJcIjtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgIHNwZWFrOiBub25lO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstaWNvbi1jb2xvcik7XG4gICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XG4gICAgICBmb250LWZhbWlseTogbGFnb20tc21hbGwtaWNvbnMgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsOyB9XG4gICAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5saXN0LWdyb3VwLWl0ZW06bnRoLWNoaWxkKDEpLCAucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtY29udGFjdHMgLmxpc3QtZ3JvdXAtaXRlbTpudGgtY2hpbGQoMiksIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAubGlzdC1ncm91cC1pdGVtOm50aC1jaGlsZCgzKSwgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5wYW5lbC1zaWRlYmFyLnBhbmVsLWNsaWVudC1jb250YWN0cyAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtY2xpZW50LWNvbnRhY3RzIC5saXN0LWdyb3VwID4gZGl2ICsgLmNvbnRhY3QtbW9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBQYW5lbCBTaWRlYmFyIC0gU3R5bGVkIExpc3QgR3JvdXBcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLXNpZGViYXIucGFuZWwtc3R5bGVkLWdyb3VwIC5saXN0LWdyb3VwIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtc2lkZWJhci1saXN0LWdyb3VwLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpc3QtZ3JvdXAtYm9yZGVyKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tcGFuZWwtc2lkZWJhci1saXN0LWdyb3VwLWJveC1zaGFkb3cpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7IH1cblxuLnBhbmVsLXNpZGViYXIgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbVttZW51aXRlbW5hbWU9XCJNYW5hZ2VcIl0gZm9ybSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBQYW5lbCBTaWRlYmFyIC0gVGlja2V0c1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLmNvbC1idXR0b24tcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDdweDsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLmNvbC1idXR0b24tbGVmdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDdweDsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLmJ0biB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiA+IC5saXN0LWdyb3VwLWl0ZW0gLnB1bGwtcmlnaHQge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uID4gLmxpc3QtZ3JvdXAtaXRlbSAudGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAycHggMDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1zdXBwb3J0LWhvdXJzIC5wYW5lbC1ib2R5IC5saXN0LWdyb3VwLWl0ZW0gLm9wZXJhdGluZy1ob3VyLXRpdGxlLFxuLnBhbmVsLXNpZGViYXIucGFuZWwtc3VwcG9ydC1ob3VycyAucGFuZWwtYm9keSAubGlzdC1ncm91cC1pdGVtIC5vcGVyYXRpbmctaG91ci16b25lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cblxuLnBhbmVsLXNpZGViYXIucGFuZWwtc3VwcG9ydC1ob3VycyAucGFuZWwtYm9keSAubGlzdC1ncm91cC1pdGVtIC5vcGVyYXRpbmctaG91ci12YWwge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bGcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG5cbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXN1cHBvcnQtaG91cnMgLnBhbmVsLWJvZHkgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0zeCkgdmFyKC0tc3BhY2luZy0zeCk7IH1cblxuLnBhbmVsLXNpZGViYXIucGFuZWwtc3VwcG9ydC1ob3VycyAucGFuZWwtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1zdXBwb3J0LWhvdXJzIC5zdXBwb3J0LXN0YXR1cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogNjhweDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXN1cHBvcnQtaG91cnMgLnN1cHBvcnQtc3RhdHVzIC5sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1zdXBwb3J0LXRhZ3MgLnBhbmVsLWJvZHkge1xuICBtYXJnaW4tYm90dG9tOiAtNHB4OyB9XG5cbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXN1cHBvcnQtdGFncyBhIHtcbiAgaGVpZ2h0OiAyNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMXB4IHZhcigtLXNwYWNpbmctMXgpO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICBmb250LXNpemU6IDExcHggIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXN1cHBvcnQtdGFncyBhOm5vdCg6aG92ZXIpIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtY2MgLnctaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtY2MgLnRpY2tldC1jYy1lbWFpbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWNjIC50aWNrZXQtY2MtZW1haWwgLmVtYWlsIHtcbiAgICBmbGV4OiAxOyB9XG5cbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1hdHRhY2hlbWVudHMgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBQYW5lbCBTaWRlYmFyIC0gQWRkIEZ1bmRzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1zaWRlYmFyLnBhbmVsLWFkZC1mdW5kczpub3QoLnBhbmVsLXN1bW1hcnkpIC5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG5cbi5wYW5lbC1zaWRlYmFyLnBhbmVsLWFkZC1mdW5kczpub3QoLnBhbmVsLXN1bW1hcnkpIC5hbGVydCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICBmb250LXNpemU6IHZhcigtLXByaWNlLXNtLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1zbS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1zbS1saW5lLWhlaWdodCk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGFuZWwgU2lkZWJhciAtIEJveCBTdHlsZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkgLnBhbmVsLWZvb3RlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXByaW1hcnkucGFuZWwtY2xpZW50LWRldGFpbHMgc3Ryb25nIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7IH1cblxuLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stYmcpO1xuICBib3JkZXI6IHZhcigtLXNlY29uZGFyeS1ibG9jay1ib3JkZXIpO1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtZmFkZWQtY29sb3IpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5IC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10aXRsZS1jb2xvcik7IH1cbiAgLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkgLnBhbmVsLWZvb3RlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gIC5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItc2Vjb25kYXJ5LnBhbmVsLWNsaWVudC1kZXRhaWxzIHN0cm9uZyB7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10aXRsZS1jb2xvcik7IH1cblxuLnBhbmVsLXRpY2tldC1hdHRhY2hlbWVudHMgYSB7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFBhbmVsIFN1bW1hcnlcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLXN1bW1hcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1wYW5lbC1zdW1tYXJ5LXRleHQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXBhbmVsLXN1bW1hcnktdGV4dC1saW5lLWhlaWdodCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXBhbmVsLXN1bW1hcnktc2hhZG93KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcGFuZWwtc3VtbWFyeS1ib3JkZXItcmFkaXVzKTsgfVxuICAucGFuZWwtc3VtbWFyeSAucGFuZWwtaGVhZGluZyB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7IH1cbiAgICAucGFuZWwtc3VtbWFyeSAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1wYW5lbC1zdW1tYXJ5LXRpdGxlLWZvbnQtc2l6ZSk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tcGFuZWwtc3VtbWFyeS10aXRsZS1mb250LXdlaWdodCk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tcGFuZWwtc3VtbWFyeS10aXRsZS1saW5lLWhlaWdodCk7IH1cbiAgICAucGFuZWwtc3VtbWFyeSAucGFuZWwtaGVhZGluZyArICNwcm9kdWN0dG90YWwgLnBhbmVsLWJvZHksXG4gICAgLnBhbmVsLXN1bW1hcnkgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtYm9keSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgLnBhbmVsLXN1bW1hcnkgLnBhbmVsLWhlYWRpbmcgKyAjcHJvZHVjdHRvdGFsIC5wYW5lbC1ib2R5IC5vcmRlci1zdW1tYXJ5LWxpc3Q6Zmlyc3QtY2hpbGQsXG4gICAgICAucGFuZWwtc3VtbWFyeSAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1ib2R5IC5vcmRlci1zdW1tYXJ5LWxpc3Q6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAucGFuZWwtc3VtbWFyeSAucGFuZWwtYm9keSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5IC5wYW5lbC1ib2R5ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAucGFuZWwtc3VtbWFyeSAucGFuZWwtZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAucGFuZWwtc3VtbWFyeSAucGFuZWwtZm9vdGVyIC5idG4tY2hlY2tvdXQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5wYW5lbC1zdW1tYXJ5IC5wYW5lbC1mb290ZXIgLmJ0bi1jaGVja291dCBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMHB4OyB9XG4gICAgLnBhbmVsLXN1bW1hcnkgLnBhbmVsLWZvb3RlcjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xuICAgICAgcmlnaHQ6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgLnBhbmVsLXN1bW1hcnkgLnBhbmVsLWZvb3RlciAuc3VtbWFyeS1hY3Rpb25zIC5idG4gKyAuYnRuIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAucGFuZWwtc3VtbWFyeSAubGlzdC1ncm91cCB7XG4gICAgbWFyZ2luOiAwIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgICAucGFuZWwtc3VtbWFyeSAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXN1bW1hcnktbGlzdC1pdGVtLXBhZGRpbmctdikgMCAhaW1wb3J0YW50OyB9XG4gICAgICAucGFuZWwtc3VtbWFyeSAubGlzdC1ncm91cC1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnkgPiAubG9hZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAyOXB4OyB9XG4gIC5wYW5lbC1zdW1tYXJ5ICsgLmFsZXJ0LXBhbmVsIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhsZykpO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgcGFkZGluZy10b3A6IDE4cHg7IH1cbiAgICAucGFuZWwtc3VtbWFyeSArIC5hbGVydC1wYW5lbCBpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5ICsgLmFsZXJ0LXBhbmVsIC5hbGVydC1pY29uOmJlZm9yZSB7XG4gICAgICB0b3A6IDM3cHg7IH1cbiAgLnBhbmVsLXN1bW1hcnkucGFuZWwtc2lkZWJhciArIC5hbGVydC1wYW5lbCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHhsZykpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5IC5zdW1tYXJ5LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuICAucGFuZWwtc3VtbWFyeSAucHJpY2UgKyAuYnRuIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFuZWwtc3VtbWFyeS1saXN0LWl0ZW0tcGFkZGluZy12KTsgfVxuICAucGFuZWwtc3VtbWFyeSAuc3VtbWFyeS1hY3Rpb25zIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFuZWwtc3VtbWFyeS1saXN0LWl0ZW0tcGFkZGluZy12KTsgfVxuICAucGFuZWwtc3VtbWFyeSAucHJpY2UtYW1vdW50LXRvdGFsIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgyKTsgfVxuICAucGFuZWwtc3VtbWFyeSAucHJpY2UtYW1vdW50LXByb21vIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoOyB9XG4gIC5wYW5lbC1zdW1tYXJ5Om5vdCgucGFuZWwtc3VtbWFyeS1wcmltYXJ5KTpub3QoLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5KSAubGlzdC1pdGVtLXByb21vIC5pdGVtLW5hbWUsIC5wYW5lbC1zdW1tYXJ5Om5vdCgucGFuZWwtc3VtbWFyeS1wcmltYXJ5KTpub3QoLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5KSAubGlzdC1pdGVtLXByb21vIC5pdGVtLXZhbHVlIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBjb2xvcjogdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnk6bm90KC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkpOm5vdCgucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkpIC5saXN0LWl0ZW0tcHJvbW8gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLWxhYmVsLXNhdmluZ3MtY29sb3IpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5Om5vdCgucGFuZWwtc3VtbWFyeS1wcmltYXJ5KTpub3QoLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5KSAucHJpY2UtYW1vdW50LXByb21vIHtcbiAgICBjb2xvcjogdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvcik7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5TdW1tYXJ5IExpc3RcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnN1bW1hcnktdG90YWwgKyAuc3VtbWFyeS1jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhbmVsLXN1bW1hcnktbGlzdC1pdGVtLXBhZGRpbmctdik7XG4gIG1hcmdpbi10b3A6IHZhcigtLXBhbmVsLXN1bW1hcnktbGlzdC1pdGVtLXBhZGRpbmctdik7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuXG4uc3VtbWFyeS1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWF4LWhlaWdodDogdmFyKC0tcGFuZWwtc3VtbWFyeS1jb250ZW50LW1heC1oZWlnaHQpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpICsgMXB4KTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTsgfVxuICAuc3VtbWFyeS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IHZhcigtLXNjcm9sbGJhci13aWR0aCk7IH1cbiAgLnN1bW1hcnktY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhci10cmFjay1iZyk7XG4gICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1zY3JvbGxiYXItd2lkdGgpIC8yKTsgfVxuICAuc3VtbWFyeS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKTtcbiAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXNjcm9sbGJhci13aWR0aCkgLzIpOyB9XG4gIC5zdW1tYXJ5LWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItdGh1bWItaG92ZXItYmcpOyB9XG5cbi5zdW1tYXJ5LWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICByb3ctZ2FwOiB2YXIoLS1wYW5lbC1zdW1tYXJ5LWxpc3QtZ2FwLXYpO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IHZhcigtLXBhbmVsLXN1bW1hcnktbGlzdC1pdGVtLXBhZGRpbmctdikgMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5zdW1tYXJ5LWxpc3Q6Zmlyc3QtY2hpbGQ6bm90KC5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9ucykge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5zdW1tYXJ5LWxpc3Q6bGFzdC1jaGlsZDpub3QoLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAuc3VtbWFyeS1saXN0OmhhcygrIC5zdW1tYXJ5LWxpc3QuaGlkZGVuKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAuc3VtbWFyeS1saXN0LXJlY3VycmluZyAubGlzdC1pdGVtOm5vdCgubGlzdC1pdGVtLXRpdGxlKSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cbiAgLnN1bW1hcnktbGlzdC1zdWJ0b3RhbCB7XG4gICAgcm93LWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTsgfVxuICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gICAgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtLXByb21vIC5pdGVtLW5hbWUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuICAgIC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7IH1cbiAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0tbWFpbiB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcGFuZWwtc3VtbWFyeS1tYWluLWl0ZW0tZm9udC1zaXplKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wYW5lbC1zdW1tYXJ5LW1haW4taXRlbS1mb250LXdlaWdodCk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tcGFuZWwtc3VtbWFyeS1tYWluLWl0ZW0tbGluZS1oZWlnaHQpOyB9XG4gICAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0tbWFpbiAuaXRlbS12YWx1ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpOyB9XG4gICAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0tbWFpbi5saXN0LWl0ZW0tc2VydmljZXMge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0tbWFpbi5saXN0LWl0ZW0tc2VydmljZXMgYSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0tbWFpbiArIC5saXN0LWl0ZW0tZG9tYWluIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7IH1cbiAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0tcHJvbW8ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAgIC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbS1wcm9tbyBzdmcge1xuICAgICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgbWluLXdpZHRoOiAxNHB4OyB9XG4gICAgICAgIC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbS1wcm9tbyBzdmcgcGF0aCB7XG4gICAgICAgICAgZmlsbDogI2ZmZjsgfVxuICAgICAgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtLXByb21vIC5pdGVtLW5hbWUsIC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbS1wcm9tbyAuaXRlbS12YWx1ZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7IH1cbiAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0uZmFkZWQge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtZmFkZWQtY29sb3IpOyB9XG4gICAgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtIC5pdGVtLXZhbHVlIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgICAgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtIC5pdGVtLXZhbHVlIC5saW5lLXRocm91Z2gsXG4gICAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0gLml0ZW0tdmFsdWUgW3N0eWxlKj1cImZvbnQtc2l6ZTogMS4yZW07IHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1wiXSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgICAgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtIC5pdGVtLXZhbHVlIC5pdGVtLXZhbHVlLWZyZWUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtIC5pdGVtLW5hbWUge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0gLml0ZW0tbmFtZSBzcGFuIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgICAgIC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbSAuaXRlbS1uYW1lID4gKiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbSAuaXRlbS1uYW1lIC5kb21haW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IH1cbiAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0gLml0ZW0tYWN0aW9ucyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgICAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0gLml0ZW0tYWN0aW9ucyBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgLnN1bW1hcnktbGlzdCAuZGlzY291bnRfY2VudGVyLWJhc2VfY2FydF9vcmRlcl90b3RhbCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1wYW5lbC1zdW1tYXJ5LXRleHQtZm9udC1zaXplKSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wYW5lbC1zdW1tYXJ5LXRleHQtbGluZS1oZWlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1wcmljZS1zYXZpbmdzLWNvbG9yKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBDb25maWcgT3B0aW9ucyBTdW1tYXJ5IExpc3RcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbjpub3QoLnNob3ctY29uZm9wdGlvbi1wcmljZSkgLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zLmhvdmVyYWJsZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbjpub3QoLnNob3ctY29uZm9wdGlvbi1wcmljZSkgLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zLmhvdmVyYWJsZSAuaXRlbS12YWx1ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb246bm90KC5zaG93LWNvbmZvcHRpb24tcHJpY2UpIC5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9ucy5ob3ZlcmFibGUgLml0ZW0tdmFsdWUgKjpub3QoLml0ZW0tdmFsdWUtZnJlZSkge1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7IH1cbiAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbjpub3QoLnNob3ctY29uZm9wdGlvbi1wcmljZSkgLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zLmhvdmVyYWJsZSAuaXRlbS1uYW1lIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7IH1cbiAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbjpub3QoLnNob3ctY29uZm9wdGlvbi1wcmljZSkgLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zLmhvdmVyYWJsZSAubGlzdC1pdGVtOmhvdmVyIC5pdGVtLXZhbHVlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB3aWR0aDogbWluLWNvbnRlbnQ7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uOm5vdCguc2hvdy1jb25mb3B0aW9uLXByaWNlKSAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMuaG92ZXJhYmxlIC5saXN0LWl0ZW06aG92ZXIgLml0ZW0tdmFsdWUgKiB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICAgIHdpZHRoOiBtaW4tY29udGVudDsgfVxuICAucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uOm5vdCguc2hvdy1jb25mb3B0aW9uLXByaWNlKSAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMuaG92ZXJhYmxlIC5saXN0LWl0ZW06aG92ZXIgLml0ZW0tbmFtZSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uOm5vdCguc2hvdy1jb25mb3B0aW9uLXByaWNlKSAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMuaG92ZXJhYmxlIC5saXN0LWl0ZW06aG92ZXIgLml0ZW0tbmFtZSAuaXRlbS1vcHRpb25uYW1lIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG5cbi5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20tdikgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWRyb3Bkb3duLWNvbGxhcHNlLWJnKTtcbiAgZ2FwOiAwO1xuICBtYXJnaW4tdG9wOiAtNHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMgLmxpc3QtaXRlbSB7XG4gICAgcGFkZGluZzogMnB4IDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTsgfVxuICAgIC5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9ucyAubGlzdC1pdGVtIC5pdGVtLW5hbWUge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgbWluLXdpZHRoOiA1MHB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAgICAgLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zIC5saXN0LWl0ZW0gLml0ZW0tbmFtZSAuaXRlbS1vcHRpb25uYW1lIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTsgfVxuICAgIC5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9ucyAubGlzdC1pdGVtIC5pdGVtLXZhbHVlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgICAgZmxleC1ncm93OiAxOyB9XG5cbi5zaG93LWZyZWUtbGFuZyAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0gLml0ZW0tdmFsdWUgLml0ZW0tdmFsdWUtZnJlZSB7XG4gIGRpc3BsYXk6IGlubGluZTsgfVxuICAuc2hvdy1mcmVlLWxhbmcgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtIC5pdGVtLXZhbHVlIC5pdGVtLXZhbHVlLWZyZWUgKyBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCBTdW1tYXJ5IENvbmZpZ3VyYXRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuXG4ucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5zdW1tYXJ5LWxpc3Qge1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1pdGVtIC5pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg4KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDgpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1pbi13aWR0aDogNTBweDtcbiAgICB3ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgICB3ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS1uYW1lIC5uYW1lLFxuICAgIC5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS1uYW1lIC5zdWJuYW1lIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHdlYmtpdC1saW5lLWNsYW1wOiAxO1xuICAgICAgd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1pdGVtIC5pdGVtLW5hbWUgLnN1Ym5hbWUge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14eHMpO1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5zdW1tYXJ5LWl0ZW0gLml0ZW0tbmFtZSAubmFtZTpoYXMoLnF0eS1udW1iZXItY29udGFpbmVyKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogNnB4OyB9XG4gICAgICAucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5zdW1tYXJ5LWl0ZW0gLml0ZW0tbmFtZSAubmFtZTpoYXMoLnF0eS1udW1iZXItY29udGFpbmVyKSBzcGFuIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICgyMHB4ICsgNnB4KSk7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS1uYW1lIC5uYW1lID4gc3BhbiB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1pdGVtIC5pdGVtLXZhbHVlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gICAgZmxleC1ncm93OiAxOyB9XG4gICAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1pdGVtIC5pdGVtLXZhbHVlLXByaWNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS12YWx1ZSAuc2V0dXAtZmVlIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5zdW1tYXJ5LWl0ZW0tYWRkb24gLml0ZW0tbmFtZSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtaW4td2lkdGg6IDMwcHg7XG4gICAgd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gICAgd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1pdGVtIC5pdGVtLXZhbHVlLWZyZWUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1pdGVtLXByb21vY29kZSB7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1pdGVtLXByb21vY29kZSAuaXRlbS1uYW1lIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbS1wcm9tb2NvZGUgLml0ZW0tdmFsdWUge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBjb2xvcjogdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvcik7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuXG4ucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5xdHktbnVtYmVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMjBweDtcbiAgbWluLXdpZHRoOiBtaW4tY29udGVudDtcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IDAgMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7IH1cbiAgLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAucXR5LW51bWJlci1jb250YWluZXIgLnF0eS1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4cyk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cblxuLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAucGFuZWwtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnBhbmVsLWZvb3RlciAuc3VtbWFyeS1pdGVtIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5wYW5lbC1mb290ZXIgLnN1bW1hcnktaXRlbTpoYXMoKyAuc3VtbWFyeS1pdGVtLXRheDIpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5wYW5lbC1mb290ZXIgLnN1bW1hcnktaXRlbS10YXggLml0ZW0tbmFtZSAubmFtZSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cblxuLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuZ3JhcGhpYy1pdGVtOmhhcyguc3ZnLWljb24pIHtcbiAgcGFkZGluZzogM3B4OyB9XG5cbi5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24uaGlkZS1ob3N0bmFtZSAuc3VibmFtZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCBTdW1tYXJ5IENvbmZpZ3VyYXRpb24gUHJpbWFyeS9TZWNvbmRhcnkgU3R5bGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMsXG4ucGFuZWwtc3VtbWFyeS1wcmltYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwMTQ7IH1cbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMgLml0ZW0tbmFtZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zIC5pdGVtLW5hbWUge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1mYWRlZC1jb2xvcik7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9ucyAuaXRlbS1uYW1lIC5pdGVtLW9wdGlvbm5hbWUsXG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zIC5pdGVtLW5hbWUgLml0ZW0tb3B0aW9ubmFtZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMuaG92ZXJhYmxlIC5saXN0LWl0ZW06aG92ZXIgLml0ZW0tdmFsdWUgKixcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zLmhvdmVyYWJsZSAubGlzdC1pdGVtOmhvdmVyIC5pdGVtLXZhbHVlICoge1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXIpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zLmhvdmVyYWJsZSAubGlzdC1pdGVtOmhvdmVyIC5pdGVtLW5hbWUsXG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9ucy5ob3ZlcmFibGUgLmxpc3QtaXRlbTpob3ZlciAuaXRlbS1uYW1lIHtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyKTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zLmhvdmVyYWJsZSAubGlzdC1pdGVtOmhvdmVyIC5pdGVtLW5hbWUgLml0ZW0tb3B0aW9ubmFtZSxcbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMuaG92ZXJhYmxlIC5saXN0LWl0ZW06aG92ZXIgLml0ZW0tbmFtZSAuaXRlbS1vcHRpb25uYW1lIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXIpOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS1uYW1lIC5uYW1lLFxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS1uYW1lIC5uYW1lIHtcbiAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWhlYWRpbmctY29sb3IpOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS1uYW1lIC5zdWJuYW1lLFxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS1uYW1lIC5zdWJuYW1lIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7IH1cblxuLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuc3VtbWFyeS1pdGVtIC5pdGVtLXZhbHVlLFxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS12YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1oZWFkaW5nLWNvbG9yKTsgfVxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5zdW1tYXJ5LWl0ZW0gLml0ZW0tdmFsdWUgLnNldHVwLWZlZSxcbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnN1bW1hcnktaXRlbSAuaXRlbS12YWx1ZSAuc2V0dXAtZmVlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktZmFkZWQtY29sb3IpOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnBhbmVsLWZvb3RlciAuc3VtbWFyeS1pdGVtLFxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnBhbmVsLWZvb3RlciAuc3VtbWFyeS1pdGVtIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnF0eS1udW1iZXItY29udGFpbmVyLFxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnF0eS1udW1iZXItY29udGFpbmVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjNEOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeS5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24gLnF0eS1udW1iZXItY29udGFpbmVyIC5xdHktbnVtYmVyLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAucXR5LW51bWJlci1jb250YWluZXIgLnF0eS1udW1iZXIge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1oZWFkaW5nLWNvbG9yKTsgfVxuXG4ucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5ncmFwaGljLWl0ZW0gLmdyYXBoaWMtaXRlbS1iZyxcbi5wYW5lbC1zdW1tYXJ5LXByaW1hcnkucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5ncmFwaGljLWl0ZW0gLmdyYXBoaWMtaXRlbS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkYyOTsgfVxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uIC5ncmFwaGljLWl0ZW0gLmdyYXBoaWMtaXRlbS1iZyBpLFxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiAuZ3JhcGhpYy1pdGVtIC5ncmFwaGljLWl0ZW0tYmcgaSB7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGFuZWwgU3VtbWFyeSAtIE1heCBIZWlnaHRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYWluLXNpZGViYXIgLnNpZGViYXItc3RpY2t5LXN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMiAqIHZhcigtLW1haW4tc2lkZWJhci1zdGlja3ktdG9wKSk7XG4gICAgdHJhbnNpdGlvbjogdG9wIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAubWFpbi1zaWRlYmFyIC5zaWRlYmFyLXN0aWNreS1zdW1tYXJ5IC5wYW5lbC1zdW1tYXJ5LFxuICAgIC5tYWluLXNpZGViYXIgLnNpZGViYXItc3RpY2t5LXN1bW1hcnkgLnBhbmVsLXN1bW1hcnkgI3Byb2R1Y3R0b3RhbCxcbiAgICAubWFpbi1zaWRlYmFyIC5zaWRlYmFyLXN0aWNreS1zdW1tYXJ5IC5wYW5lbC1zdW1tYXJ5IC5wYW5lbC1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5tYWluLXNpZGViYXIgLnNpZGViYXItc3RpY2t5LXN1bW1hcnkgLnBhbmVsLXN1bW1hcnkgLnBhbmVsLWhlYWRpbmcge1xuICAgICAgZmxleC1zaHJpbms6IDA7IH1cbiAgICAubWFpbi1zaWRlYmFyIC5zaWRlYmFyLXN0aWNreS1zdW1tYXJ5IC5wYW5lbC1zdW1tYXJ5IC5wYW5lbC1ib2R5IHtcbiAgICAgIGZsZXgtZ3JvdzogMDsgfVxuICAgICAgLm1haW4tc2lkZWJhciAuc2lkZWJhci1zdGlja3ktc3VtbWFyeSAucGFuZWwtc3VtbWFyeSAucGFuZWwtYm9keSAuc3VtbWFyeS1jb250ZW50IHtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5tYWluLXNpZGViYXIgLnNpZGViYXItc3RpY2t5LXN1bW1hcnkgLnBhbmVsLXN1bW1hcnkgKyAuYWxlcnQtcGFuZWwge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5zY3JvbGwtdXAgLm1haW4tc2lkZWJhciAuc2lkZWJhci1zdGlja3ktc3VtbWFyeSB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDIgKiB2YXIoLS1tYWluLXNpZGViYXItc3RpY2t5LXRvcCkgLSB2YXIoLS1hcHAtbmF2LWhlYWRlci1oZWlnaHQpKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFBhbmVsIFN1bW1hcnkgLSBPdGhlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFuZWwtc3VtbWFyeS5wYXltZW50LWZvcm0gcCB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICBtYXJnaW46IDA7IH1cblxuLnBhbmVsLXN1bW1hcnkucGF5bWVudC1mb3JtIHRhYmxlIHtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogdW5zZXQ7IH1cbiAgLnBhbmVsLXN1bW1hcnkucGF5bWVudC1mb3JtIHRhYmxlIHRib2R5LCAucGFuZWwtc3VtbWFyeS5wYXltZW50LWZvcm0gdGFibGUgdHIsIC5wYW5lbC1zdW1tYXJ5LnBheW1lbnQtZm9ybSB0YWJsZSB0ZCB7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiB1bnNldDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMDsgfVxuICAucGFuZWwtc3VtbWFyeS5wYXltZW50LWZvcm0gdGFibGUgdGJvZHkgdHIgdGQgKyB0ZCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuXG4ucGFuZWwtc3VtbWFyeS5wYXltZW50LWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5wYW5lbC1zdW1tYXJ5LnBheW1lbnQtZm9ybSAuYnRuIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBhbmVsLXN1bW1hcnkucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gaTpub3QoLmZhLXNwaW5uZXIpLFxuICAucGFuZWwtc3VtbWFyeS5wYXltZW50LWZvcm0gLmJ0biBpOm5vdCguZmEtc3Bpbm5lcikge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhbmVsLXN1bW1hcnkucGF5bWVudC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gLmZhLXNwaW5uZXIsXG4gIC5wYW5lbC1zdW1tYXJ5LnBheW1lbnQtZm9ybSAuYnRuIC5mYS1zcGlubmVyIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNnB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cblxuLnBhbmVsLXN1bW1hcnkucGF5bWVudC1mb3JtIC5idG4tc20sIC5wYW5lbC1zdW1tYXJ5LnBheW1lbnQtZm9ybSAuYnRuLWdyb3VwLXNtID4gLmJ0biB7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tYmFzZS1ib3JkZXItcmFkaXVzKTtcbiAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LnBheW1lbnQtZm9ybSBhIHtcbiAgY29sb3I6IHZhcigtLWxpbmstY29sb3IpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LnBheW1lbnQtZm9ybSBhOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tbGluay1ob3Zlci1jb2xvcik7IH1cblxuLnBhbmVsLXN1bW1hcnkudmlldy1pbnZvaWNlIC5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgLnBhbmVsLXN1bW1hcnkudmlldy1pbnZvaWNlIC5mb3JtLWdyb3VwID4gc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4ucGFuZWwtc3VtbWFyeS52aWV3LWludm9pY2UgbGFiZWwge1xuICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7IH1cblxuLnBhbmVsLXN1bW1hcnkucGFuZWwtc3VtbWFyeS1kZWZhdWx0LnZpZXctaW52b2ljZSBsYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1pbnB1dC1sYWJlbC1jb2xvcik7IH1cblxuLnBhbmVsLXN1bW1hcnkucGFuZWwtc3VtbWFyeS1kZWZhdWx0IC5wYXltZW50LWZvcm0gcCB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LnBhbmVsLXN1bW1hcnktZGVmYXVsdCAuaXRlbS1kb21haW4ge1xuICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cblxuLnBhbmVsLXN1bW1hcnkucGFuZWwtc3VtbWFyeS1wcmltYXJ5LnZpZXctaW52b2ljZSBsYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpOyB9XG5cbi5wYW5lbC1zdW1tYXJ5LnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5LnZpZXctaW52b2ljZSBsYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvcik7IH1cblxuLnBhbmVsLXN1bW1hcnkucGFuZWwtYWRkLWZ1bmRzIC5wYW5lbC1ib2R5IC5saXN0LWluZm8gLmxpc3QtaW5mby10aXRsZSxcbi5wYW5lbC1zdW1tYXJ5LnBhbmVsLWFkZC1mdW5kcyAucGFuZWwtYm9keSAubGlzdC1pbmZvIC5saXN0LWluZm8tdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGlzdC1jb2xvci1mYWRlZCk7IH1cblxuLnBhbmVsLXNpZGViYXIucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1mb290ZXIgLmJ0biB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtdikgdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xuICBmb250LXNpemU6IHZhcigtLWJ0bi1iYXNlLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLWJhc2UtYm9yZGVyLXJhZGl1cyk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5TdHlsZSBQcmltYXJ5XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1zdW1tYXJ5LXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKTtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTsgfVxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5wYW5lbC1mb290ZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAucHJpY2Uge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpOyB9XG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAucHJpY2UgLnByaWNlLXRvdGFsLFxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnByaWNlIC5wcmljZS10aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktZmFkZWQtY29sb3IpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5saXN0LWdyb3VwLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5saXN0LWdyb3VwLWl0ZW0gc3Ryb25nIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktbGlzdCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktbGlzdC1yZWN1cnJpbmcgLmxpc3QtaXRlbTpub3QoLmxpc3QtaXRlbS10aXRsZSkge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGl0bGUtY29sb3IpOyB9XG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0ge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWhlYWRpbmctY29sb3IpOyB9XG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbS10aXRsZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRvdGFsLXRleHQtZm9udC1jb2xvcik7IH1cbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtLW1haW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7IH1cbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtLmZhZGVkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtIC5pdGVtLXZhbHVlIC5saW5lLXRocm91Z2gsXG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbSAuaXRlbS12YWx1ZSBbc3R5bGUqPVwiZm9udC1zaXplOiAxLjJlbTsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XCJdIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtIC5pdGVtLW5hbWUgc3BhbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtZmFkZWQtY29sb3IpOyB9XG4gICAgICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbSAuaXRlbS1hY3Rpb25zIGEge1xuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktbGlzdCAuZGlzY291bnRfY2VudGVyLWJhc2VfY2FydF9vcmRlcl90b3RhbCB7XG4gICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5zdW1tYXJ5LXRvdGFsICsgLnN1bW1hcnktY29udGVudCB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAucGFuZWwtc3VtbWFyeS1wcmltYXJ5IC5wYXltZW50LWZvcm0gcCB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAucGF5bWVudC1mb3JtIGEge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gICAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAucGF5bWVudC1mb3JtIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuZm9ybS1ncm91cCAuY29udHJvbC1sYWJlbCB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnktcHJpbWFyeSAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXI6IG5vbmU7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5TdHlsZSBTZWNvbmRhcnlcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKTtcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yLWZhZGVkKTsgfVxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTsgfVxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnBhbmVsLWZvb3RlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAucHJpY2Uge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdG90YWwtZm9udC1jb2xvcik7IH1cbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnByaWNlIC5wcmljZS10b3RhbCxcbiAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnByaWNlIC5wcmljZS10aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3IpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3ItZmFkZWQpOyB9XG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5saXN0LWdyb3VwLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAubGlzdC1ncm91cC1pdGVtIHN0cm9uZyB7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuc3VtbWFyeS1saXN0IHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuc3VtbWFyeS1saXN0LXJlY3VycmluZyAubGlzdC1pdGVtOm5vdCgubGlzdC1pdGVtLXRpdGxlKSB7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0ge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWhlYWRpbmctY29sb3IpOyB9XG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtLXRpdGxlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10b3RhbC10ZXh0LWZvbnQtY29sb3IpOyB9XG4gICAgICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnN1bW1hcnktbGlzdCAubGlzdC1pdGVtLW1haW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTsgfVxuICAgICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbS5mYWRlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvci1mYWRlZCk7IH1cbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0gLml0ZW0tdmFsdWUgLmxpbmUtdGhyb3VnaCxcbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0gLml0ZW0tdmFsdWUgW3N0eWxlKj1cImZvbnQtc2l6ZTogMS4yZW07IHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1wiXSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvci1mYWRlZCk7IH1cbiAgICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAuc3VtbWFyeS1saXN0IC5saXN0LWl0ZW0gLml0ZW0tbmFtZSBzcGFuIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yLWZhZGVkKTsgfVxuICAgICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5zdW1tYXJ5LWxpc3QgLmxpc3QtaXRlbSAuaXRlbS1hY3Rpb25zIGEge1xuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3ItZmFkZWQpOyB9XG4gICAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5zdW1tYXJ5LWxpc3QgLmRpc2NvdW50X2NlbnRlci1iYXNlX2NhcnRfb3JkZXJfdG90YWwge1xuICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5zdW1tYXJ5LXRvdGFsICsgLnN1bW1hcnktY29udGVudCB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAucGF5bWVudC1mb3JtIHAge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvcik7IH1cbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5wYXltZW50LWZvcm0gYSB7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWNvbG9yKTsgfVxuICAgIC5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeSAucGF5bWVudC1mb3JtIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLmZvcm0tZ3JvdXAgLmNvbnRyb2wtbGFiZWwge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvci1mYWRlZCk7IH1cbiAgLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlcjogbm9uZTsgfVxuXG4ucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnN1bW1hcnktY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2ssIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItc2Vjb25kYXJ5LXRyYWNrLWJnKTsgfVxuXG4ucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnN1bW1hcnktY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIsIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItc2Vjb25kYXJ5LXRodW1iLWJnKTsgfVxuXG4ucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkgLnN1bW1hcnktY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIsIC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkgLnN1bW1hcnktY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItc2Vjb25kYXJ5LXRodW1iLWhvdmVyLWJnKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblN1bW1hcnkgLSBNb2JpbGUgXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5vcmRlci1zdW1tYXJ5LW1vYiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbm9uZSk7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctYmFzZSk7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5oaWRlLW1vYiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAub3JkZXItc3VtbWFyeS1tb2IgLmhpZGUtbW9iIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5vcmRlci1zdW1tYXJ5LW1vYiAub3JkZXItc3VtbWFyeS1tb2IgLmJ0bi1jaGVja291dCB7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAub3JkZXItc3VtbWFyeS1tb2IgLm9yZGVyLXN1bW1hcnktbW9iLmlzLWZpeGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogdmFyKC0temluZGV4LWZpeGVkKTsgfVxuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWluIC5tYWluLWJvZHkge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5oaWRlLW1vYiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAub3JkZXItc3VtbWFyeS1tb2IuaXMtZml4ZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtZml4ZWQpOyB9XG4gIC5vcmRlci1zdW1tYXJ5LW1vYiAuYnRuLWNoZWNrb3V0IHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm9yZGVyLXN1bW1hcnktbW9iIC5idG4tY2hlY2tvdXQuYnRuLXByaW1hcnktZmFkZWQuZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpOyB9XG4gICAgICAub3JkZXItc3VtbWFyeS1tb2IgLmJ0bi1jaGVja291dC5idG4tcHJpbWFyeS1mYWRlZC5kaXNhYmxlZCAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTsgfVxuICAgIC5vcmRlci1zdW1tYXJ5LW1vYiAuYnRuLWNoZWNrb3V0LmJ0bi1wcmltYXJ5LmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJnKTsgfVxuICAucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWluIC5tYWluLWJvZHkge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qb3BvdmVyIC0gVXNlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uY2xpZW50LWFsZXJ0cyB7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAzMjBweDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTE2MHB4OyB9XG4gIC5jbGllbnQtYWxlcnRzIC5jbGllbnQtYWxlcnRzLWhlYWRlciB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNsaWVudC1hbGVydHMgLmFycm93IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5jbGllbnQtYWxlcnRzIC5kcm9wZG93bi1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jbGllbnQtYWxlcnRzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY2xpZW50LWFsZXJ0cyBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgIC5jbGllbnQtYWxlcnRzIGxpOm5vdCg6bGFzdC1vZi10eXBlKTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgICAuY2xpZW50LWFsZXJ0cyBsaSBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS11aS1uYXYtbGluay1jb2xvcik7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMngpIHZhcigtLXNwYWNpbmctM3gpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuICAgICAgLmNsaWVudC1hbGVydHMgbGkgYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktZmFkZWQpO1xuICAgICAgICBjb2xvcjogdmFyKC0tdWktbmF2LXNlY29uZGFyeS1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgICAgLmNsaWVudC1hbGVydHMgbGkgYSBkaXYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgLmNsaWVudC1hbGVydHMgbGkgaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctdG9wOiAycHg7XG4gICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7IH1cbiAgICAuY2xpZW50LWFsZXJ0cyBsaSAubWVzc2FnZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMzJweDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAuY2xpZW50LWFsZXJ0cyBsaS5ub25lIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBwYWRkaW5nOiAzMnB4IDMycHggMjRweDtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmNsaWVudC1hbGVydHMgbGkubm9uZSAubm9uZS1pY29uIHtcbiAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgIGhlaWdodDogNjRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgICAgICAgLmNsaWVudC1hbGVydHMgbGkubm9uZSAubm9uZS1pY29uIC5zdmctaWNvbi1vdXRsaW5lLXMge1xuICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLWljb24tY29sb3Itc2Vjb25kYXJ5KTsgfVxuICAgICAgICAuY2xpZW50LWFsZXJ0cyBsaS5ub25lIC5ub25lLWljb24gLnN2Zy1pY29uLXByaW1lLnN2Zy1pY29uLXN0cm9rZSB7XG4gICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctaWNvbi1jb2xvci1iYXNlKTsgfVxuICAgICAgICAuY2xpZW50LWFsZXJ0cyBsaS5ub25lIC5ub25lLWljb24gaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmNsaWVudC1hbGVydHMge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNsaWVudC1hbGVydHMge1xuICAgIG1hcmdpbjogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtNTBweDsgfVxuICAgIC5jbGllbnQtYWxlcnRzIGxpLm5vbmUgc3BhbiB7XG4gICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qb3BvdmVyIC0gTG9naW5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmxvZ2luLXBvcG92ZXIge1xuICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7IH1cbiAgLmxvZ2luLXBvcG92ZXIgLmZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAubG9naW4tcG9wb3ZlciBociB7XG4gICAgbWFyZ2luOiA1cHggMDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBvcG92ZXIgLSBDcmVkaXQgQ2FyZCBDdnZcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuW2RhdGEtY2MtcG9wb3Zlcl0ge1xuICB0b3A6IC0xNjZweDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IC05NXB4OyB9XG5cbi5zZWN0aW9uIC5zZWN0aW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNhLXNlY3Rpb24taGVhZGVyLW1hcmdpbi1ib3R0b20pOyB9XG4gIC5zZWN0aW9uIC5zZWN0aW9uLWhlYWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5zZWN0aW9uIC5zZWN0aW9uLWhlYWRlciA+IHAge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTF4KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy00eCkgIWltcG9ydGFudDsgfVxuXG4uc2VjdGlvbi1zbSAuc2VjdGlvbi1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYS1zZWN0aW9uLXNtLWhlYWRlci1tYXJnaW4tYm90dG9tKTsgfVxuXG4uc2VjdGlvbiAuc2VjdGlvbi1kZXNjIHtcbiAgY29sb3I6IHZhcigtLWNhLXNlY3Rpb24tZGVzYy1jb2xvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2Etc2VjdGlvbi1kZXNjLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1jYS1zZWN0aW9uLWRlc2MtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY2Etc2VjdGlvbi1kZXNjLWxpbmUtaGVpZ2h0KTsgfVxuXG4uc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2VjdGlvbiArIC5zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTsgfVxuXG4uc2VjdGlvbi5oaWRkZW46Zmlyc3QtY2hpbGQgKyAuc2VjdGlvbiB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLnNlY3Rpb24gLnNlY3Rpb24tdGl0bGUsXG4uc2VjdGlvbiA+IGgzLFxuLnNlY3Rpb24taG9vay1vdXRwdXQgLnNlY3Rpb24tdGl0bGUsXG4uc2VjdGlvbi1ob29rLW91dHB1dCA+IGgzIHtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2Etc2VjdGlvbi10aXRsZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tY2Etc2VjdGlvbi10aXRsZS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jYS1zZWN0aW9uLXRpdGxlLWxpbmUtaGVpZ2h0KTsgfVxuXG4uc2VjdGlvbi1zbSAuc2VjdGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2Etc2VjdGlvbi1zbS10aXRsZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tY2Etc2VjdGlvbi1zbS10aXRsZS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jYS1zZWN0aW9uLXNtLXRpdGxlLWxpbmUtaGVpZ2h0KTsgfVxuXG4uc2VjdGlvbi1zbSArIC5zZWN0aW9uLXNtIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2Etc2VjdGlvbi1zbS1zcGFjaW5nKTsgfVxuXG4ubWFpbi1jb250ZW50ID4gLnNlY3Rpb24gPiAudGFibGUtcmVzcG9uc2l2ZSB7XG4gIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpOyB9XG4gIC5tYWluLWNvbnRlbnQgPiAuc2VjdGlvbiA+IC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLyogTW9kdWxlIE91dHB1dCAtIHVzZWQgZm9yIGVnLiBQcm9kdWN0IENyb3NzLVNlbGxpbmcgRm9yIFdITUNTIGJ5IE1vZHVsZXMgR2FyZGVuICovXG4uc2VjdGlvbi1tb2R1bGUtb3V0cHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1heC13aWR0aDogdW5zZXQ7XG4gIGZsZXg6IHVuc2V0OyB9XG4gIC5zZWN0aW9uLW1vZHVsZS1vdXRwdXQ6ZW1wdHkge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBTdGF0dXMgLSBHZW5lcmFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5zdGF0dXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4taGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogdmFyKC0tc3RhdHVzLWNvbG9yKTsgfVxuICAuc3RhdHVzOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgbWluLXdpZHRoOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXN0YXR1cy1jb2xvcik7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAuc3RhdHVzLmRvdC1oaWRkZW46YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zdGF0dXMuZG90LWhpZGRlbiAuc3RhdHVzLWljb24ge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAuc3RhdHVzLmRvdC1oaWRkZW4gLnN0YXR1cy1pY29uID4gc3ZnIHtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4OyB9XG4gIC5zdGF0dXMtaWNvbi10aWNrZXQge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLnN0YXR1cy1pY29uLXRpY2tldCwgLnN0YXR1cy5zdGF0dXMtdGlja2V0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnN0YXR1cy1jb2wgPiBkaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblN0YXR1cyAtIENvbG9yc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uZmlsdGVyLW5hbWUge1xuICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7IH1cbiAgLmZpbHRlci1uYW1lID4gc3BhbltkYXRhLXN0YXR1cz1cInRpY2tldFwiXSwgLmZpbHRlci1uYW1lID4gc3Bhbi5zdGF0dXMtdGlja2V0IHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLnZpZXctZmlsdGVyLWJ0bnMgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEgPiBzcGFuLnN0YXR1cyB7XG4gIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTsgfVxuXG4ubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlZmF1bHQ6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlZmF1bHQgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlZmF1bHQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7IH1cblxuLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBlbmRpbmd0cmFuc2ZlciwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBlbmRpbmctdHJhbnNmZXIge1xuICBjb2xvcjogdmFyKC0tc3RhdHVzLXBlbmRpbmctdHJhbnNmZXIpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wZW5kaW5ndHJhbnNmZXI6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGVuZGluZy10cmFuc2Zlcjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1wZW5kaW5nLXRyYW5zZmVyKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGVuZGluZ3RyYW5zZmVyIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBlbmRpbmctdHJhbnNmZXIgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtcGVuZGluZy10cmFuc2Zlcik7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBlbmRpbmd0cmFuc2ZlcjpiZWZvcmUsIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wZW5kaW5nLXRyYW5zZmVyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXBlbmRpbmctdHJhbnNmZXIpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wZW5kaW5nIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1wZW5kaW5nKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGVuZGluZzpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1wZW5kaW5nKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGVuZGluZyAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1wZW5kaW5nKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGVuZGluZzpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1wZW5kaW5nKTsgfVxuXG4ubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtYWN0aXZlLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtb3BlbiwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWNvbXBsZXRlZCB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtYWN0aXZlKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtYWN0aXZlOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLW9wZW46bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtY29tcGxldGVkOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLWFjdGl2ZSk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWFjdGl2ZSAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgsIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1vcGVuIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWNvbXBsZXRlZCAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1hY3RpdmUpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1hY3RpdmU6YmVmb3JlLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtb3BlbjpiZWZvcmUsIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1jb21wbGV0ZWQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtYWN0aXZlKTsgfVxuXG4ubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtc3VzcGVuZGVkIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1zdXNwZW5kZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1zdXNwZW5kZWQ6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtc3VzcGVuZGVkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtc3VzcGVuZGVkIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLXN1c3BlbmRlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXN1c3BlbmRlZDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1zdXNwZW5kZWQpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1jdXN0b21lci1yZXBseSB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtY3VzdG9tZXItcmVwbHkpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1jdXN0b21lci1yZXBseTpub3QoLnN0YXR1cy10aWNrZXQpOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1jdXN0b21lci1yZXBseSk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWN1c3RvbWVyLXJlcGx5IC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLWN1c3RvbWVyLXJlcGx5KTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtY3VzdG9tZXItcmVwbHk6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtY3VzdG9tZXItcmVwbHkpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1mcmF1ZCB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtZnJhdWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1mcmF1ZDpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1mcmF1ZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWZyYXVkIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLWZyYXVkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtZnJhdWQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZnJhdWQpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1hbnN3ZXJlZCB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtZnJhdWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1hbnN3ZXJlZDpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1mcmF1ZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWFuc3dlcmVkIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLWZyYXVkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtYW5zd2VyZWQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZnJhdWQpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1leHBpcmVkLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtdHJhbnNmZXJyZWRhd2F5LCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtdHJhbnNmZXJyZWQtYXdheSB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtZXhwaXJlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWV4cGlyZWQ6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtdHJhbnNmZXJyZWRhd2F5Om5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXRyYW5zZmVycmVkLWF3YXk6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZXhwaXJlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWV4cGlyZWQgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtdHJhbnNmZXJyZWRhd2F5IC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXRyYW5zZmVycmVkLWF3YXkgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZXhwaXJlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWV4cGlyZWQ6YmVmb3JlLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtdHJhbnNmZXJyZWRhd2F5OmJlZm9yZSwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXRyYW5zZmVycmVkLWF3YXk6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZXhwaXJlZCk7IH1cblxuLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBlbmRpbmdyZWdpc3RyYXRpb24sIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wZW5kaW5nLXJlZ2lzdHJhdGlvbiwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXJlZGVtcHRpb24sIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1ncmFjZSB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtZ3JhY2UpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wZW5kaW5ncmVnaXN0cmF0aW9uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBlbmRpbmctcmVnaXN0cmF0aW9uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXJlZGVtcHRpb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtZ3JhY2U6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZ3JhY2UpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wZW5kaW5ncmVnaXN0cmF0aW9uIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBlbmRpbmctcmVnaXN0cmF0aW9uIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXJlZGVtcHRpb24gLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtZ3JhY2UgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZ3JhY2UpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wZW5kaW5ncmVnaXN0cmF0aW9uOmJlZm9yZSwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBlbmRpbmctcmVnaXN0cmF0aW9uOmJlZm9yZSwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXJlZGVtcHRpb246YmVmb3JlLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtZ3JhY2U6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZ3JhY2UpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1kcmFmdCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXRlcm1pbmF0ZWQge1xuICBjb2xvcjogdmFyKC0tc3RhdHVzLXRlcm1pbmF0ZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1kcmFmdDpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgsIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy10ZXJtaW5hdGVkOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLXRlcm1pbmF0ZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1kcmFmdCAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgsIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy10ZXJtaW5hdGVkIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLXRlcm1pbmF0ZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1kcmFmdDpiZWZvcmUsIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy10ZXJtaW5hdGVkOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXRlcm1pbmF0ZWQpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1vbmhvbGQsIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1vbi1ob2xkIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1vbmhvbGQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1vbmhvbGQ6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtb24taG9sZDpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1vbmhvbGQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1vbmhvbGQgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtb24taG9sZCAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1vbmhvbGQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1vbmhvbGQ6YmVmb3JlLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtb24taG9sZDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1vbmhvbGQpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1pbnByb2dyZXNzIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1pbnByb2dyZXNzKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtaW5wcm9ncmVzczpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1pbnByb2dyZXNzKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtaW5wcm9ncmVzcyAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1pbnByb2dyZXNzKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtaW5wcm9ncmVzczpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1pbnByb2dyZXNzKTsgfVxuXG4ubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtY2xvc2VkIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1jbG9zZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1jbG9zZWQ6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtY2xvc2VkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtY2xvc2VkIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLWNsb3NlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWNsb3NlZDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1jbG9zZWQpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wYWlkIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1wYWlkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGFpZDpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1wYWlkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGFpZCAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1wYWlkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGFpZDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1wYWlkKTsgfVxuXG4ubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtdW5wYWlkIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy11bnBhaWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy11bnBhaWQ6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtdW5wYWlkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtdW5wYWlkIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKSBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLXVucGFpZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXVucGFpZDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy11bnBhaWQpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1jYW5jZWxsZWQge1xuICBjb2xvcjogdmFyKC0tc3RhdHVzLWNhbmNlbGxlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWNhbmNlbGxlZDpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpID4gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1jYW5jZWxsZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1jYW5jZWxsZWQgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtY2FuY2VsbGVkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtY2FuY2VsbGVkOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWNhbmNlbGxlZCk7IH1cblxuLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWNvbGxlY3Rpb25zIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1jb2xsZWN0aW9ucyk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWNvbGxlY3Rpb25zOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLWNvbGxlY3Rpb25zKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtY29sbGVjdGlvbnMgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtY29sbGVjdGlvbnMpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1jb2xsZWN0aW9uczpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1jb2xsZWN0aW9ucyk7IH1cblxuLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXJlZnVuZGVkIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1yZWZ1bmRlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXJlZnVuZGVkOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLXJlZnVuZGVkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcmVmdW5kZWQgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtcmVmdW5kZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1yZWZ1bmRlZDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1yZWZ1bmRlZCk7IH1cblxuLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBheW1lbnQtcGVuZGluZyB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtcGF5bWVudC1wZW5kaW5nKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtcGF5bWVudC1wZW5kaW5nOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLXBheW1lbnQtcGVuZGluZyk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXBheW1lbnQtcGVuZGluZyAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1wYXltZW50LXBlbmRpbmcpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1wYXltZW50LXBlbmRpbmc6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtcGF5bWVudC1wZW5kaW5nKTsgfVxuXG4ubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtd2FybmluZyB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtd2FybmluZyk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXdhcm5pbmc6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtd2FybmluZyk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXdhcm5pbmcgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtd2FybmluZyk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLXdhcm5pbmc6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtd2FybmluZyk7IH1cblxuLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlbGl2ZXJlZCB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtZGVsaXZlcmVkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtZGVsaXZlcmVkOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLWRlbGl2ZXJlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlbGl2ZXJlZCAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1kZWxpdmVyZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1kZWxpdmVyZWQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZGVsaXZlcmVkKTsgfVxuXG4ubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtYWNjZXB0ZWQge1xuICBjb2xvcjogdmFyKC0tc3RhdHVzLWFjY2VwdGVkKTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtYWNjZXB0ZWQ6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtYWNjZXB0ZWQpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1hY2NlcHRlZCAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1hY2NlcHRlZCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWFjY2VwdGVkOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWFjY2VwdGVkKTsgfVxuXG4ubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtbG9zdCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlYWQge1xuICBjb2xvcjogdmFyKC0tc3RhdHVzLWxvc3QpOyB9XG4gIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1sb3N0Om5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCkgPiBzdmcgcGF0aCwgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlYWQ6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KSA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtbG9zdCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWxvc3QgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoLCAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtZGVhZCAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSkgc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy1sb3N0KTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtbG9zdDpiZWZvcmUsIC5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1kZWFkOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWxvc3QpOyB9XG5cbi5sYWdvbTpub3QoLnRpY2tldC10YWJsZSkgLnN0YXR1cy1kZWZhdWx0IHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy1kZWZhdWx0KTsgfVxuICAubGFnb206bm90KC50aWNrZXQtdGFibGUpIC5zdGF0dXMtZGVmYXVsdCA+IHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlZmF1bHQgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7IH1cbiAgLmxhZ29tOm5vdCgudGlja2V0LXRhYmxlKSAuc3RhdHVzLWRlZmF1bHQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7IH1cblxuLnJlcXVlc3Rvci10eXBlLW9wZXJhdG9yIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy10eXBlLW9wZXJhdG9yLXRleHQtY29sb3IpOyB9XG4gIC5yZXF1ZXN0b3ItdHlwZS1vcGVyYXRvciAuc3RhdHVzLWljb24gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy10eXBlLW9wZXJhdG9yLXRleHQtY29sb3IpOyB9XG4gIC5yZXF1ZXN0b3ItdHlwZS1vcGVyYXRvciwgLnJlcXVlc3Rvci10eXBlLW9wZXJhdG9yOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtb3BlcmF0b3IpOyB9XG5cbi5yZXF1ZXN0b3ItdHlwZS1vd25lciB7XG4gIGNvbG9yOiB2YXIoLS1zdGF0dXMtdHlwZS1vd25lci10ZXh0LWNvbG9yKTsgfVxuICAucmVxdWVzdG9yLXR5cGUtb3duZXIgLnN0YXR1cy1pY29uIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS1zdGF0dXMtdHlwZS1vd25lci10ZXh0LWNvbG9yKTsgfVxuICAucmVxdWVzdG9yLXR5cGUtb3duZXIsIC5yZXF1ZXN0b3ItdHlwZS1vd25lcjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy10eXBlLW93bmVyKTsgfVxuXG4ucmVxdWVzdG9yLXR5cGUtYXV0aG9yaXplZHVzZXIge1xuICBjb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtYXV0aG9yaXplZHVzZXItdGV4dC1jb2xvcik7IH1cbiAgLnJlcXVlc3Rvci10eXBlLWF1dGhvcml6ZWR1c2VyIC5zdGF0dXMtaWNvbiBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tc3RhdHVzLXR5cGUtYXV0aG9yaXplZHVzZXItdGV4dC1jb2xvcik7IH1cbiAgLnJlcXVlc3Rvci10eXBlLWF1dGhvcml6ZWR1c2VyLCAucmVxdWVzdG9yLXR5cGUtYXV0aG9yaXplZHVzZXI6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtdHlwZS1hdXRob3JpemVkdXNlcik7IH1cblxuLnJlcXVlc3Rvci10eXBlLXJlZ2lzdGVyZWR1c2VyIHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy10eXBlLXJlZ2lzdGVyZWR1c2VyLXRleHQtY29sb3IpOyB9XG4gIC5yZXF1ZXN0b3ItdHlwZS1yZWdpc3RlcmVkdXNlciAuc3RhdHVzLWljb24gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy10eXBlLXJlZ2lzdGVyZWR1c2VyLXRleHQtY29sb3IpOyB9XG4gIC5yZXF1ZXN0b3ItdHlwZS1yZWdpc3RlcmVkdXNlciwgLnJlcXVlc3Rvci10eXBlLXJlZ2lzdGVyZWR1c2VyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtcmVnaXN0ZXJlZHVzZXIpOyB9XG5cbi5yZXF1ZXN0b3ItdHlwZS1zdWJhY2NvdW50IHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy10eXBlLXN1YmFjYy10ZXh0LWNvbG9yKTsgfVxuICAucmVxdWVzdG9yLXR5cGUtc3ViYWNjb3VudCAuc3RhdHVzLWljb24gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy10eXBlLXN1YmFjYy10ZXh0LWNvbG9yKTsgfVxuICAucmVxdWVzdG9yLXR5cGUtc3ViYWNjb3VudCwgLnJlcXVlc3Rvci10eXBlLXN1YmFjY291bnQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBhcigtLXN0YXR1cy10eXBlLXN1YmFjYyk7IH1cblxuLnJlcXVlc3Rvci10eXBlLWd1ZXN0IHtcbiAgY29sb3I6IHZhcigtLXN0YXR1cy10eXBlLWd1ZXN0LXRleHQtY29sb3IpOyB9XG4gIC5yZXF1ZXN0b3ItdHlwZS1ndWVzdCAuc3RhdHVzLWljb24gc3ZnIHBhdGgge1xuICAgIGZpbGw6IHZhcigtLXN0YXR1cy10eXBlLWd1ZXN0LXRleHQtY29sb3IpOyB9XG4gIC5yZXF1ZXN0b3ItdHlwZS1ndWVzdCwgLnJlcXVlc3Rvci10eXBlLWd1ZXN0OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtZ3Vlc3QpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFRhYmxlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi50YWJsZSAuY2VsbC1hY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC50YWJsZSAuY2VsbC1hY3Rpb24gPiAqOm5vdCguYnRuKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC50YWJsZSAuY2VsbC1hY3Rpb24gLmJ0bi1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7IH1cbiAgLnRhYmxlIC5jZWxsLWFjdGlvbiAub3BlbiAuYnRuLWljb246aG92ZXIsIC50YWJsZSAuY2VsbC1hY3Rpb24gLm9wZW4gLmJ0bi1pY29uOmZvY3VzLXZpc2libGUsXG4gIC50YWJsZSAuY2VsbC1hY3Rpb24gLmJ0bi1pY29uOmhvdmVyLFxuICAudGFibGUgLmNlbGwtYWN0aW9uIC5idG4taWNvbjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAudGFibGUgLmNlbGwtYWN0aW9uLS1sYXN0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgd2lkdGg6IDkwcHg7IH1cblxuLnRhYmxlIC5jZWxsLWNoZWNrYm94IHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudGFibGUgLmNlbGwtY2hlY2tib3ggLmNoZWNrYm94LXN0eWxlZCB7XG4gICAgbWFyZ2luOiAzcHggMDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBUYWJsZSAtIFRvcFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4udGFibGUtdG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtaW4taGVpZ2h0OiB2YXIoLS10YWJsZS1jb250YWluZXItaGVhZGVyLWhlaWdodCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMngpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLWNvbnRhaW5lci1oZWFkZXItYmcpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGFibGUtYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdGFibGUtY29udGFpbmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLXRhYmxlLWNvbnRhaW5lci1ib3JkZXItcmFkaXVzKSAwIDA7IH1cbiAgLnRhYmxlLXRvcCBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdGFibGUtZm9udC1zaXplLXNtYWxsKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnRhYmxlLXRvcCAuZm9ybS1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLnRhYmxlLXRvcCAuYnRuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAudGFibGUtdG9wIC5kLWZsZXgge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnRhYmxlLXRvcCBbZGF0YS1pbmFjdGl2ZS1zZXJ2aWNlc10ge1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC50YWJsZS10b3AgW2RhdGEtaW5hY3RpdmUtc2VydmljZXNdIGIge1xuICAgICAgY29sb3I6IHZhcigtLXRhYmxlLXRkLWZvbnQtY29sb3IpOyB9XG4gICAgLnRhYmxlLXRvcCBbZGF0YS1pbmFjdGl2ZS1zZXJ2aWNlc10gLnN3aXRjaCB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLnRhYmxlLXRvcCBbZGF0YS1pbmFjdGl2ZS1zZXJ2aWNlcy10ZXh0XSB7XG4gICAgZmxleDogMTsgfVxuXG4ucGFnZS1jbGllbnRhcmVhcHJvZHVjdHMgLnRhYmxlLXRvcCxcbi5wYWdlLWNsaWVudGFyZWFkb21haW5zIC50YWJsZS10b3Age1xuICBnYXA6IDEwcHg7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gVGFibGUgLSBDb250YWluZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnRhYmxlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiB2YXIoLS10YWJsZS1jb250YWluZXItYm9yZGVyKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGFibGUtY29udGFpbmVyLWJnKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdGFibGUtY29udGFpbmVyLWJveC1zaGFkb3cpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS10YWJsZS1jb250YWluZXItYm9yZGVyLXJhZGl1cyk7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4OyB9XG4gIC50YWJsZS1jb250YWluZXIubG9hZGluZyB7XG4gICAgbWF4LWhlaWdodDogMzM1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC50YWJsZS1jb250YWluZXIubG9hZGluZyAudGFibGUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAgIC50YWJsZS1jb250YWluZXIubG9hZGluZyAubG9hZGVyLXRhYmxlIHtcbiAgICAgIHRvcDogY2FsYyh2YXIoLS10YWJsZS1jb250YWluZXItaGVhZGVyLWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nLTJ4KSk7IH1cbiAgLnRhYmxlLWNvbnRhaW5lci1hamF4LmxvYWRpbmcgdGFibGUge1xuICAgIG1pbi1oZWlnaHQ6IDIyNnB4OyB9XG4gIC50YWJsZS1jb250YWluZXItYWpheCAubG9hZGVyLXRhYmxlIC5zcGlubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogdmFyKC0tbG9hZGVyLWJhcnMtaGVpZ2h0KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgLnRhYmxlLWNvbnRhaW5lciAubGlzdHRhYmxlIHtcbiAgICBwYWRkaW5nOiB2YXIoLS10YWJsZS1jb250YWluZXItdGFibGUtcGFkZGluZyk7IH1cbiAgLnRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGUgdGJvZHkgdHIgdGQgbGFiZWwge1xuICAgIG1hcmdpbjogMDsgfVxuICAudGFibGUtY29udGFpbmVyIC5kYXRhVGFibGVzX2xlbmd0aCBsYWJlbCxcbiAgLnRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlc19maWx0ZXIgbGFiZWwge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdGFibGUtZm9udC1zaXplLXNtYWxsKTsgfVxuICAgIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZXNfbGVuZ3RoIGxhYmVsIC5mb3JtLWNvbnRyb2wsXG4gICAgLnRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlc19maWx0ZXIgbGFiZWwgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTsgfVxuICAudGFibGUtY29udGFpbmVyIC5kYXRhVGFibGVzX2xlbmd0aCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGFibGUtY29udGFpbmVyLXBhZ2luYXRpb24tYmcpO1xuICAgIGJvcmRlci10b3A6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItYm9yZGVyKTtcbiAgICBmb250LXNpemU6IHZhcigtLXRhYmxlLWZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXRhYmxlLWNvbnRhaW5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS10YWJsZS1jb250YWluZXItYm9yZGVyLXJhZGl1cyk7IH1cbiAgLnRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlc19pbmZvIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLWNvbnRhaW5lci1wYWdpbmF0aW9uLWJnKTtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS10YWJsZS1jb250YWluZXItYm9yZGVyKTtcbiAgICBmb250LXNpemU6IHZhcigtLXRhYmxlLWZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgLnRhYmxlLWNvbnRhaW5lciAudGFibGUtbGlzdCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gICAgLnRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGlvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiAwOyB9XG4gIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZXNfZmlsdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZSAuc21hbGwsXG4gIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZSAudGV4dC1zbWFsbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdGFibGUtZm9udC1zaXplLXNtYWxsKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG4gICAgLnRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlIC5zbWFsbDpub3QoYSksIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZSAuc21hbGw6bm90KGEpLFxuICAgIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZSAudGV4dC1zbWFsbDpub3QoYSksXG4gICAgLnRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlIC50ZXh0LXNtYWxsOm5vdChhKSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuICAudGFibGUtY29udGFpbmVyIC5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxuICAudGFibGUtY29udGFpbmVyIC5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgdGJvZHkgdGg6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICB0b3A6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDsgfVxuICAudGFibGUtY29udGFpbmVyIC5kdHItaW5saW5lIC5kdHItdGl0bGU6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAudGFibGUtY29udGFpbmVyIC5kdHItaW5saW5lIC5yZXNwb25zaXZlLWVkaXQtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2xlbmd0aCBsYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAuZGF0YVRhYmxlIHRyIHRkIGEge1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2luZm8ge1xuICAgIHBhZGRpbmc6IDlweCAxMHB4IDQwcHg7IH1cbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfZmlsdGVyIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDVweDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfZmlsdGVyIGxhYmVsIC5mb3JtLWNvbnRyb2wge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAudGFibGUtY29udGFpbmVyIC5kYXRhVGFibGVzX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZXNfd3JhcHBlciAubGlzdHRhYmxlIHtcbiAgICAgIG9yZGVyOiAxOyB9XG4gIC50YWJsZS1jb250YWluZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG9yZGVyOiAzO1xuICAgIHBhZGRpbmctdG9wOiAycHg7IH1cbiAgLnRhYmxlLWNvbnRhaW5lciAuZGF0YVRhYmxlc19sZW5ndGgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgb3JkZXI6IDI7XG4gICAgcGFkZGluZy10b3A6IDRweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdGFibGVTZXJ2aWNlc0xpc3QgdGJvZHkgdHIgdGQ6bm90KC5kYXRhVGFibGVzX2VtcHR5KSB7XG4gICAgaGVpZ2h0OiA4MHB4OyB9IH1cblxuI3RhYmxlU2VydmljZXNMaXN0IC5zc2wtaW5mbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDEycHg7IH1cbiAgI3RhYmxlU2VydmljZXNMaXN0IC5zc2wtaW5mbzplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjdGFibGVTZXJ2aWNlc0xpc3QgLnNzbC1pbmZvID4gKiB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG4jdGFibGVEb21haW5zTGlzdCAuc3NsLWluZm8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IC00cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4OyB9XG4gICN0YWJsZURvbWFpbnNMaXN0IC5zc2wtaW5mbzplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjdGFibGVEb21haW5zTGlzdCAuc3NsLWluZm8gPiAqIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbiN0YWJsZVRpY2tldHNMaXN0IHRib2R5IC5kdHItY29udHJvbCA+IHNwYW4ge1xuICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuXG4jdGFibGVUaWNrZXRzTGlzdCB0Ym9keSB0ciB0aDpudGgtb2YtdHlwZSgxKSxcbiN0YWJsZVRpY2tldHNMaXN0IHRib2R5IHRyIHRkOm50aC1vZi10eXBlKDEpLFxuI3RhYmxlVGlja2V0c0xpc3QgdGhlYWQgdHIgdGg6bnRoLW9mLXR5cGUoMSksXG4jdGFibGVUaWNrZXRzTGlzdCB0aGVhZCB0ciB0ZDpudGgtb2YtdHlwZSgxKSB7XG4gIG1heC13aWR0aDogMzQwcHg7XG4gIHdpZHRoOiAzNDBweDsgfVxuXG4jdGFibGVUaWNrZXRzTGlzdCB0Ym9keSB0ciB0aDpudGgtb2YtdHlwZSgzKSxcbiN0YWJsZVRpY2tldHNMaXN0IHRib2R5IHRyIHRkOm50aC1vZi10eXBlKDMpLFxuI3RhYmxlVGlja2V0c0xpc3QgdGhlYWQgdHIgdGg6bnRoLW9mLXR5cGUoMyksXG4jdGFibGVUaWNrZXRzTGlzdCB0aGVhZCB0ciB0ZDpudGgtb2YtdHlwZSgzKSB7XG4gIG1pbi13aWR0aDogMTIwcHg7XG4gIHdpZHRoOiAxMjBweDsgfVxuXG4jdGFibGVSZW5ld2FsTGlzdCAudG9vbHRpcC1pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgI3RhYmxlUmVuZXdhbExpc3QgLnRvb2x0aXAtaWNvbjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWxpbmstaG92ZXItY29sb3IpOyB9XG5cbiN0YWJsZVJlbmV3YWxMaXN0IC5jZWxsLWFjdGlvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDhweDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAjdGFibGVSZW5ld2FsTGlzdCAuY2VsbC1hY3Rpb24tY29udGFpbmVyIC5mb3JtLWNvbnRyb2wge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgI3RhYmxlUmVuZXdhbExpc3QgLmNlbGwtYWN0aW9uLWNvbnRhaW5lciAuYnRuIHtcbiAgICBtaW4td2lkdGg6IDEwMHB4OyB9XG4gICAgI3RhYmxlUmVuZXdhbExpc3QgLmNlbGwtYWN0aW9uLWNvbnRhaW5lciAuYnRuIC5zcGlubmVyLXNtIHtcbiAgICAgIGhlaWdodDogdmFyKC0tbG9hZGVyLWJhcnMtc20taGVpZ2h0KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLnRpY2tldC10YWJsZSB0Ym9keSA+IHRyIC5zdGF0dXMge1xuICB0ZXh0LXdyYXA6IG5vd3JhcDsgfVxuXG4udGlja2V0LXRhYmxlIHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkOmhhcyhhKSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxJTsgfVxuXG4ubm8tZGF0YS10YWJsZSB7XG4gIG1pbi1oZWlnaHQ6IDI2NnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubm8tZGF0YS10YWJsZSBzdmcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgaGVpZ2h0OiA0OHB4OyB9XG4gIC5uby1kYXRhLXRhYmxlIC5uby1kYXRhLXRhYmxlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgLm5vLWRhdGEtdGFibGUgLm5vLWRhdGEtdGFibGUtZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cbiAgLm5vLWRhdGEtdGFibGUtaW5hY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubm8tZGF0YS10YWJsZS1pbmFjdGl2ZSAuYnRuIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiA2cHg7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuICAgICAgLm5vLWRhdGEtdGFibGUtaW5hY3RpdmUgLmJ0biBpIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gIC5uby1kYXRhLXRhYmxlIFtkYXRhLWNsZWFyLXRhYmxlLXNlYXJjaF0ge1xuICAgIGdhcDogNnB4OyB9XG4gICAgLm5vLWRhdGEtdGFibGUgW2RhdGEtY2xlYXItdGFibGUtc2VhcmNoXSBpIHtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi5oaWRlLWluYWN0aXZlLWl0ZW1zIC5uby1kYXRhLXRhYmxlLXNlYXJjaCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtaW5hY3RpdmUtaXRlbXMgLm5vLWRhdGEtdGFibGUtaW5hY3RpdmUge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuVGlsZXMgLSBHZW5lcmFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi50aWxlcyB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSkgIWltcG9ydGFudDsgfVxuICAudGlsZXMgLnRpbGUge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG5cbi50aWxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiB2YXIoLS10aWxlLXBhZGRpbmcpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS10aWxlLW1pbi1oZWlnaHQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWJnLWNvbG9yKTtcbiAgYm9yZGVyOiB2YXIoLS10aWxlLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXRpbGUtYm9yZGVyLXJhZGl1cyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXRpbGUtYm94LXNoYWRvdyk7XG4gIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIC50aWxlIHtcbiAgICAgIGhlaWdodDogdmFyKC0tdGlsZS1taW4taGVpZ2h0KTsgfSB9XG4gIC50aWxlLWljb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pOyB9XG4gIC50aWxlOmhvdmVyIC50aWxlLWljb24tYWJzb2x1dGUsIC50aWxlOmZvY3VzLXZpc2libGUgLnRpbGUtaWNvbi1hYnNvbHV0ZSB7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICBjb2xvcjogdmFyKC0tdGlsZS1ib3JkZXItY29sb3ItaG92ZXIpOyB9XG4gIC50aWxlLWljb24tYWJzb2x1dGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDE2cHg7XG4gICAgY29sb3I6IHZhcigtLWRlY29yYXRpb24taWNvbnMpO1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC50aWxlLXN0YXQge1xuICAgIHBhZGRpbmctdG9wOiA0cHg7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xuICAgIGNvbG9yOiB2YXIoLS10aWxlLXN0YXQtY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10aWxlLXN0YXQtZm9udC13ZWlnaHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zdGF0LWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAudGlsZS1zdGF0LXNtIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zdGF0LXNtLWZvbnQtc2l6ZSk7IH1cbiAgLnRpbGUtdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS10aWxlLXRpdGxlLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLXRpbGUtdGl0bGUtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tdGlsZS10aXRsZS1mb250LXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXRpbGUtdGl0bGUtbGluZS1oZWlnaHQpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudGlsZS1zbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2V0O1xuICAgIG1pbi1oZWlnaHQ6IDc0cHg7IH1cbiAgICAudGlsZS1zbSAudGlsZS1pY29uLWFic29sdXRlIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgICAudGlsZS1zbSAudGlsZS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXRpbGUtc20tdGl0bGUtZm9udC1zaXplKTsgfVxuICAgIC50aWxlLXNtIC50aWxlLXN0YXQge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zbS1zdGF0LWZvbnQtc2l6ZSk7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIGEudGlsZSxcbiAgLnNsaWRlci1uYXZpZ2F0aW9uIC50aWxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICBhLnRpbGU6aG92ZXIsIGEudGlsZTpmb2N1cy12aXNpYmxlLFxuICAgIC5zbGlkZXItbmF2aWdhdGlvbiAudGlsZTpob3ZlcixcbiAgICAuc2xpZGVyLW5hdmlnYXRpb24gLnRpbGU6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGlsZS1ib3JkZXItY29sb3ItaG92ZXIpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtOHB4LCAwKTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3cteGxnKTsgfVxuICAgICAgYS50aWxlOmhvdmVyIC5pY29uLCBhLnRpbGU6Zm9jdXMtdmlzaWJsZSAuaWNvbixcbiAgICAgIC5zbGlkZXItbmF2aWdhdGlvbiAudGlsZTpob3ZlciAuaWNvbixcbiAgICAgIC5zbGlkZXItbmF2aWdhdGlvbiAudGlsZTpmb2N1cy12aXNpYmxlIC5pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRpbGUtYm9yZGVyLWNvbG9yLWhvdmVyKTsgfSB9XG5cbi8qIEhvbWVwYWdlIHRpbGUgUlRMICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaHRtbFtkaXI9XCJydGxcIl0gLmhvbWVwYWdlLXRpbGVzIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4yLiBUaWxlcyAtIFJlc3BvbnNpdmVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zd2lwZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHVuc2V0OyB9XG4gIC5zd2lwZXItc2xpZGUge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0Om5vdCguc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXByb21vdGlvbikge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgIG1hcmdpbjogMCA0cHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tZGVjb3JhdGlvbi1pY29ucyk7IH1cbiAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQ6bm90KC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtcHJvbW90aW9uKS1hY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICAudGlsZXMgPiAucm93IHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnRpbGVzIC50aWxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XG4gICAgbWluLWhlaWdodDogNzRweDsgfVxuICAgIC50aWxlcyAudGlsZS1pY29uLCAudGlsZXMgLnRpbGUtaWNvbi1hYnNvbHV0ZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgICAgIC50aWxlcyAudGlsZS1pY29uIC5zdmctaWNvbiwgLnRpbGVzIC50aWxlLWljb24tYWJzb2x1dGUgLnN2Zy1pY29uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgICAudGlsZXMgLnRpbGUtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS10aWxlLW1vYi10aXRsZS1mb250LXNpemUpOyB9XG4gICAgLnRpbGVzIC50aWxlLXN0YXQge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS10aWxlLW1vYi1zdGF0LWZvbnQtc2l6ZSk7XG4gICAgICBvcmRlcjogMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLnRpbGVzIC50aWxlLXNtIC50aWxlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zbS1tb2ItdGl0bGUtZm9udC1zaXplKTsgfVxuICAgIC50aWxlcyAudGlsZS1zbSAudGlsZS1zdGF0IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zbS1tb2Itc3RhdC1mb250LXNpemUpOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gU3Bpbm5lclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uc3Bpbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogdmFyKC0tbG9hZGVyLWJhcnMtaGVpZ2h0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc3Bpbm5lciA+IGRpdiB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbG9hZGVyLWJnKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IHZhcigtLWxvYWRlci1iYXJzLXdpZHRoKTtcbiAgICBhbmltYXRpb246IHNrLXN0cmV0Y2hkZWxheSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pOyB9XG4gIC5zcGlubmVyID4gKiArICoge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1sb2FkZXItYmFycy13aWR0aCk7IH1cbiAgLnNwaW5uZXItbGlnaHQgPiBkaXYge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWxvYWRlci1saWdodC1iZyk7IH1cbiAgLnNwaW5uZXIgLnJlY3QyIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0xLjFzOyB9XG4gIC5zcGlubmVyIC5yZWN0MyB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMS4wczsgfVxuICAuc3Bpbm5lciAucmVjdDQge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLTAuOXM7IH1cbiAgLnNwaW5uZXIgLnJlY3Q1IHtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0wLjhzOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1zdHJldGNoZGVsYXkge1xuICAwJSwgNDAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDAuNCk7IH1cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpOyB9IH1cblxuQGtleWZyYW1lcyBzay1zdHJldGNoZGVsYXkge1xuICAwJSwgNDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwLjQpOyB9XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBTcGlubmVyIC0gU0l6ZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uc3Bpbm5lci1zbSB7XG4gIGhlaWdodDogdmFyKC0tbG9hZGVyLWJhcnMtc20taGVpZ2h0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnNwaW5uZXItc20gPiBkaXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1sb2FkZXItYmFycy1zbS13aWR0aCk7XG4gICAgd2lkdGg6IHZhcigtLWxvYWRlci1iYXJzLXNtLXdpZHRoKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBTcGlubmVyIC0gQ29sb3JzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5idG4tcHJpbWFyeSAuc3Bpbm5lciA+IGRpdiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTsgfVxuXG4uYnRuLXByaW1hcnktZmFkZWQgLnNwaW5uZXIgPiBkaXYge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gTG9hZGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5sb2FkZXItdGFibGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLWJnKTtcbiAgei1pbmRleDogMzsgfVxuXG4ubG9hZGVyLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubG9hZGVyLXBhbmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgLmxvYWRlci1wYW5lbC5sb2FkaW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLmludmlzaWJsZSArIC5sb2FkZXItYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgfVxuXG4ubG9hZGVyLXJpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDsgfVxuICAubG9hZGVyLXJpbmcgZGl2IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgbWFyZ2luOiAycHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBhbmltYXRpb246IGxkcy1yaW5nIDEuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAxKSBpbmZpbml0ZTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0yKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAubG9hZGVyLXJpbmctMTIge1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDsgfVxuICAgIC5sb2FkZXItcmluZy0xMiBkaXYge1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW46IDFweDsgfVxuICAubG9hZGVyLXJpbmctMTgge1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDsgfVxuICAgIC5sb2FkZXItcmluZy0xOCBkaXYge1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBtYXJnaW46IDFweDsgfVxuICAubG9hZGVyLXJpbmcgZGl2Om50aC1jaGlsZCgxKSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMC40NXM7IH1cbiAgLmxvYWRlci1yaW5nIGRpdjpudGgtY2hpbGQoMikge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLTAuM3M7IH1cbiAgLmxvYWRlci1yaW5nIGRpdjpudGgtY2hpbGQoMykge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMTVzOyB9XG5cbkBrZXlmcmFtZXMgbGRzLXJpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFdvcmxkIExvYWRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ud29ybGQtbG9hZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDE3MHB4O1xuICBtYXJnaW46IDA7IH1cbiAgLndvcmxkLWxvYWRlci1jb250ZW50IHtcbiAgICB3aWR0aDogdmFyKC0tc3BhY2luZy03eCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTd4KTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxvYWRlci1iZyk7IH1cbiAgICAud29ybGQtbG9hZGVyLWNvbnRlbnQgc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogbGluZWFyIGluZmluaXRlO1xuICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogd29ybGQtbG9hZGVyO1xuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwczsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgd29ybGQtbG9hZGVyIHtcbiAgMCUge1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgMTAwJSB7XG4gICAgbGVmdDogLTc0NHB4OyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5CYW5uZXIgLSBHZW5lcmFsIEVsZW1lbnRzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5iYW5uZXItY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg2KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg2KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYmFubmVyLWNhcHRpb24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmJhbm5lci10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zaXRlLWJhbm5lci10aXRsZS1mb250LXdlaWdodCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc2l0ZS1iYW5uZXItdGl0bGUtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNpdGUtYmFubmVyLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2l0ZS1iYW5uZXItZWxlbWVudC1zcGFjaW5nKTsgfVxuXG4uYmFubmVyLWRlc2Mge1xuICB3aWR0aDogMTAwJTsgfVxuICAuYmFubmVyLWRlc2MsXG4gIC5iYW5uZXItZGVzYyBwIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpdGUtYmFubmVyLWRlc2MtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tc2l0ZS1iYW5uZXItZGVzYy1saW5lLWhlaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXNpdGUtYmFubmVyLWRlc2MtZm9udC13ZWlnaHQpOyB9XG5cbi5iYW5uZXItYWN0aW9ucyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zaXRlLWJhbm5lci1lbGVtZW50LXNwYWNpbmcpO1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5iYW5uZXItYWN0aW9ucyAuYnRuIHtcbiAgICBtaW4td2lkdGg6IDE2NHB4OyB9XG4gICAgLmJhbm5lci1hY3Rpb25zIC5idG4gKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuXG4uYmFubmVyLWljb25zIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy00eCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogNDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYmFubmVyLWljb25zIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cblxuLmJhbm5lci1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNHgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuYmFubmVyLXN1YnRpdGxlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5iYW5uZXItZ3JhcGhpYyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IHZhcigtLXNpdGUtYmFubmVyLWdyYXBoaWMtd2lkdGgpOyB9XG4gIC5iYW5uZXItZ3JhcGhpYyAucHJvbW8tc2xpZGVyLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBib3R0b206IHVuc2V0O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogdmFyKC0tc2l0ZS1iYW5uZXItZ3JhcGhpYy13aWR0aCk7IH1cblxuLmJhbm5lci1zaGFwZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuYmFubmVyLXNoYXBlIHN2ZyB7XG4gICAgaGVpZ2h0OiA2NjJweDsgfVxuXG4uYmFubmVyLWNvbnRlbnQge1xuICB6LWluZGV4OiAzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJhbm5lciAuY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5iYW5uZXItLW92ZXJmbG93IHtcbiAgcGFkZGluZy10b3A6IDE1MHB4O1xuICB6LWluZGV4OiAtMTsgfVxuICAuYmFubmVyLS1vdmVyZmxvdyAuYmFubmVyLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm90dG9tOiA1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNXgpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDIpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJhbm5lciAtIGRvbWFpbiByZWdpc3RyYXRpb24gbW9kZXJuIHBhZ2VcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmxhZ29tOm5vdCgubGFvZ20tZnV0dXJpc3RpYykgLmJhbm5lci1kZWZhdWx0LmJhbm5lci1kb21haW4tcmVnaXN0ZXIgKyAubWFpbi1ib2R5IHtcbiAgcGFkZGluZy10b3A6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5iYW5uZXItZ3JhcGhpYyAucHJvbW8tc2xpZGVyLWljb24ge1xuICAgIHRvcDogdmFyKC0tdWktZ3V0dGVyLWJhc2UpOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5iYW5uZXItYmFja2dyb3VuZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmJhbm5lci1ncmFwaGljIHtcbiAgICB3aWR0aDogdmFyKC0tc2l0ZS1iYW5uZXItZ3JhcGhpYy13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLmJhbm5lci1zaGFwZS5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmJhbm5lciA+IC5jb250YWluZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmJhbm5lci10aXRsZSwgLmJhbm5lci1kZXNjLFxuICAuYmFubmVyLWRlc2MgcCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5iYW5uZXItYWN0aW9ucyB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogMCAtOHB4IC0xNnB4O1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgIC5iYW5uZXItYWN0aW9ucyAuYnRuIHtcbiAgICAgIG1hcmdpbjogMCB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgICAgLmJhbm5lci1hY3Rpb25zIC5idG4gKyAuYnRuIHtcbiAgICAgICAgbWFyZ2luOiAwIHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctMngpOyB9XG4gIC5iYW5uZXItY29udGVudCB7XG4gICAgb3JkZXI6IDI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAuYmFubmVyLWJhY2tncm91bmQge1xuICAgIG9yZGVyOiAxOyB9XG4gICAgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItZ3JhcGhpY3MgLmJhbm5lci1ncmFwaGljIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1zaXRlLWJhbm5lci1ncmFwaGljLXdpZHRoKTsgfVxuICAgICAgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItZ3JhcGhpY3MgLmJhbm5lci1ncmFwaGljID4gLnByb21vLXNsaWRlci1pY29uIHtcbiAgICAgICAgd2lkdGg6IHZhcigtLXNpdGUtYmFubmVyLWdyYXBoaWMtd2lkdGgpOyB9XG4gICAgICAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1ncmFwaGljcyAuYmFubmVyLWdyYXBoaWMuZ3JhcGhpYy1jdXN0b20ge1xuICAgICAgICB3aWR0aDogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLWlsbHVzdHJhdGlvbi13aWR0aCk7IH1cbiAgICAgICAgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItZ3JhcGhpY3MgLmJhbm5lci1ncmFwaGljLmdyYXBoaWMtY3VzdG9tID4gaW1nIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1ncmFwaGljcy5ncmFwaGljcy1jdXN0b20ge1xuICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB9XG4gIC5iYW5uZXItZ3JhcGhpYyB7XG4gICAgbWFyZ2luOiAtNDhweCBhdXRvIDA7IH1cbiAgLmJhbm5lci1zaGFwZSA+IHN2ZyB7XG4gICAgaGVpZ2h0OiAzMDBweDsgfVxuICAuYmFubmVyLS1vdmVyZmxvdyB7XG4gICAgcGFkZGluZy10b3A6IDExMHB4OyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5CYW5uZXIgLSBTaWRlc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG46cm9vdCB7XG4gIC0tYmFubmVyLXNpZGVzLW1pbi1oZWlnaHQ6IDY3N3B4O1xuICAtLWJhbm5lci1zaWRlcy1jb250ZW50LW1heC13aWR0aDogNTQ0cHg7XG4gIC0tYmFubmVyLXNpZGVzLWNvbnRlbnQtc3BhY2luZy1yaWdodDogODBweDtcbiAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy13aWR0aDogNTk2cHg7XG4gIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtaGVpZ2h0OiA0ODBweDtcbiAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS13aWR0aDogMjU0MnB4O1xuICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLWhlaWdodDogODA4cHg7XG4gIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtcmlnaHQ6IC0xMzgwcHg7XG4gIC0tYmFubmVyLWNvbnRlbnQtcGFkZGluZy12OiAxMDBweDtcbiAgLS1iYW5uZXItc2lkZXMtYmFja2dyb3VuZC1tYXJnaW4tdG9wOiAxMDBweDtcbiAgLS1iYW5uZXItc2lkZXMtcHJvbW8taWNvbi1tYXJnaW4tdG9wOiAtMzZweDtcbiAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1ib3R0b206IDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgLS1iYW5uZXItc2lkZXMtY29udGVudC1tYXgtd2lkdGg6IDUwNnB4O1xuICAgICAgLS1iYW5uZXItc2lkZXMtY29udGVudC1zcGFjaW5nLXJpZ2h0OiA1NnB4O1xuICAgICAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy13aWR0aDogNDgycHg7XG4gICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLWhlaWdodDogMzkycHg7XG4gICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLXdpZHRoOiAyMTcycHg7XG4gICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLWhlaWdodDogNjkwcHg7XG4gICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLXJpZ2h0OiAtMTE3MnB4O1xuICAgICAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1ib3R0b206IDBweDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLXByb21vLWljb24tbWFyZ2luLXRvcDogLTI0cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLWJhbm5lci1zaWRlcy1jb250ZW50LW1heC13aWR0aDogNDMycHg7XG4gICAgICAtLWJhbm5lci1zaWRlcy1jb250ZW50LXNwYWNpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLXJpZ2h0OiAtMTQzMnB4O1xuICAgICAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1ib3R0b206IDI0cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXdpZHRoOiAzNjBweDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtaGVpZ2h0OiAyNjBweDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLWNvbnRlbnQtc3BhY2luZy1yaWdodDogMDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtd2lkdGg6IDE0MDBweDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtaGVpZ2h0OiA0NDRweDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtcmlnaHQ6IC03NjJweDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtYm90dG9tOiAwcHg7XG4gICAgICAtLWJhbm5lci1jb250ZW50LXBhZGRpbmctdjogNzJweDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLWJhY2tncm91bmQtbWFyZ2luLXRvcDogNzJweDtcbiAgICAgIC0tYmFubmVyLXNpZGVzLXByb21vLWljb24tbWFyZ2luLXRvcDogLTUwcHg7IH0gfVxuXG4uYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWNvbnRlbnQge1xuICBtaW4td2lkdGg6IHZhcigtLWJhbm5lci1zaWRlcy1jb250ZW50LW1heC13aWR0aCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1iYW5uZXItY29udGVudC1wYWRkaW5nLXYpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tYmFubmVyLWNvbnRlbnQtcGFkZGluZy12KTtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tYmFubmVyLXNpZGVzLWNvbnRlbnQtc3BhY2luZy1yaWdodCk7IH1cblxuLmJhbm5lci5iYW5uZXItc2lkZXMgLmJhbm5lci1iYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiB1bnNldDtcbiAgcmlnaHQ6IHVuc2V0O1xuICB3aWR0aDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtd2lkdGgpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1oZWlnaHQpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1iYW5uZXItc2lkZXMtYmFja2dyb3VuZC1tYXJnaW4tdG9wKTsgfVxuICAuYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1ncmFwaGljc1tkYXRhLXByb21vLXNsaWRlci1ob21lcGFnZV0ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgICAuYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1ncmFwaGljc1tkYXRhLXByb21vLXNsaWRlci1ob21lcGFnZV0gPiBkaXYge1xuICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XG4gICAgICBncmlkLWNvbHVtbi1zdGFydDogMTsgfVxuICAuYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1ncmFwaGljIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtd2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtaGVpZ2h0KTsgfVxuICAgIC5iYW5uZXIuYmFubmVyLXNpZGVzIC5iYW5uZXItYmFja2dyb3VuZCAuYmFubmVyLWdyYXBoaWMgLnByb21vLXNsaWRlci1pY29uIHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIHRvcDogdW5zZXQ7XG4gICAgICB3aWR0aDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtd2lkdGgpO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tYmFubmVyLXNpZGVzLXByb21vLWljb24tbWFyZ2luLXRvcCk7IH1cbiAgLmJhbm5lci5iYW5uZXItc2lkZXMgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItc2hhcGUge1xuICAgIHdpZHRoOiB2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1oZWlnaHQpO1xuICAgIHRvcDogdW5zZXQ7XG4gICAgYm90dG9tOiB2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1ib3R0b20pO1xuICAgIHJpZ2h0OiB2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1yaWdodCk7XG4gICAgbGVmdDogdW5zZXQ7IH1cbiAgICAuYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1zaGFwZSBzdmcge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYm90dG9tOiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLmJhbm5lci5iYW5uZXItc2lkZXMgPiAuY29udGFpbmVyIHtcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1iYW5uZXItc2lkZXMtbWluLWhlaWdodCk7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmJhbm5lci5iYW5uZXItc2lkZXMgPiAuY29udGFpbmVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5iYW5uZXIuYmFubmVyLXNpZGVzIC5iYW5uZXItY29udGVudCB7XG4gICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJhbm5lci5iYW5uZXItc2lkZXMgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItZ3JhcGhpYyB7XG4gICAgbWFyZ2luOiAwOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5CYW5uZXIgLSBDZW50ZXJlZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uYmFubmVyLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYmFubmVyLWNlbnRlciAuYmFubmVyLWFjdGlvbnMge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5iYW5uZXItY2VudGVyIC5iYW5uZXItY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtbWQpO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5iYW5uZXItY2VudGVyLnNpdGUtYmFubmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuU2l0ZSBCYW5uZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnNpdGUtYmFubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTsgfVxuICAuc2l0ZS1iYW5uZXIgPiAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5zaXRlLWJhbm5lciAucm93OmJlZm9yZSwgLnNpdGUtYmFubmVyIC5yb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IHVuc2V0OyB9XG4gIC5zaXRlLWJhbm5lciAuc2xpZGVyLXdyYXBwZXIsXG4gIC5zaXRlLWJhbm5lciAuc2xpZGVyLXNsaWRlcyxcbiAgLnNpdGUtYmFubmVyIC5zbGlkZXItc2xpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTsgfVxuICAuc2l0ZS1iYW5uZXIgLnNsaWRlci13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNpdGUtYmFubmVyIC5zbGlkZXItc2xpZGVzIHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC40NXMsIG1pbi1oZWlnaHQgMC40NXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLCAwLCAxLCAxKTsgfVxuICAuc2l0ZS1iYW5uZXIgLnNsaWRlci1zbGlkZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgLnNpdGUtYmFubmVyIC5zbGlkZXItc2xpZGUuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDEwOyB9XG4gICAgLnNpdGUtYmFubmVyIC5zbGlkZXItc2xpZGUtY3VzdG9tLWljb24gLmJhbm5lci1ncmFwaGljIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnNpdGUtYmFubmVyOm5vdCguc2l0ZS1zbGlkZXIpIC5iYW5uZXItZ3JhcGhpYyAucHJvbW8tc2xpZGVyLWljb24ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHNob3dTbGlkZXJJY29ucztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAwLCAwLCAxKTtcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgLnNpdGUtYmFubmVyOm5vdCguc2l0ZS1zbGlkZXIpIC5iYW5uZXItZ3JhcGhpYyAucHJvbW8tc2xpZGVyLWljb24ge1xuICAgICAgICBtaW4taGVpZ2h0OiA0ODRweDsgfSB9XG4gICAgLnNpdGUtYmFubmVyOm5vdCguc2l0ZS1zbGlkZXIpIC5iYW5uZXItZ3JhcGhpYyAucHJvbW8tc2xpZGVyLWljb24ucHJvbW8tc2xpZGVyLWljb24tcmV2ZXJzZSB7XG4gICAgICBhbmltYXRpb24tbmFtZTogc2hvd1NsaWRlckljb25zUmV2ZXJzZTsgfVxuICAgICAgLnNpdGUtYmFubmVyOm5vdCguc2l0ZS1zbGlkZXIpIC5iYW5uZXItZ3JhcGhpYyAucHJvbW8tc2xpZGVyLWljb24ucHJvbW8tc2xpZGVyLWljb24tcmV2ZXJzZTpudGgtY2hpbGQoMykge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzOyB9XG4gICAgICAuc2l0ZS1iYW5uZXI6bm90KC5zaXRlLXNsaWRlcikgLmJhbm5lci1ncmFwaGljIC5wcm9tby1zbGlkZXItaWNvbi5wcm9tby1zbGlkZXItaWNvbi1yZXZlcnNlOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4xMnM7IH1cbiAgICAgIC5zaXRlLWJhbm5lcjpub3QoLnNpdGUtc2xpZGVyKSAuYmFubmVyLWdyYXBoaWMgLnByb21vLXNsaWRlci1pY29uLnByb21vLXNsaWRlci1pY29uLXJldmVyc2U6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjI0czsgfVxuICAgIC5zaXRlLWJhbm5lcjpub3QoLnNpdGUtc2xpZGVyKSAuYmFubmVyLWdyYXBoaWMgLnByb21vLXNsaWRlci1pY29uOm50aC1jaGlsZCgzKSB7XG4gICAgICBhbmltYXRpb24tZGVsYXk6IDAuMHM7IH1cbiAgICAuc2l0ZS1iYW5uZXI6bm90KC5zaXRlLXNsaWRlcikgLmJhbm5lci1ncmFwaGljIC5wcm9tby1zbGlkZXItaWNvbjpudGgtY2hpbGQoMikge1xuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjEyczsgfVxuICAgIC5zaXRlLWJhbm5lcjpub3QoLnNpdGUtc2xpZGVyKSAuYmFubmVyLWdyYXBoaWMgLnByb21vLXNsaWRlci1pY29uOm50aC1jaGlsZCgxKSB7XG4gICAgICBhbmltYXRpb24tZGVsYXk6IDAuMjRzOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLnNpdGUtYmFubmVyOm5vdCguc2l0ZS1zbGlkZXIpIC5iYW5uZXItc2hhcGUge1xuICAgICAgdG9wOiAtMjVweDsgfSB9XG4gIC5zaXRlLWJhbm5lci5iYW5uZXItcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHZhcigtLWJyYW5kLXByaW1hcnktZ3JhZGllbnQtc3RhcnQpIDAlLCB2YXIoLS1icmFuZC1wcmltYXJ5LWdyYWRpZW50LWVuZCkgMTAwJSk7IH1cbiAgLnNpdGUtYmFubmVyLmJhbm5lci1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCB2YXIoLS1icmFuZC1zZWNvbmRhcnktZ3JhZGllbnQtc3RhcnQpIDAlLCB2YXIoLS1icmFuZC1zZWNvbmRhcnktZ3JhZGllbnQtZW5kKSAxMDAlKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnNpdGUtYmFubmVyLFxuICAuc2l0ZS1iYW5uZXIgPiAuY29udGFpbmVyIHtcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1zaXRlLWJhbm5lci1oZWlnaHQpOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5zaXRlLWJhbm5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAobWF4LXdpZHRoOiA3NjcuOThweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIC5zaXRlLWJhbm5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5zaXRlLWJhbm5lciAuc2xpZGVyLXNsaWRlIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkhvbWVwYWdlIFNsaWRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLWJ0biB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTR4KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLWJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNpdGUtYmFubmVyLWhvbWUtdGlsZS1oZWlnaHQpIC8gLTMpICFpbXBvcnRhbnQ7IH0gfVxuICAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLWJ0bi5zZWN0aW9uLXNsaWRlci1idG4tZXh0ZW5zaW9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tYmFubmVyLWNvbnRlbnQtcGFkZGluZy12KSAhaW1wb3J0YW50OyB9XG4gIC5zaXRlLXNlY3Rpb24uc2VjdGlvbi1zbGlkZXItYnRuIC5zbGlkZXItbmF2aWdhdGlvbi1wcm9tb3Rpb24ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSp2YXIoLS1zcGFjaW5nLTN4KSk7IH1cbiAgICAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLWJ0biAuc2xpZGVyLW5hdmlnYXRpb24tcHJvbW90aW9uIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcHg7IH1cbiAgICAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLWJ0biAuc2xpZGVyLW5hdmlnYXRpb24tcHJvbW90aW9uIC5zd2lwZXItc2xpZGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxuICAgIC5zaXRlLXNlY3Rpb24uc2VjdGlvbi1zbGlkZXItYnRuIC5zbGlkZXItbmF2aWdhdGlvbi1wcm9tb3Rpb24gLnN3aXBlci1wYWdpbmF0aW9uLXByb21vdGlvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5zaXRlLXNlY3Rpb24uc2VjdGlvbi1zbGlkZXItYnRuIC5zbGlkZXItbmF2aWdhdGlvbi1wcm9tb3Rpb24gLnN3aXBlci1wYWdpbmF0aW9uLXByb21vdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgICAgICAgcGFkZGluZzogNnB4OyB9XG4gICAgICAgIC5zaXRlLXNlY3Rpb24uc2VjdGlvbi1zbGlkZXItYnRuIC5zbGlkZXItbmF2aWdhdGlvbi1wcm9tb3Rpb24gLnN3aXBlci1wYWdpbmF0aW9uLXByb21vdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQ6b25seS1jaGlsZCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLWJ0biAuc2xpZGVyLW5hdmlnYXRpb24tcHJvbW90aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9tb3Rpb24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgICAgLnNpdGUtc2VjdGlvbi5zZWN0aW9uLXNsaWRlci1idG4gLnNsaWRlci1uYXZpZ2F0aW9uLXByb21vdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvbW90aW9uLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlICsgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpiZWZvcmUsIC5zaXRlLXNlY3Rpb24uc2VjdGlvbi1zbGlkZXItYnRuIC5zbGlkZXItbmF2aWdhdGlvbi1wcm9tb3Rpb24gLnN3aXBlci1wYWdpbmF0aW9uLXByb21vdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQ6aGFzKCsgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUpOmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjM1KTsgfVxuICAgICAgICAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLWJ0biAuc2xpZGVyLW5hdmlnYXRpb24tcHJvbW90aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9tb3Rpb24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNjUpO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpOyB9XG5cbi5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdLFxuLnNpdGUuc2l0ZS1pbmRleCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyOm5vdCguc2xpZGVyLXNpbmdsZSksXG4gICAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXI6bm90KC5zbGlkZXItc2luZ2xlKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1zaXRlLWJhbm5lci1ob21lLXRpbGUtaGVpZ2h0KSAvIDIpOyB9IH1cbiAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyOm5vdCguc2l0ZS1zbGlkZXItY3VzdG9tKSAuc2xpZGVyLWJhY2tncm91bmQgPiAqLFxuICAuc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlcjpub3QoLnNpdGUtc2xpZGVyLWN1c3RvbSkgLnNsaWRlci1iYWNrZ3JvdW5kID4gKiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lciAuc2xpZGUuYWN0aXZlIC5wcm9tby1zbGlkZXItaWNvbixcbiAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIgLnNsaWRlLmFjdGl2ZSAucHJvbW8tc2xpZGVyLWljb24ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyIC5iYW5uZXItY29udGVudCxcbiAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIgLmJhbm5lci1jb250ZW50IHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zZWN0aW9uLXNsaWRlci1idG4sXG4gIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biB7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNpdGUtYmFubmVyLWhvbWUtdGlsZS1oZWlnaHQpIC8gLTIpOyB9XG4gICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNlY3Rpb24tc2xpZGVyLWJ0biAuY29sLWxnLFxuICAgIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biAuY29sLWxnIHtcbiAgICAgIHBhZGRpbmc6IDBweCA4cHg7IH1cbiAgICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlLFxuICAgIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSB7XG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1zaXRlLWJhbm5lci1ob21lLXRpbGUtaGVpZ2h0KTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSAuc3ZnLWljb24sXG4gICAgICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlID4gc3ZnLFxuICAgICAgLnNpdGUuc2l0ZS1pbmRleCAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlIC5zdmctaWNvbixcbiAgICAgIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSA+IHN2ZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xuICAgICAgICBtYXgtaGVpZ2h0OiA2NHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUtY29udGFpbmVyID4gaW1nLFxuICAgICAgLnNpdGUuc2l0ZS1pbmRleCAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlLWNvbnRhaW5lciA+IGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDY0cHg7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgICAgIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUuYWN0aXZlLFxuICAgICAgLnNpdGUuc2l0ZS1pbmRleCAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlLmFjdGl2ZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZS5hY3RpdmU6YmVmb3JlLFxuICAgICAgICAuc2l0ZS5zaXRlLWluZGV4IC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUuYWN0aXZlOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgIHRvcDogLTIycHg7XG4gICAgICAgICAgcmlnaHQ6IC0yMnB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICAgICAgICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlLmFjdGl2ZTphZnRlcixcbiAgICAgICAgLnNpdGUuc2l0ZS1pbmRleCAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlLmFjdGl2ZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MDNcIjtcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtbWVkaXVtKTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICAgIHJpZ2h0OiA0cHg7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZS5hY3RpdmUgLnRpbGUtbG9hZGVyLFxuICAgICAgICAuc2l0ZS5zaXRlLWluZGV4IC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUuYWN0aXZlIC50aWxlLWxvYWRlciB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSAudGlsZS1sb2FkZXIsXG4gICAgICAuc2l0ZS5zaXRlLWluZGV4IC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUgLnRpbGUtbG9hZGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNTJweDtcbiAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgIGxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xuICAgICAgICB0b3A6IHZhcigtLXNwYWNpbmctMngpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWxvYWRlci1iZyk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yczsgfVxuICAgICAgICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlIC50aWxlLWxvYWRlciAudGlsZS1sb2FkZXItcHJvZ3Jlc3MsXG4gICAgICAgIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSAudGlsZS1sb2FkZXIgLnRpbGUtbG9hZGVyLXByb2dyZXNzIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWxvYWRlci1wcm9ncmVzcy1iZyk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTsgfVxuXG5Aa2V5ZnJhbWVzIGZpbGxQcm9ncmVzc0JhciB7XG4gIGZyb20ge1xuICAgIHdpZHRoOiAwJTsgfVxuICB0byB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSAudGl0bGUsXG4gICAgICAuc2l0ZS5zaXRlLWluZGV4IC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUgLnRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTsgfVxuICAgIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zZWN0aW9uLXNsaWRlci1idG4gLnNsaWRlci1uYXZpZ2F0aW9uLmFuaW1hdGlvbi1wYXVzZWQgLnRpbGUtbG9hZGVyLFxuICAgIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biAuc2xpZGVyLW5hdmlnYXRpb24uYW5pbWF0aW9uLXBhdXNlZCAudGlsZS1sb2FkZXIge1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNlY3Rpb24tc2xpZGVyLWJ0biAuc2xpZGVyLW5hdmlnYXRpb24uYW5pbWF0aW9uLXBhdXNlZCAudGlsZS1sb2FkZXIgLnRpbGUtbG9hZGVyLXByb2dyZXNzLFxuICAgICAgLnNpdGUuc2l0ZS1pbmRleCAuc2VjdGlvbi1zbGlkZXItYnRuIC5zbGlkZXItbmF2aWdhdGlvbi5hbmltYXRpb24tcGF1c2VkIC50aWxlLWxvYWRlciAudGlsZS1sb2FkZXItcHJvZ3Jlc3Mge1xuICAgICAgICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkOyB9XG4gICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNlY3Rpb24tc2xpZGVyLWJ0biAuc2xpZGVyLW5hdmlnYXRpb24uYW5pbWF0aW9uLXJ1bm5pbmcgLnRpbGUtbG9hZGVyIC50aWxlLWxvYWRlci1wcm9ncmVzcyxcbiAgICAuc2l0ZS5zaXRlLWluZGV4IC5zZWN0aW9uLXNsaWRlci1idG4gLnNsaWRlci1uYXZpZ2F0aW9uLmFuaW1hdGlvbi1ydW5uaW5nIC50aWxlLWxvYWRlciAudGlsZS1sb2FkZXItcHJvZ3Jlc3Mge1xuICAgICAgYW5pbWF0aW9uOiBmaWxsUHJvZ3Jlc3NCYXIgNXMgbGluZWFyIGZvcndhcmRzOyB9XG5cbi5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUuYWN0aXZlOmFmdGVyIHtcbiAgdG9wOiAtM3B4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2l0ZS1iYW5uZXIgLnNsaWRlci13cmFwcGVyLFxuICAuc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lciAuc2xpZGVyLXdyYXBwZXIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lciAuYmFubmVyLWdyYXBoaWNzLFxuICAuc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lciAuYmFubmVyLWdyYXBoaWNzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAwOyB9XG4gICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyIC5iYW5uZXItZ3JhcGhpY3MgPiBkaXYsXG4gICAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIgLmJhbm5lci1ncmFwaGljcyA+IGRpdiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2l0ZS1iYW5uZXIgLmJhbm5lci1ncmFwaGljcy5ncmFwaGljcy1jdXN0b20gPiBkaXYsXG4gICAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIgLmJhbm5lci1ncmFwaGljcy5ncmFwaGljcy1jdXN0b20gPiBkaXYge1xuICAgICAgdG9wOiA4MHB4OyB9XG4gIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lciAuYmFubmVyLWdyYXBoaWMsXG4gIC5zaXRlLnNpdGUtaW5kZXggLnNpdGUtYmFubmVyIC5iYW5uZXItZ3JhcGhpYyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuc2l0ZS1zbGlkZXItY3VzdG9tIC5zbGlkZXItd3JhcHBlciAuc2xpZGVyLXNsaWRlcy5zbGlkZXItY3VzdG9tLWljb24ge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGModmFyKC0tc2l0ZS1iYW5uZXItaGVpZ2h0KSArIHZhcigtLXNwYWNpbmctM3gpKSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogdW5zZXQgIWltcG9ydGFudDsgfVxuICAgIC5zaXRlLXNsaWRlci1jdXN0b20gLnNsaWRlci13cmFwcGVyIC5zbGlkZXItc2xpZGVzLnNsaWRlci1jdXN0b20taWNvbiAuc2xpZGVyLXNsaWRlLnNsaWRlci1zbGlkZS1jdXN0b20taWNvbjpub3QoLmdyYXBoaWMtY3VzdG9tLWVtcHR5KSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyB9XG4gICAgLnNpdGUtc2xpZGVyLWN1c3RvbSAuc2xpZGVyLXdyYXBwZXIgLnNsaWRlci1zbGlkZXMuc2xpZGVyLWN1c3RvbS1pY29uIC5zbGlkZXItc2xpZGUuc2xpZGVyLXNsaWRlLWN1c3RvbS1pY29uLnNsaWRlci1zbGlkZS1jdXN0b20taWNvbiB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMTJ4KTsgfVxuICAgICAgLnNpdGUtc2xpZGVyLWN1c3RvbSAuc2xpZGVyLXdyYXBwZXIgLnNsaWRlci1zbGlkZXMuc2xpZGVyLWN1c3RvbS1pY29uIC5zbGlkZXItc2xpZGUuc2xpZGVyLXNsaWRlLWN1c3RvbS1pY29uLnNsaWRlci1zbGlkZS1jdXN0b20taWNvbiAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc2l0ZS1iYW5uZXItcGFkZGluZy12KTsgfVxuICAgICAgLnNpdGUtc2xpZGVyLWN1c3RvbSAuc2xpZGVyLXdyYXBwZXIgLnNsaWRlci1zbGlkZXMuc2xpZGVyLWN1c3RvbS1pY29uIC5zbGlkZXItc2xpZGUuc2xpZGVyLXNsaWRlLWN1c3RvbS1pY29uLnNsaWRlci1zbGlkZS1jdXN0b20taWNvbiAuYmFubmVyLWJhY2tncm91bmQge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgICAgLnNpdGUtc2xpZGVyLWN1c3RvbSAuc2xpZGVyLXdyYXBwZXIgLnNsaWRlci1zbGlkZXMuc2xpZGVyLWN1c3RvbS1pY29uIC5zbGlkZXItc2xpZGUuc2xpZGVyLXNsaWRlLWN1c3RvbS1pY29uLnNsaWRlci1zbGlkZS1jdXN0b20taWNvbiAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1ncmFwaGljcyB7XG4gICAgICAgICAgaGVpZ2h0OiB1bnNldDsgfVxuICAgICAgICAgIC5zaXRlLXNsaWRlci1jdXN0b20gLnNsaWRlci13cmFwcGVyIC5zbGlkZXItc2xpZGVzLnNsaWRlci1jdXN0b20taWNvbiAuc2xpZGVyLXNsaWRlLnNsaWRlci1zbGlkZS1jdXN0b20taWNvbi5zbGlkZXItc2xpZGUtY3VzdG9tLWljb24gLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItZ3JhcGhpY3MgPiBkaXYge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYzsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgIC5zaXRlLXNsaWRlci1jdXN0b20gLnNsaWRlci13cmFwcGVyIC5zbGlkZXItc2xpZGVzLnNsaWRlci1jdXN0b20taWNvbiAuc2xpZGVyLXNsaWRlLnNsaWRlci1zbGlkZS1jdXN0b20taWNvbi5zbGlkZXItc2xpZGUtY3VzdG9tLWljb246bm90KC5hY3RpdmUpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgLnNpdGUtc2xpZGVyLWN1c3RvbSAuc2xpZGVyLXdyYXBwZXIgLnNsaWRlci1zbGlkZXMuc2xpZGVyLWN1c3RvbS1pY29uIC5zbGlkZXItc2xpZGUuc2xpZGVyLXNsaWRlLWN1c3RvbS1pY29uLnNsaWRlci1zbGlkZS1jdXN0b20taWNvbjpub3QoLmFjdGl2ZSkgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTWFya2V0Q29ubmVjdCBTbGlkZXJzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5zaXRlLnNpdGUtd3AtdG9vbGtpdCwgLnNpdGUuc2l0ZS1jb2RlZ3VhcmQsIC5zaXRlLnNpdGUtbWFya2V0Z29vLCAuc2l0ZS5zaXRlLXNpdGVidWlsZGVyLCAuc2l0ZS5zaXRlLXNpdGVsb2NrLCAuc2l0ZS5zaXRlLXNpdGVsb2NrdnBuLCAuc2l0ZS5zaXRlLXNwYW1leHBlcnRzLCAuc2l0ZS5zaXRlLXhvdmlub3csIC5zaXRlLnNpdGUtdGhyZWVzaXh0eW1vbml0b3JpbmcsIC5zaXRlLnNpdGUtc3NsLWNlcnRpZmljYXRlcywgLnNpdGUuc2l0ZS13ZWJibHksIC5zaXRlLnNpdGUtb3gsIC5zaXRlLnNpdGUtc29jaWFsYmVlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2l0ZS5zaXRlLXdwLXRvb2xraXQgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItZ3JhcGhpYyAuc3ZnLXdlZWJseSAubG9nby13ZWVibHkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zaXRlLnNpdGUtd3AtdG9vbGtpdCAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1ncmFwaGljIC5zdmctd2VlYmx5IC5sb2dvLXdvcmRwcmVzcyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tb3Rpb24gTWFuYWdlciBTbGlkZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyLWN1c3RvbSAuYmFubmVyLWdyYXBoaWMsXG4uc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlci1jdXN0b20gLmJhbm5lci1ncmFwaGljIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogdW5zZXQ7XG4gIHJpZ2h0OiB1bnNldDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cblxuLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyLWN1c3RvbSAuc2xpZGVyLWJhY2tncm91bmQgLmJhbm5lci1iYWNrZ3JvdW5kLFxuLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXItY3VzdG9tIC5zbGlkZXItYmFja2dyb3VuZCAuYmFubmVyLWJhY2tncm91bmQge1xuICB6LWluZGV4OiB1bnNldDsgfVxuXG4ucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXItY3VzdG9tLmJhbm5lci5iYW5uZXItc2lkZXMgLmJhbm5lci1jb250ZW50LFxuLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXItY3VzdG9tLmJhbm5lci5iYW5uZXItc2lkZXMgLmJhbm5lci1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1iYW5uZXItc2lkZXMtY29udGVudC1tYXgtd2lkdGgpOyB9XG5cbi5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlci1jdXN0b20uYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQsXG4uc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlci1jdXN0b20uYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwOyB9XG4gIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlci1jdXN0b20uYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1zaGFwZSxcbiAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXItY3VzdG9tLmJhbm5lci5iYW5uZXItc2lkZXMgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItc2hhcGUge1xuICAgIHRvcDogLTIzMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAgICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyLWN1c3RvbS5iYW5uZXIuYmFubmVyLXNpZGVzIC5iYW5uZXItYmFja2dyb3VuZCAuYmFubmVyLXNoYXBlLFxuICAgICAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXItY3VzdG9tLmJhbm5lci5iYW5uZXItc2lkZXMgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItc2hhcGUge1xuICAgICAgICB0b3A6IC0xMTJweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXItY3VzdG9tLmJhbm5lci5iYW5uZXItc2lkZXMgLmJhbm5lci1iYWNrZ3JvdW5kIC5iYW5uZXItc2hhcGUsXG4gICAgICAuc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlci1jdXN0b20uYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1zaGFwZSB7XG4gICAgICAgIHRvcDogLTE4NHB4O1xuICAgICAgICByaWdodDogY2FsYyh2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1yaWdodCkgKyA4NnB4KTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXItY3VzdG9tLmJhbm5lci5iYW5uZXItc2lkZXMgLnNsaWRlci1zbGlkZS5zbGlkZS1kZWZhdWx0LFxuICAuc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlci1jdXN0b20uYmFubmVyLmJhbm5lci1zaWRlcyAuc2xpZGVyLXNsaWRlLnNsaWRlLWRlZmF1bHQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlci1jdXN0b20uYmFubmVyLmJhbm5lci1zaWRlcyAuc2xpZGVyLXNsaWRlLnNsaWRlLWRlZmF1bHQgLmJhbm5lci1iYWNrZ3JvdW5kLFxuICAgIC5zaXRlLnNpdGUtaW5kZXggLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyLWN1c3RvbS5iYW5uZXIuYmFubmVyLXNpZGVzIC5zbGlkZXItc2xpZGUuc2xpZGUtZGVmYXVsdCAuYmFubmVyLWJhY2tncm91bmQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cblxuLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyIC5iYW5uZXItY29udGVudCxcbi5zaXRlLnNpdGUtaW5kZXggLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyIC5iYW5uZXItY29udGVudCB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyIC5zbGlkZXItYmFja2dyb3VuZCxcbi5zaXRlLnNpdGUtaW5kZXggLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyIC5zbGlkZXItYmFja2dyb3VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwOyB9XG4gIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlciAuc2xpZGVyLWJhY2tncm91bmQgPiAqLFxuICAuc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlciAuc2xpZGVyLWJhY2tncm91bmQgPiAqIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDAuNDVzLCBvcGFjaXR5IDAuNDVzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cbiAgICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXIgLnNsaWRlci1iYWNrZ3JvdW5kID4gKi5hY3RpdmUsXG4gICAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXIgLnNsaWRlci1iYWNrZ3JvdW5kID4gKi5hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB0cmFuc2l0aW9uOiB1bnNldDsgfVxuICAgICAgLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0gLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyIC5zbGlkZXItYmFja2dyb3VuZCA+ICouYWN0aXZlIGltZyxcbiAgICAgIC5zaXRlLnNpdGUtaW5kZXggLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyIC5zbGlkZXItYmFja2dyb3VuZCA+ICouYWN0aXZlIGltZyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMXMsIG9wYWNpdHkgMXM7IH1cbiAgICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXIgLnNsaWRlci1iYWNrZ3JvdW5kID4gKiBpbWcsXG4gICAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXIgLnNsaWRlci1iYWNrZ3JvdW5kID4gKiBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjsgfVxuICAucGFnZS1sYWdvbS1jbXMgLnNpdGUgW2RhdGEtcHJvbW8tc2xpZGVyXSAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXIgLnNsaWRlci1iYWNrZ3JvdW5kID4gLnNsaWRlOm5vdCguYWN0aXZlKSBpbWcsXG4gIC5zaXRlLnNpdGUtaW5kZXggLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyIC5zbGlkZXItYmFja2dyb3VuZCA+IC5zbGlkZTpub3QoLmFjdGl2ZSkgaW1nIHtcbiAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlciAuc2xpZGVyLWJhY2tncm91bmQgPiAuc2xpZGUuYWN0aXZlIGltZyxcbiAgLnNpdGUuc2l0ZS1pbmRleCAuc2l0ZS1iYW5uZXIuc2l0ZS1zbGlkZXIgLnNsaWRlci1iYWNrZ3JvdW5kID4gLnNsaWRlLmFjdGl2ZSBpbWcge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDFzLCBvcGFjaXR5IDFzOyB9XG4gIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlciAuc2xpZGVyLWJhY2tncm91bmQgPiBkaXYsXG4gIC5zaXRlLnNpdGUtaW5kZXggLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyIC5zbGlkZXItYmFja2dyb3VuZCA+IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuXG5bZGlyPVwicnRsXCJdIC5zaXRlLnNpdGUtaW5kZXggLnNpdGUtYmFubmVyLnNpdGUtc2xpZGVyLWN1c3RvbS5iYW5uZXIuYmFubmVyLXNpZGVzIC5iYW5uZXItYmFja2dyb3VuZCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiB1bnNldDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNpdGUtc2xpZGVyIC5zbGlkZXItc2xpZGUtY3VzdG9tLWljb24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2l0ZS5zaXRlLWluZGV4IC5zaXRlLWJhbm5lci5zaXRlLXNsaWRlci1jdXN0b20uYmFubmVyLmJhbm5lci1zaWRlcyAuYmFubmVyLWJhY2tncm91bmQgLmJhbm5lci1zaGFwZSB7XG4gICAgbGVmdDogY2FsYyh2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1yaWdodCkgKyA4NnB4KTtcbiAgICByaWdodDogdW5zZXQ7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJhbm5lciAtIFwiRGVmYXVsdFwiIEhvbWVwYWdlIFRlbXBhbHRlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5iYW5uZXItaG9tZSAuYmFubmVyLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5iYW5uZXItaG9tZSAuYmFubmVyLWJnIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDE7IH1cbiAgLmJhbm5lci1ob21lIC5iYW5uZXItYmcgLmJhbm5lci1zdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDIwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWluLXdpZHRoOiAxOTE4cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLmJhbm5lci1ob21lIC5iYW5uZXItYmcgLmJhbm5lci1icm93c2VyLFxuICAuYmFubmVyLWhvbWUgLmJhbm5lci1iZyAuYmFubmVyLWxhcHRvcCxcbiAgLmJhbm5lci1ob21lIC5iYW5uZXItYmcgLmJhbm5lci1jb21wdXRlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGJhbm5lckVsZW1lbnRGYWRlSW5Eb3duO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogNjAwbXM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxMDAwbXM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IH1cbiAgLmJhbm5lci1ob21lIC5iYW5uZXItYmcgLmJhbm5lci1icm93c2VyIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDA7IH1cbiAgLmJhbm5lci1ob21lIC5iYW5uZXItYmcgLmJhbm5lci1sYXB0b3AsXG4gIC5iYW5uZXItaG9tZSAuYmFubmVyLWJnIC5iYW5uZXItY29tcHV0ZXIge1xuICAgIGFuaW1hdGlvbi1kZWxheTogODAwbXM7IH1cbiAgLmJhbm5lci1ob21lIC5iYW5uZXItYmcgLmJhbm5lci13ZWItaWNvbixcbiAgLmJhbm5lci1ob21lIC5iYW5uZXItYmcgLmJhbm5lci1zZWFyY2gtaWNvbiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGJhbm5lckVsZW1lbnRGYWRlSW47XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxMDAwbXM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IH1cbiAgLmJhbm5lci1ob21lIC5iYW5uZXItYmcgLmJhbm5lci1saW5lcyBwYXRoIHtcbiAgICB0cmFuc2l0aW9uOiBzdHJva2UtZGFzaG9mZnNldCA0MDAwbXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAwLCAwLCAxKTsgfVxuXG5bZGF0YS1hbmltYXRpb24tZmFkZS1ib3R0b21dIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb24tbmFtZTogYmFubmVyRWxlbWVudEZhZGVJbkRvd247XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogLjZzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgfVxuXG5bZGF0YS1hbmltYXRpb24tZGVsYXktMV0ge1xuICBhbmltYXRpb24tZGVsYXk6IDFzOyB9XG5cbltkYXRhLWFuaW1hdGlvbi1kZWxheS0yXSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC44czsgfVxuXG5Aa2V5ZnJhbWVzIGJhbm5lckVsZW1lbnRGYWRlSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC0xMHB4LCAwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfSB9XG5cbkBrZXlmcmFtZXMgYmFubmVyRWxlbWVudEZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmhvbWVwYWdlLXRpbGVzIC50aWxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQmFubmVyIC0gU3R5bGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5iYW5uZXItcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmcpOyB9XG4gIC5iYW5uZXItcHJpbWFyeSAuYmFubmVyLXRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7IH1cbiAgLmJhbm5lci1wcmltYXJ5IC5iYW5uZXItZGVzYyxcbiAgLmJhbm5lci1wcmltYXJ5IC5iYW5uZXItZGVzYyBwIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuICAuYmFubmVyLXByaW1hcnkgKyAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlLmFjdGl2ZTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlci0zKSAhaW1wb3J0YW50OyB9XG4gIC5iYW5uZXItcHJpbWFyeSArIC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUuYWN0aXZlOmFmdGVyIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKSAhaW1wb3J0YW50OyB9XG5cbi5iYW5uZXItc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKTsgfVxuICAuYmFubmVyLXNlY29uZGFyeSAuYmFubmVyLXRpdGxlLFxuICAuYmFubmVyLXNlY29uZGFyeSAuYmFubmVyLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTsgfVxuICAuYmFubmVyLXNlY29uZGFyeSAuYmFubmVyLWRlc2MsXG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5iYW5uZXItZGVzYyBwIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3IpOyB9XG5cbi5iYW5uZXItcHJpbWFyeSxcbi5iYW5uZXItc2Vjb25kYXJ5LFxuLnByb21vLXNsaWRlci1wcmltYXJ5LFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5iYW5uZXItcHJpbWFyeSAucHJvbW8tc2hhcGUtbGVmdCxcbiAgLmJhbm5lci1zZWNvbmRhcnkgLnByb21vLXNoYXBlLWxlZnQsXG4gIC5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2hhcGUtbGVmdCxcbiAgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNoYXBlLWxlZnQge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1iYW5uZXItcHJpbWFyeS1zaGFwZS1sZWZ0KTsgfVxuICAuYmFubmVyLXByaW1hcnkgLnByb21vLXNoYXBlLXJpZ2h0LFxuICAuYmFubmVyLXNlY29uZGFyeSAucHJvbW8tc2hhcGUtcmlnaHQsXG4gIC5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2hhcGUtcmlnaHQsXG4gIC5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5wcm9tby1zaGFwZS1yaWdodCB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLWJhbm5lci1wcmltYXJ5LXNoYXBlLXJpZ2h0KTsgfVxuICAuYmFubmVyLXByaW1hcnkgLnN2Zy1iYW5uZXItc2hhcGUtbGVmdCxcbiAgLmJhbm5lci1zZWNvbmRhcnkgLnN2Zy1iYW5uZXItc2hhcGUtbGVmdCxcbiAgLnByb21vLXNsaWRlci1wcmltYXJ5IC5zdmctYmFubmVyLXNoYXBlLWxlZnQsXG4gIC5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5zdmctYmFubmVyLXNoYXBlLWxlZnQge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1iYW5uZXItcHJpbWFyeS1zaGFwZS1sZWZ0KTsgfVxuICAuYmFubmVyLXByaW1hcnkgLnN2Zy1iYW5uZXItc2hhcGUtcmlnaHQsXG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5zdmctYmFubmVyLXNoYXBlLXJpZ2h0LFxuICAucHJvbW8tc2xpZGVyLXByaW1hcnkgLnN2Zy1iYW5uZXItc2hhcGUtcmlnaHQsXG4gIC5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5zdmctYmFubmVyLXNoYXBlLXJpZ2h0IHtcbiAgICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXByaW1hcnktc2hhcGUtcmlnaHQpOyB9XG5cbi5sYWdvbS5sYWdvbS1mdXR1cmlzdGljIC5iYW5uZXIgLmJhbm5lci1jYXB0aW9uIHtcbiAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cblxuLmFkZG9uLXByb21vLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tcGFuZWwtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXBhbmVsLWJveC1zaGFkb3cpO1xuICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5hZGRvbi1wcm9tby1jb250YWluZXIuaXMtc2VsZWN0ZWQge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtYWN0aXZlLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1hY3RpdmUtYmcpOyB9XG4gIC5hZGRvbi1wcm9tby1jb250YWluZXIgLmRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIzMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pOyB9XG4gICAgLmFkZG9uLXByb21vLWNvbnRhaW5lciAuZGVzY3JpcHRpb24gYSB7XG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XG4gICAgLmFkZG9uLXByb21vLWNvbnRhaW5lciAuZGVzY3JpcHRpb24gaDMge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTsgfVxuICAuYWRkb24tcHJvbW8tY29udGFpbmVyIGRpdi5wdWxsLXJpZ2h0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4OyB9XG4gICAgLmFkZG9uLXByb21vLWNvbnRhaW5lciBkaXYucHVsbC1yaWdodDpiZWZvcmUge1xuICAgICAgY29udGVudDogJ0Nob29zZSBQYWNrYWdlJzsgfVxuICAgIC5hZGRvbi1wcm9tby1jb250YWluZXIgZGl2LnB1bGwtcmlnaHQgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTsgfVxuICAuYWRkb24tcHJvbW8tY29udGFpbmVyIC5sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOTBweDtcbiAgICByaWdodDogLTMwcHg7XG4gICAgd2lkdGg6IDIzMnB4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuYWRkb24tcHJvbW8tY29udGFpbmVyIC5sb2dvIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5hZGRvbi1wcm9tby1jb250YWluZXIgLmxvZ28gc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMjMycHg7XG4gICAgICBoZWlnaHQ6IDIwMHB4OyB9XG4gIC5hZGRvbi1wcm9tby1jb250YWluZXIgLnJhZGlvLWlubGluZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTsgfVxuICAgIC5hZGRvbi1wcm9tby1jb250YWluZXIgLnJhZGlvLWlubGluZSAucHVsbC1yaWdodCB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5hZGRvbi1wcm9tby1jb250YWluZXIgLnJhZGlvLWlubGluZTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuYWRkb24tcHJvbW8tY29udGFpbmVyIC5yYWRpby1pbmxpbmUgLnJhZGlvLXN0eWxlZCB7XG4gICAgICB0b3A6IDFweDsgfVxuICAgICAgQHN1cHBvcnRzICgtbW96LWFwcGVhcmFuY2U6IG5vbmUpIHtcbiAgICAgICAgLmFkZG9uLXByb21vLWNvbnRhaW5lciAucmFkaW8taW5saW5lIC5yYWRpby1zdHlsZWQge1xuICAgICAgICAgIHRvcDogMnB4OyB9IH1cbiAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1oeXBoZW5zOiBub25lKSB7XG4gICAgICAgIC5hZGRvbi1wcm9tby1jb250YWluZXIgLnJhZGlvLWlubGluZSAucmFkaW8tc3R5bGVkIHtcbiAgICAgICAgICB0b3A6IDJweDsgfSB9XG4gIC5hZGRvbi1wcm9tby1jb250YWluZXIgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5hZGRvbi1wcm9tby1jb250YWluZXIgLmxvZ28ge1xuICAgIHRvcDogLTQwcHg7XG4gICAgd2lkdGg6IDE0MnB4O1xuICAgIGhlaWdodDogMTAwcHg7IH1cbiAgICAuYWRkb24tcHJvbW8tY29udGFpbmVyIC5sb2dvIHN2ZyB7XG4gICAgICB3aWR0aDogMTQycHg7XG4gICAgICBoZWlnaHQ6IDEwMHB4OyB9XG4gIC5hZGRvbi1wcm9tby1jb250YWluZXIgLmRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA5NnB4OyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tbyBTbGlkZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb21vLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnByb21vLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLWhlaWdodDogdmFyKC0tcHJvbW8tc2xpZGVyLW1pbi1oZWlnaHQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhsZyk7XG4gIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cy1sZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdy1sZyk7XG4gIHotaW5kZXg6IDE7IH1cbiAgLnByb21vLXNsaWRlcjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnByb21vLXNsaWRlci1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAzMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IHZhcigtLXByb21vLXNsaWRlci1oZWFkZXItcGFkZGluZyk7IH1cbiAgLnByb21vLXNsaWRlci1jbG9zZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xuICAgIHdpZHRoOiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnByb21vLXNsaWRlci13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7IH1cbiAgLnByb21vLXNsaWRlci1iYWNrZ3JvdW5kIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwOyB9XG4gICAgLnByb21vLXNsaWRlci1iYWNrZ3JvdW5kID4gKiB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgIC5wcm9tby1zbGlkZXItYmFja2dyb3VuZCA+ICouYWN0aXZlIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5wcm9tby1zbGlkZXItYmFja2dyb3VuZCA+ICogaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAucHJvbW8tc2xpZGVyLWJhY2tncm91bmQgPiBkaXYge1xuICAgICAgZGlzcGxheTogZmxleDsgfVxuICAucHJvbW8tc2xpZGVyLXNoYXBlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogdW5zZXQ7IH1cbiAgICAucHJvbW8tc2xpZGVyLXNoYXBlID4gc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTE2cHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDI3MXB4OyB9XG4gICAgLnByb21vLXNsaWRlci1zaGFwZSA+IHN2ZyB7XG4gICAgICByaWdodDogdW5zZXQ7IH1cbiAgLnByb21vLXNsaWRlci1zbGlkZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjQ1cywgbWluLWhlaWdodCAwLjQ1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDEsIDAsIDEsIDEpOyB9XG4gIC5wcm9tby1zbGlkZXItc2xpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAucHJvbW8tc2xpZGVyLXNsaWRlLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyOTsgfVxuICAgICAgLnByb21vLXNsaWRlci1zbGlkZS5hY3RpdmUgLnByb21vLXNsaWRlci1tb3JlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5wcm9tby1zbGlkZXItc2xpZGU6aG92ZXIgLnByb21vLXNsaWRlci1tb3JlLFxuICAgIC5wcm9tby1zbGlkZXItc2xpZGU6aG92ZXIgLnByb21vLXNsaWRlci1tb3JlID4gaSwgLnByb21vLXNsaWRlci1zbGlkZTpmb2N1cy12aXNpYmxlIC5wcm9tby1zbGlkZXItbW9yZSxcbiAgICAucHJvbW8tc2xpZGVyLXNsaWRlOmZvY3VzLXZpc2libGUgLnByb21vLXNsaWRlci1tb3JlID4gaSB7XG4gICAgICBjb2xvcjogdmFyKC0tdWktbmF2LXNlY29uZGFyeS1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgIC5wcm9tby1zbGlkZXItc2xpZGUtY3VzdG9tLWljb24gLnByb21vLXNsaWRlci1pY29ucyB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5wcm9tby1zbGlkZXItYm9keSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDIyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IHZhcigtLXByb21vLXNsaWRlci1ib2R5LXBhZGRpbmcpOyB9XG4gIC5wcm9tby1zbGlkZXItY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDUwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogdmFyKC0tcHJvbW8tc2xpZGVyLWNvbnRlbnQtcGFkZGluZyk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTMxOS45OHB4KSB7XG4gICAgICAucHJvbW8tc2xpZGVyLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuICAucHJvbW8tc2xpZGVyLWljb25zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICB6LWluZGV4OiAyMDsgfVxuICAgIC5wcm9tby1zbGlkZXItaWNvbnMucHJvbW8tc2xpZGVyLWljb25zLS1pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyB9XG4gICAgICAucHJvbW8tc2xpZGVyLWljb25zLnByb21vLXNsaWRlci1pY29ucy0taW1hZ2UgLnByb21vLXNsaWRlci1pY29uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAgIC5wcm9tby1zbGlkZXItaWNvbnMucHJvbW8tc2xpZGVyLWljb25zLS1pbWFnZSAucHJvbW8tc2xpZGVyLWljb24gaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAucHJvbW8tc2xpZGVyLWNhcHRpb24ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1wcm9tby1zbGlkZXItY2FwdGlvbi1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcm9tby1zbGlkZXItY2FwdGlvbi1mb250LXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci1jYXB0aW9uLWxpbmUtaGVpZ2h0KTsgfVxuICAgIC5wcm9tby1zbGlkZXItY2FwdGlvbiArIC5wcm9tby1zbGlkZXItdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLTJ4KSAtIDRweCk7IH1cbiAgLnByb21vLXNsaWRlci10aXRsZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IHZhcigtLXByb21vLXNsaWRlci10aXRsZS1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcm9tby1zbGlkZXItdGl0bGUtZm9udC13ZWlnaHQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcm9tby1zbGlkZXItdGl0bGUtbGluZS1oZWlnaHQpOyB9XG4gIC5wcm9tby1zbGlkZXItZGVzYyB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnByb21vLXNsaWRlci1kZXNjICsgLnByb21vLXNsaWRlci1kZXNjIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pOyB9XG4gIC5wcm9tby1zbGlkZXItbW9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IHZhcigtLXNwYWNpbmctM3gpO1xuICAgIGJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gICAgY29sb3I6IHZhcigtLXVpLW5hdi1zZWNvbmRhcnktbGluay1jb2xvcik7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnByb21vLXNsaWRlci1tb3JlID4gaSB7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgY29sb3I6IHZhcigtLXVpLW5hdi1zZWNvbmRhcnktbGluay1pY29uLWNvbG9yKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLnByb21vLXNsaWRlci1hY3Rpb25zIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAgIC5wcm9tby1zbGlkZXItYWN0aW9ucyAuYnRuICsgLmJ0biB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgIC5wcm9tby1zbGlkZXItYWN0aW9ucy11cHNlbGwge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLnByb21vLXNsaWRlci1hY3Rpb25zLXVwc2VsbCBmb3JtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgICAucHJvbW8tc2xpZGVyLWFjdGlvbnMtdXBzZWxsIGZvcm0gLmJ0biArIC5idG4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgIC5wcm9tby1zbGlkZXItYWN0aW9ucy11cHNlbGwgZm9ybSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5wcm9tby1zbGlkZXIgdWwucHJvbW8tc2x1ZGVyLWRlc2Mge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLnByb21vLXNsaWRlciAucHJvbW8tc2xpZGVyLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA0MnB4O1xuICAgIHRvcDogLTU0cHg7XG4gICAgd2lkdGg6IHZhcigtLXByb21vLXNsaWRlci1pbGx1c3RyYXRpb24td2lkdGgpO1xuICAgIGhlaWdodDogYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucHJvbW8tc2xpZGVyI1Byb21vdGlvbi5wcm9tby1zbGlkZXI6bm90KC5wcm9tby1zbGlkZXIteHMpIC5wcm9tby1zbGlkZXItc2hhcGUgPiBzdmcge1xuICAgICAgbGVmdDogNTAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAucHJvbW8tc2xpZGVyI1Byb21vdGlvbi5wcm9tby1zbGlkZXIucHJvbW8tc2xpZGVyLXhzIC5wcm9tby1zbGlkZXItc2hhcGUgPiBzdmcge1xuICAgICAgbGVmdDogNTAlOyB9IH1cblxuLnByb21vLXNoYXBlLWxlZnQge1xuICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXNoYXBlLWxlZnQpO1xuICBmaWxsLXJ1bGU6IGV2ZW5vZGQ7XG4gIGNsaXAtcnVsZTogZXZlbm9kZDsgfVxuXG4ucHJvbW8tc2hhcGUtcmlnaHQge1xuICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXNoYXBlLXJpZ2h0KTtcbiAgZmlsbC1ydWxlOiBldmVub2RkO1xuICBjbGlwLXJ1bGU6IGV2ZW5vZGQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9tby1zbGlkZXI6bm90KC5wcm9tby1zbGlkZXIteHMpIC5wcm9tby1zbGlkZXItaWNvblt3aWR0aD1cIjU5NlwiXSB7XG4gICAgYm90dG9tOiAtNDhweDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUHJvbW8gU2xpZGVyIC0gV2l0aCBTbGlkZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb21vLXNsaWRlcltkYXRhLXByb21vLXNsaWRlcl0gLnByb21vLXNsaWRlci1iYWNrZ3JvdW5kID4gKjpub3QoLnByb21vLXNsaWRlci1zaGFwZSkge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMC40NXMsIG9wYWNpdHkgMC40NXM7IH1cblxuLnByb21vLXNsaWRlcltkYXRhLXByb21vLXNsaWRlcl0gLnByb21vLXNsaWRlci13cmFwcGVyLFxuLnByb21vLXNsaWRlcltkYXRhLXByb21vLXNsaWRlcl0gLnByb21vLXNsaWRlci1zbGlkZSB7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci1taW4taGVpZ2h0KTsgfVxuXG4ucHJvbW8tc2xpZGVyW2RhdGEtcHJvbW8tc2xpZGVyXSAucHJvbW8tc2xpZGVyLXNsaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5wcm9tby1zbGlkZXJbZGF0YS1wcm9tby1zbGlkZXJdIC5wcm9tby1zbGlkZXItYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLXByb21vLXNsaWRlci1ib2R5LXBhZGRpbmcpOyB9XG5cbi5wcm9tby1zbGlkZXJbZGF0YS1wcm9tby1zbGlkZXJdIC5wcm9tby1zbGlkZXItY29udGVudCB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnByb21vLXNsaWRlcltkYXRhLXByb21vLXNsaWRlcl0gLnByb21vLXNsaWRlci1pY29uIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ucHJvbW8tc2xpZGVyOm5vdChbZGF0YS1wcm9tby1zbGlkZXJdKSAucHJvbW8tc2xpZGVyLWJvZHkge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5wcm9tby1zbGlkZXI6bm90KFtkYXRhLXByb21vLXNsaWRlcl0pIC5wcm9tby1zbGlkZXItY29udGVudCB7XG4gIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctbGcpO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUHJvbW8gU2xpZGVyIC0gU21hbGxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb21vLXNsaWRlci1tZCB7XG4gIG1heC13aWR0aDogNzE4cHg7IH1cblxuLnByb21vLXNsaWRlci1zbSAucHJvbW8tc2xpZGVyLWNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnByb21vLXNsaWRlci1zbSAucHJvbW8tc2xpZGVyLWljb24ge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwOyB9XG5cbi5wcm9tby1zbGlkZXItc20gLnByb21vLXNsaWRlci10aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tcHJvbW8tc2xpZGVyLXNtLXRpdGxlLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcm9tby1zbGlkZXItc20tdGl0bGUtbGluZS1oZWlnaHQpOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucHJvbW8tc2xpZGVyLXhzIC5wcm9tby1zbGlkZXItc2xpZGUge1xuICAgIG1pbi1oZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLnByb21vLXNsaWRlci14cyAucHJvbW8tc2xpZGVyLXNsaWRlLm5vLWljb25zIC5wcm9tby1zbGlkZXItaWNvbnMge1xuICAgICAgaGVpZ2h0OiA1MHB4OyB9XG4gIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1ib2R5IHtcbiAgICBvcmRlcjogMjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucHJvbW8tc2xpZGVyLXhzIC5wcm9tby1zbGlkZXItY29udGVudCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucHJvbW8tc2xpZGVyLXhzIC5wcm9tby1zbGlkZXItaWNvbnMge1xuICAgIG9yZGVyOiAxO1xuICAgIGhlaWdodDogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLWlsbHVzdHJhdGlvbi1oZWlnaHQpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteGxnKTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1pY29ucy5wcm9tby1zbGlkZXItaWNvbnMtLWltYWdlIHtcbiAgICAgIGhlaWdodDogMTYwcHg7IH1cbiAgLnByb21vLXNsaWRlci14cyAucHJvbW8tc2xpZGVyLWljb24ge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiB2YXIoLS1wcm9tby1zbGlkZXIteHMtaWxsdXN0cmF0aW9uLWhlaWdodCk7XG4gICAgd2lkdGg6IHZhcigtLXByb21vLXNsaWRlci14cy1pbGx1c3RyYXRpb24td2lkdGgpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1wcm9tby1zbGlkZXIteHMtaWxsdXN0cmF0aW9uLXdpZHRoKSAvIC0yKTsgfVxuICAucHJvbW8tc2xpZGVyLXhzIC5wcm9tby1zbGlkZXItbW9yZSB7XG4gICAgcmlnaHQ6IDI0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1uYXYgPiBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLnByb21vLXNsaWRlci14cyAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIC5mdWxsLW5hbWUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1uYXYgPiBsaSAuc2hvcnQtbmFtZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucHJvbW8tc2xpZGVyLXhzIC5wcm9tby1zbGlkZXItY2xvc2Uge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1ib2R5LWNvbG9yKTtcbiAgICBtYXJnaW4tcmlnaHQ6IC04cHg7IH1cbiAgLnByb21vLXNsaWRlci14cyAucHJvbW8tc2xpZGVyLXRpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXByb21vLXNsaWRlci14cy10aXRsZS1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcm9tby1zbGlkZXIteHMtdGl0bGUtbGluZS1oZWlnaHQpOyB9XG4gIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1iYWNrZ3JvdW5kIHtcbiAgICBtaW4td2lkdGg6IDUxNnB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLnByb21vLXNsaWRlci14cyAucHJvbW8tc2xpZGVyLXNoYXBlIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1zaGFwZSA+IHN2ZyB7XG4gICAgICB0b3A6IC01OHB4O1xuICAgICAgbGVmdDogLTgxcHg7XG4gICAgICBoZWlnaHQ6IDM1MHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucHJvbW8tc2xpZGVyLXhzIC5wcm9tby1zbGlkZXItc2hhcGUucHJvbW8tc2xpZGVyLXNoYXBlLXhzID4gc3ZnIHtcbiAgICAgIHRvcDogLTUwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnByb21vLXNsaWRlci14czpub3QoW2RhdGEtcHJvbW8tc2xpZGVyXSkgLnByb21vLXNsaWRlci1ib2R5IHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5wcm9tby1zbGlkZXIteHM6bm90KFtkYXRhLXByb21vLXNsaWRlcl0pIC5wcm9tby1zbGlkZXItY29udGVudCB7XG4gICAgcGFkZGluZzogMjRweDsgfVxuICAucHJvbW8tc2xpZGVyLXhzW2RhdGEtcHJvbW8tc2xpZGVyXSAucHJvbW8tc2xpZGVyLWJvZHkge1xuICAgIHBhZGRpbmc6IDAgMCA0MHB4IDA7IH1cbiAgLnByb21vLXNsaWRlci14c1tkYXRhLXByb21vLXNsaWRlcl0gLnByb21vLXNsaWRlci1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyNHB4IDI0cHggMzJweCAyNHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5wcm9tby1zbGlkZXIgLnByb21vLXNsaWRlci1zbGlkZSB7XG4gICAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAucHJvbW8tc2xpZGVyIC5wcm9tby1zbGlkZXItc2xpZGUubm8taWNvbnMgLnByb21vLXNsaWRlci1pY29ucyB7XG4gICAgICBoZWlnaHQ6IDUwcHg7IH1cbiAgLnByb21vLXNsaWRlciAucHJvbW8tc2xpZGVyLWJvZHkge1xuICAgIG9yZGVyOiAyO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wcm9tby1zbGlkZXIgLnByb21vLXNsaWRlci1jb250ZW50IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wcm9tby1zbGlkZXIgLnByb21vLXNsaWRlci1pY29ucyB7XG4gICAgb3JkZXI6IDE7XG4gICAgaGVpZ2h0OiB2YXIoLS1wcm9tby1zbGlkZXIteHMtaWxsdXN0cmF0aW9uLWhlaWdodCk7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnByb21vLXNsaWRlciAucHJvbW8tc2xpZGVyLWljb25zLnByb21vLXNsaWRlci1pY29ucy0taW1hZ2Uge1xuICAgICAgaGVpZ2h0OiAxNjBweDsgfVxuICAucHJvbW8tc2xpZGVyIC5wcm9tby1zbGlkZXItaWNvbiB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogNTAlO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci14cy1pbGx1c3RyYXRpb24taGVpZ2h0KTtcbiAgICB3aWR0aDogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLWlsbHVzdHJhdGlvbi13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLXByb21vLXNsaWRlci14cy1pbGx1c3RyYXRpb24td2lkdGgpIC8gLTIpOyB9XG4gIC5wcm9tby1zbGlkZXIgLnByb21vLXNsaWRlci1tb3JlIHtcbiAgICByaWdodDogMjRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnByb21vLXNsaWRlciAucHJvbW8tc2xpZGVyLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnByb21vLXNsaWRlciAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAucHJvbW8tc2xpZGVyIC5wcm9tby1zbGlkZXItbmF2ID4gbGkgLmZ1bGwtbmFtZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnByb21vLXNsaWRlciAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIC5zaG9ydC1uYW1lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5wcm9tby1zbGlkZXIgLnByb21vLXNsaWRlci1jbG9zZSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpO1xuICAgIG1hcmdpbi1yaWdodDogLThweDsgfVxuICAucHJvbW8tc2xpZGVyIC5wcm9tby1zbGlkZXItdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLXRpdGxlLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci14cy10aXRsZS1saW5lLWhlaWdodCk7IH1cbiAgLnByb21vLXNsaWRlciAucHJvbW8tc2xpZGVyLWJhY2tncm91bmQge1xuICAgIG1pbi13aWR0aDogNTE2cHg7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAucHJvbW8tc2xpZGVyIC5wcm9tby1zbGlkZXItc2hhcGUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnByb21vLXNsaWRlciAucHJvbW8tc2xpZGVyLXNoYXBlID4gc3ZnIHtcbiAgICAgIHRvcDogLTU4cHg7XG4gICAgICBsZWZ0OiAtODFweDtcbiAgICAgIGhlaWdodDogMzUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5wcm9tby1zbGlkZXIgLnByb21vLXNsaWRlci1zaGFwZS5wcm9tby1zbGlkZXItc2hhcGUteHMgPiBzdmcge1xuICAgICAgdG9wOiAtNTBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucHJvbW8tc2xpZGVyOm5vdChbZGF0YS1wcm9tby1zbGlkZXJdKSAucHJvbW8tc2xpZGVyLWJvZHkge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnByb21vLXNsaWRlcjpub3QoW2RhdGEtcHJvbW8tc2xpZGVyXSkgLnByb21vLXNsaWRlci1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyNHB4OyB9XG4gIC5wcm9tby1zbGlkZXJbZGF0YS1wcm9tby1zbGlkZXJdIC5wcm9tby1zbGlkZXItYm9keSB7XG4gICAgcGFkZGluZzogMCAwIDQwcHggMDsgfVxuICAucHJvbW8tc2xpZGVyW2RhdGEtcHJvbW8tc2xpZGVyXSAucHJvbW8tc2xpZGVyLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDI0cHggMjRweCAzMnB4IDI0cHg7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNob3dTbGlkZXJJY29ucyB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MnB4LCAtMzBweCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgc2hvd1NsaWRlckljb25zUmV2ZXJzZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MnB4LCAzMHB4KTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQGtleWZyYW1lcyBzaG93U2xpZGVySW5zIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01NnB4KTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgc2xpZGVyRmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1pY29uW3dpZHRoPVwiNTk2XCJdIHtcbiAgICBib3R0b206IC00OHB4OyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tbyBTbGlkZXIgLSBOYXZcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb21vLXNsaWRlci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgLTVweDtcbiAgcGFkZGluZzogMDsgfVxuICAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAucHJvbW8tc2xpZGVyLW5hdiA+IGxpOmhvdmVyLCAucHJvbW8tc2xpZGVyLW5hdiA+IGxpLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdWktbmF2LXNlY29uZGFyeS1saW5rLWhvdmVyLWNvbG9yKTsgfVxuICAgIC5wcm9tby1zbGlkZXItbmF2ID4gbGkgLnNob3J0LW5hbWUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4ucHJvbW8tc2xpZGVyLW5hdi1kb3RzID4gbGkge1xuICBwYWRkaW5nOiA1cHg7XG4gIG91dGxpbmU6IG5vbmU7IH1cbiAgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpIHNwYW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAucHJvbW8tc2xpZGVyLW5hdi1kb3RzID4gbGk6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgd2lkdGg6IDhweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC5wcm9tby1zbGlkZXItbmF2LWRvdHMgPiBsaTpob3ZlcjphZnRlciwgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpOmZvY3VzOmFmdGVyLCAucHJvbW8tc2xpZGVyLW5hdi1kb3RzID4gbGk6YWN0aXZlOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7IH1cbiAgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpLmFjdGl2ZTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktYmcpOyB9XG5cbi5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1uYXYgPiBsaSB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG4gIC5wcm9tby1zbGlkZXIteHMgLnByb21vLXNsaWRlci1uYXYgPiBsaTpob3ZlciwgLnByb21vLXNsaWRlci14cyAucHJvbW8tc2xpZGVyLW5hdiA+IGxpLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzE5Ljk4cHgpIHtcbiAgLnByb21vLXNsaWRlci1uYXYgPiBsaSB7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLnByb21vLXNsaWRlci1uYXYgPiBsaTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgLnByb21vLXNsaWRlci1uYXYgPiBsaTpob3ZlcjphZnRlciwgLnByb21vLXNsaWRlci1uYXYgPiBsaTpmb2N1czphZnRlciwgLnByb21vLXNsaWRlci1uYXYgPiBsaTphY3RpdmU6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpOyB9XG4gICAgLnByb21vLXNsaWRlci1uYXYgPiBsaS5hY3RpdmU6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktYmcpOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tbyBTbGlkZXIgLSBTdHlsZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmcpOyB9XG5cbi5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGk6aG92ZXIsIC5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpOmZvY3VzLCAucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTphY3RpdmUsIC5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpLmFjdGl2ZSwgLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGk6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cblxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItY2xvc2Uge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1jbG9zZTpob3ZlciwgLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItY2xvc2U6Zm9jdXMsIC5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLWNsb3NlOmFjdGl2ZSwgLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItY2xvc2U6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cblxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItc2xpZGU6aG92ZXIgLnByb21vLXNsaWRlci1tb3JlLCAucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1zbGlkZTpmb2N1cy12aXNpYmxlIC5wcm9tby1zbGlkZXItbW9yZSwgLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItc2xpZGU6Zm9jdXMgLnByb21vLXNsaWRlci1tb3JlIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cblxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItdGl0bGUge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7IH1cblxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItZGVzYyB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpOyB9XG5cbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5wcm9tby1zbGlkZXItd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZyk7IH1cblxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaSB7XG4gIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTpob3ZlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTpmb2N1cywgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cblxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1jbG9zZSB7XG4gIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7IH1cbiAgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1jbG9zZTpob3ZlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1jbG9zZTpmb2N1cywgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1jbG9zZTphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cblxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1zbGlkZTpob3ZlciAucHJvbW8tc2xpZGVyLW1vcmUge1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG5cbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5wcm9tby1zbGlkZXItdGl0bGUge1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTsgfVxuXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeSAucHJvbW8tc2xpZGVyLWRlc2Mge1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3IpOyB9XG5cbi5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW1vcmUsXG4ucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1tb3JlID4gaSxcbi5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpLFxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGkgPiBpLFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1tb3JlLFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1tb3JlID4gaSxcbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGksXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpID4gaSB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpOyB9XG5cbi5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW1vcmU6aG92ZXIsXG4ucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1tb3JlOmhvdmVyID4gaSwgLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbW9yZTpmb2N1cyxcbi5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW1vcmU6Zm9jdXMgPiBpLCAucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1tb3JlOmFjdGl2ZSxcbi5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW1vcmU6YWN0aXZlID4gaSxcbi5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpOmhvdmVyLFxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGk6aG92ZXIgPiBpLFxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGk6Zm9jdXMsXG4ucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTpmb2N1cyA+IGksXG4ucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTphY3RpdmUsXG4ucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTphY3RpdmUgPiBpLFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1tb3JlOmhvdmVyLFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1tb3JlOmhvdmVyID4gaSxcbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5wcm9tby1zbGlkZXItbW9yZTpmb2N1cyxcbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5wcm9tby1zbGlkZXItbW9yZTpmb2N1cyA+IGksXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeSAucHJvbW8tc2xpZGVyLW1vcmU6YWN0aXZlLFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1tb3JlOmFjdGl2ZSA+IGksXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpOmhvdmVyLFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTpob3ZlciA+IGksXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpOmZvY3VzLFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTpmb2N1cyA+IGksXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpOmFjdGl2ZSxcbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGk6YWN0aXZlID4gaSB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpOyB9XG5cbi5wcm9tby1zbGlkZXItcHJpbWFyeTpob3ZlciAucHJvbW8tc2xpZGVyLW1vcmUsXG4ucHJvbW8tc2xpZGVyLXByaW1hcnk6aG92ZXIgLnByb21vLXNsaWRlci1tb3JlID4gaSwgLnByb21vLXNsaWRlci1wcmltYXJ5OmZvY3VzIC5wcm9tby1zbGlkZXItbW9yZSxcbi5wcm9tby1zbGlkZXItcHJpbWFyeTpmb2N1cyAucHJvbW8tc2xpZGVyLW1vcmUgPiBpLCAucHJvbW8tc2xpZGVyLXByaW1hcnk6YWN0aXZlIC5wcm9tby1zbGlkZXItbW9yZSxcbi5wcm9tby1zbGlkZXItcHJpbWFyeTphY3RpdmUgLnByb21vLXNsaWRlci1tb3JlID4gaSxcbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5OmhvdmVyIC5wcm9tby1zbGlkZXItbW9yZSxcbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5OmhvdmVyIC5wcm9tby1zbGlkZXItbW9yZSA+IGksXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeTpmb2N1cyAucHJvbW8tc2xpZGVyLW1vcmUsXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeTpmb2N1cyAucHJvbW8tc2xpZGVyLW1vcmUgPiBpLFxuLnByb21vLXNsaWRlci1zZWNvbmRhcnk6YWN0aXZlIC5wcm9tby1zbGlkZXItbW9yZSxcbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5OmFjdGl2ZSAucHJvbW8tc2xpZGVyLW1vcmUgPiBpIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7IH1cblxuLnByb21vLXNsaWRlci1pY29uOm5vdCgucHJvbW8tc2xpZGVyLWljb24tcmV2ZXJzZSlbY2xhc3MqPVwiLWxlZnRcIl0ge1xuICB6LWluZGV4OiAxOyB9XG5cbi5wcm9tby1zbGlkZXItaWNvbjpub3QoLnByb21vLXNsaWRlci1pY29uLXJldmVyc2UpW2NsYXNzKj1cIi1jZW50ZXJcIl0ge1xuICB6LWluZGV4OiAyOyB9XG5cbi5wcm9tby1zbGlkZXItaWNvbjpub3QoLnByb21vLXNsaWRlci1pY29uLXJldmVyc2UpW2NsYXNzKj1cIi1yaWdodFwiXSB7XG4gIHotaW5kZXg6IDM7IH1cblxuLnByb21vLXNsaWRlci1pY29uLXJldmVyc2VbY2xhc3MqPVwiLWxlZnRcIl0ge1xuICB6LWluZGV4OiAzOyB9XG5cbi5wcm9tby1zbGlkZXItaWNvbi1yZXZlcnNlW2NsYXNzKj1cIi1jZW50ZXJcIl0ge1xuICB6LWluZGV4OiAyOyB9XG5cbi5wcm9tby1zbGlkZXItaWNvbi1yZXZlcnNlW2NsYXNzKj1cIi1yaWdodFwiXSB7XG4gIHotaW5kZXg6IDE7IH1cblxuLnByb21vLXNsaWRlci14cyAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1ob3Zlci1iZyk7IH1cbiAgLnByb21vLXNsaWRlci14cyAucHJvbW8tc2xpZGVyLW5hdiA+IGxpOmhvdmVyLCAucHJvbW8tc2xpZGVyLXhzIC5wcm9tby1zbGlkZXItbmF2ID4gbGkuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7IH1cblxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGksIC5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGkge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kb3QtbmF2LWhvdmVyLWJnKTsgfVxuICAucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1uYXYgPiBsaTpob3ZlciwgLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbmF2ID4gbGkuYWN0aXZlLCAucHJvbW8tc2xpZGVyLXNlY29uZGFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpOmhvdmVyLCAucHJvbW8tc2xpZGVyLXNlY29uZGFyeSAucHJvbW8tc2xpZGVyLW5hdiA+IGxpLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpOyB9XG5cbi5wcm9tby1zbGlkZXItcHJpbWFyeS14cyAucHJvbW8tc2xpZGVyLW5hdiA+IGxpLCAucHJvbW8tc2xpZGVyLXNlY29uZGFyeS14cyAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1ob3Zlci1iZyk7IH1cbiAgLnByb21vLXNsaWRlci1wcmltYXJ5LXhzIC5wcm9tby1zbGlkZXItbmF2ID4gbGk6aG92ZXIsIC5wcm9tby1zbGlkZXItcHJpbWFyeS14cyAucHJvbW8tc2xpZGVyLW5hdiA+IGxpLmFjdGl2ZSwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkteHMgLnByb21vLXNsaWRlci1uYXYgPiBsaTpob3ZlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkteHMgLnByb21vLXNsaWRlci1uYXYgPiBsaS5hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuXG4ucHJvbW8tc2xpZGVyLXByaW1hcnkgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpOjphZnRlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpOjphZnRlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1ob3Zlci1iZyk7IH1cblxuLnByb21vLXNsaWRlci1wcmltYXJ5IC5wcm9tby1zbGlkZXItbmF2LWRvdHMgPiBsaTpob3Zlcjo6YWZ0ZXIsIC5wcm9tby1zbGlkZXItcHJpbWFyeSAucHJvbW8tc2xpZGVyLW5hdi1kb3RzID4gbGkuYWN0aXZlOjphZnRlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpOmhvdmVyOjphZnRlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpLmFjdGl2ZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuXG4ucHJvbW8tc2xpZGVyLXByaW1hcnkteHMgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpOjphZnRlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkteHMgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpOjphZnRlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1ob3Zlci1iZyk7IH1cblxuLnByb21vLXNsaWRlci1wcmltYXJ5LXhzIC5wcm9tby1zbGlkZXItbmF2LWRvdHMgPiBsaTpob3Zlcjo6YWZ0ZXIsIC5wcm9tby1zbGlkZXItcHJpbWFyeS14cyAucHJvbW8tc2xpZGVyLW5hdi1kb3RzID4gbGkuYWN0aXZlOjphZnRlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkteHMgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpOmhvdmVyOjphZnRlciwgLnByb21vLXNsaWRlci1zZWNvbmRhcnkteHMgLnByb21vLXNsaWRlci1uYXYtZG90cyA+IGxpLmFjdGl2ZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTsgfVxuXG4ucHJpY2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXByaWNlLWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tcHJpY2UtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2UtbGluZS1oZWlnaHQpO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnByaWNlLWlubGluZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH1cbiAgLnByaWNlLWN5Y2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnByaWNlLWFtb3VudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5wcmljZS1hbW91bnQucHJpY2UtaW5saW5lLWFtb3VudCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxuICAgICAgLnByaWNlLWFtb3VudC5wcmljZS1pbmxpbmUtYW1vdW50ICsgLnByaWNlLWN5Y2xlLWlubGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAucHJpY2UtY3ljbGUsIC5wcmljZS1zZXR1cC1mZWUsXG4gIC5wcmljZS1zZXR1cC1mZWUgW3N0eWxlPVwiY29sb3I6IHJlZDsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XCJdLCAucHJpY2Utc3RhcnRpbmctZnJvbSB7XG4gICAgY29sb3I6IHZhcigtLXByaWNlLWN5Y2xlLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLXByaWNlLWN5Y2xlLWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLWN5Y2xlLWZvbnQtd2VpZ2h0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2UtY3ljbGUtbGluZS1oZWlnaHQpOyB9XG4gIC5wcmljZS1jdXJyZW5jeSxcbiAgLnByaWNlIHN1YiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1jdXJyZW5jeS1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1jdXJyZW5jeS1mb250LXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLWN1cnJlbmN5LWxpbmUtaGVpZ2h0KTsgfVxuICAucHJpY2Utc2F2aW5ncyB7XG4gICAgY29sb3I6IHZhcigtLXByaWNlLXNhdmluZ3MtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2Utc2F2aW5ncy1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1zYXZpbmdzLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2Utc2F2aW5ncy1mb250LXdlaWdodCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLnByaWNlLXNhdmluZ3Mgc3BhbiB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsgfVxuICAgIC5wcmljZS1zYXZpbmdzIGkge1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnByaWNlLWRpc2NvdW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmljZS1zYXZpbmdzLWJhY2tncm91bmQpO1xuICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuICAucHJpY2UtdG90YWwsIC5wcmljZS10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXByaWNlLXRpdGxlLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXRpdGxlLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7IH1cbiAgLnByaWNlLWFkZG9uIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7IH1cbiAgLnByaWNlLWRpc2NvdW50Q2VudGVyIC5wcmljZS1hbW91bnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAucHJpY2UtZGlzY291bnRDZW50ZXIgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLXByaWNlLXNhdmluZ3MtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2Utc2F2aW5ncy1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1zYXZpbmdzLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2Utc2F2aW5ncy1mb250LXdlaWdodCk7IH1cbiAgLnByaWNlLWRpc2NvdW50Q2VudGVyLmRvbWFpbi1wcmljZSAucHJpY2Ugc3BhbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpOyB9XG4gIC5wcmljZS1sZWZ0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAucHJpY2UtbGVmdCAucGFja2FnZS1jeWNsZSxcbiAgICAucHJpY2UtbGVmdCAucHJpY2UtdGl0bGUsXG4gICAgLnByaWNlLWxlZnQgLnByaWNlLWFtb3VudCxcbiAgICAucHJpY2UtbGVmdCAucHJpY2UtdG90YWwge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5wcmljZS1sZWZ0IC5wcmljZS1zYXZpbmdzIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC5wcmljZS1sZWZ0LWgge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgICAucHJpY2UtbGVmdC1oIC5wcmljZS1hbW91bnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAucHJpY2UtbGVmdC1oIC5wcmljZS1zYXZpbmdzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAucHJpY2UtcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgICAucHJpY2UtcmlnaHQgLnBhY2thZ2UtY3ljbGUge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAucHJpY2UtcmlnaHQgLnByaWNlLXNhdmluZ3Mge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgICAgLnByaWNlLXJpZ2h0IC5wcmljZS1zYXZpbmdzIHNwYW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAucHJpY2UtcmlnaHQtaCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgICAucHJpY2UtcmlnaHQtaCAucHJpY2UtYW1vdW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnByaWNlLXJpZ2h0LWggLnByaWNlLXNhdmluZ3Mge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuICAucHJpY2UtbGcge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2UtbGctZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2UtbGctbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1sZy1mb250LXdlaWdodCk7IH1cbiAgICAucHJpY2UtbGcgLnByaWNlLWN1cnJlbmN5LFxuICAgIC5wcmljZS1sZyBzdWIge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1sZy1jdXJyZW5jeS1mb250LXNpemUpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLWxnLWN1cnJlbmN5LWxpbmUtaGVpZ2h0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1sZy1jdXJyZW5jeS1mb250LXdlaWdodCk7IH1cbiAgLnByaWNlLXNtIHtcbiAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXNtLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLXNtLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2Utc20tZm9udC13ZWlnaHQpOyB9XG4gICAgLnByaWNlLXNtIC5wcmljZS1jdXJyZW5jeSxcbiAgICAucHJpY2Utc20gc3ViIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2Utc20tY3VycmVuY3ktZm9udC1zaXplKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1zbS1jdXJyZW5jeS1saW5lLWhlaWdodCk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2Utc20tY3VycmVuY3ktZm9udC13ZWlnaHQpOyB9XG4gIC5wcmljZS14cyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS14cy1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS14cy1mb250LXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLXhzLWxpbmUtaGVpZ2h0KTsgfVxuICAgIC5wcmljZS14cyAucHJpY2UtY3VycmVuY3ksXG4gICAgLnByaWNlLXhzIHN1YiB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXhzLWN1cnJlbmN5LWZvbnQtc2l6ZSk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2UteHMtY3VycmVuY3ktbGluZS1oZWlnaHQpO1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLXhzLWN1cnJlbmN5LWZvbnQtd2VpZ2h0KTsgfVxuXG4uZGlzY291bnRfY2VudGVyLWJhc2VfY2FydF9kb21haW5fbGlzdF9yZWdpc3Rlcixcbi5kaXNjb3VudF9jZW50ZXItc3RhbmRhcmRfY2FydF9hZGRvbl9wcmljZSxcbi5kaXNjb3VudF9jZW50ZXItc3RhbmRhcmRfY2FydF9kb21haW5fcmVnaXN0ZXIsXG4uZGlzY291bnRfY2VudGVyLXN0YW5kYXJkX2NhcnRfZG9tYWluX3RyYW5zZmVyIHtcbiAgY29sb3I6IHZhcigtLXByaWNlLXNhdmluZ3MtY29sb3IpICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2Utc2F2aW5ncy1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2Utc2F2aW5ncy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtd2VpZ2h0KTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhY2thZ2UgIFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFja2FnZXMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4ucGFja2FnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQ6IHZhcigtLXBhY2thZ2UtYmcpO1xuICBib3JkZXI6IHZhcigtLXBhY2thZ2UtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcGFja2FnZS1ib3JkZXItcmFkaXVzKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tcGFja2FnZS1ibG9jay1zaGFkb3cpO1xuICBwYWRkaW5nOiB2YXIoLS1wYWNrYWdlLXBhZGRpbmcpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG4gIC5wYWNrYWdlLmhhcy1zaGFkb3cge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhY2thZ2UgLnBhY2thZ2Utc2lkZS1sZWZ0ID4gKixcbiAgLnBhY2thZ2UgPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBhY2thZ2UgLnBhY2thZ2Utc2lkZS1sZWZ0ID4gKjpub3QoLmxhYmVsLWNvcm5lcikgKyAqLFxuICAucGFja2FnZSA+ICo6bm90KC5sYWJlbC1jb3JuZXIpICsgKiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tcGFja2FnZS1lbGVtZW50LXNwYWNpbmcpOyB9XG4gIC5wYWNrYWdlIC5wYWNrYWdlLXNpZGUgPiAqOmVtcHR5LFxuICAucGFja2FnZSA+ICo6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhY2thZ2UgLnBhY2thZ2Utc2lkZS1sZWZ0ID4gKiArICosXG4gIC5wYWNrYWdlID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2UtZWxlbWVudC1zcGFjaW5nKTsgfVxuICAucGFja2FnZSAucHJlbWl1bS1kaXZpZGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAucGFja2FnZS1ib2R5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXg6IDE7IH1cbiAgLnBhY2thZ2UtdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IHZhcigtLXBhY2thZ2UtdGl0bGUtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tcGFja2FnZS10aXRsZS1mb250LXdlaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXBhY2thZ2UtdGl0bGUtbGluZS1oZWlnaHQpO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgICAucGFja2FnZS10aXRsZSArIC5wYWNrYWdlLXByaWNlIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2UtdGl0bGUtc3BhY2luZy1ib3R0b20pOyB9XG4gIC5wYWNrYWdlLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKSAhaW1wb3J0YW50OyB9XG4gIC5wYWNrYWdlLXNldHVwLWZlZSwgLnBhY2thZ2Utc3RhcnRpbmctZnJvbSwgLnBhY2thZ2UtcXR5LCAucGFja2FnZS1iaWxsaW5nLWN5Y2xlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgfVxuICAgIC5wYWNrYWdlLXNldHVwLWZlZSBbc3R5bGU9XCJjb2xvcjogcmVkOyB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcIl0sIC5wYWNrYWdlLXN0YXJ0aW5nLWZyb20gW3N0eWxlPVwiY29sb3I6IHJlZDsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XCJdLCAucGFja2FnZS1xdHkgW3N0eWxlPVwiY29sb3I6IHJlZDsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XCJdLCAucGFja2FnZS1iaWxsaW5nLWN5Y2xlIFtzdHlsZT1cImNvbG9yOiByZWQ7IHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1wiXSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgfVxuICAgICAgLnBhY2thZ2Utc2V0dXAtZmVlIFtzdHlsZT1cImNvbG9yOiByZWQ7IHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1wiXSAucHJpY2UtcHJlZml4LCAucGFja2FnZS1zdGFydGluZy1mcm9tIFtzdHlsZT1cImNvbG9yOiByZWQ7IHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1wiXSAucHJpY2UtcHJlZml4LCAucGFja2FnZS1xdHkgW3N0eWxlPVwiY29sb3I6IHJlZDsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XCJdIC5wcmljZS1wcmVmaXgsIC5wYWNrYWdlLWJpbGxpbmctY3ljbGUgW3N0eWxlPVwiY29sb3I6IHJlZDsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XCJdIC5wcmljZS1wcmVmaXgge1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAucGFja2FnZS1xdHkge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAtOHB4OyB9XG4gIC5wYWNrYWdlIC5wYWNrYWdlLWZlYXR1cmVzID4gbGkgPiBiLFxuICAucGFja2FnZSAucGFja2FnZS1mZWF0dXJlcyA+IGxpID4gc3Ryb25nIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTsgfVxuICAucGFja2FnZS1mZWF0dXJlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAucGFja2FnZS1mZWF0dXJlcyA+IGxpIHtcbiAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cbiAgICAgIC5wYWNrYWdlLWZlYXR1cmVzID4gbGkgPiBiLFxuICAgICAgLnBhY2thZ2UtZmVhdHVyZXMgPiBsaSA+IHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuICAgICAgICAucGFja2FnZS1mZWF0dXJlcyA+IGxpID4gYiBpLFxuICAgICAgICAucGFja2FnZS1mZWF0dXJlcyA+IGxpID4gc3Ryb25nIGkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAgICAgLnBhY2thZ2UtZmVhdHVyZXMgPiBsaSA+IFtkYXRhLXRvZ2dsZT1cInRvb2x0aXBcIl0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7IH1cbiAgICAgICAgLnBhY2thZ2UtZmVhdHVyZXMgPiBsaSA+IFtkYXRhLXRvZ2dsZT1cInRvb2x0aXBcIl06aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gICAgICAucGFja2FnZS1mZWF0dXJlcyA+IGxpID4gaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cbiAgICAgIC5wYWNrYWdlLWZlYXR1cmVzID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgLnBhY2thZ2UtZmVhdHVyZXMgPiBsaS5mZWF0dXJlcy1oZWFkaW5nIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTsgfVxuICAgICAgICAucGFja2FnZS1mZWF0dXJlcyA+IGxpLmZlYXR1cmVzLWhlYWRpbmc6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gICAgLnBhY2thZ2UtZmVhdHVyZXMtY29uZGVuc2VkID4gbGkge1xuICAgICAgcGFkZGluZzogNnB4IDA7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTsgfVxuICAucGFja2FnZS1mZWF0dXJlcywgLnBhY2thZ2UtY29udGVudCB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLnBhY2thZ2UtZmVhdHVyZXMsIC5wYWNrYWdlLWRlc2MsXG4gIC5wYWNrYWdlLWNvbnRlbnQgPiBwIHtcbiAgICBmb250LXNpemU6IHZhcigtLXBhY2thZ2UtZGVzYy1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wYWNrYWdlLWRlc2MtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wYWNrYWdlLWRlc2MtZm9udC13ZWlnaHQpOyB9XG4gICAgLnBhY2thZ2UtZmVhdHVyZXMgPiA6bGFzdC1jaGlsZCwgLnBhY2thZ2UtZGVzYyA+IDpsYXN0LWNoaWxkLFxuICAgIC5wYWNrYWdlLWNvbnRlbnQgPiBwID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wYWNrYWdlLWZlYXR1cmVzOmZpcnN0LWNoaWxkLCAucGFja2FnZS1kZXNjOmZpcnN0LWNoaWxkLFxuICAgIC5wYWNrYWdlLWNvbnRlbnQgPiBwOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhcmFncmFwaC1tYXJnaW4tYm90dG9tKTsgfVxuICAucGFja2FnZS1jb250ZW50ID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2UtZWxlbWVudC1zcGFjaW5nKTsgfVxuICAucGFja2FnZS1jb250ZW50IC5scyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XG4gIC5wYWNrYWdlLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsZXg6IDE7IH1cbiAgICAucGFja2FnZS1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgIC5wYWNrYWdlLWNvbnRlbnQgPiBwLnBhY2thZ2UtZGVzYyB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tcGFja2FnZS1lbGVtZW50LXNwYWNpbmcpKTsgfVxuICAgIC5wYWNrYWdlLWNvbnRlbnQgPiAucGFja2FnZS1mZWF0dXJlcyB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5wYWNrYWdlLWNvbnRlbnQgPiAucGFja2FnZS1mZWF0dXJlcyArIHAge1xuICAgICAgICBvcmRlcjogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSkgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5wYWNrYWdlLWNvbnRlbnQgPiAucGFja2FnZS1mZWF0dXJlcyArIHA6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC5wYWNrYWdlLWNvbnRlbnQgPiBwOm5vdCg6ZW1wdHkpOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2UtZWxlbWVudC1zcGFjaW5nKTsgfVxuICAgIC5wYWNrYWdlLWNvbnRlbnQgPiBwOmVtcHR5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBhY2thZ2UtaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnBhY2thZ2UtYWN0aW9ucywgLnBhY2thZ2UtZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhY2thZ2UtZWxlbWVudC1zcGFjaW5nKTsgfVxuICAgIC5wYWNrYWdlLWFjdGlvbnMucGFja2FnZS1zaWRlIC5wYWNrYWdlLXByaWNlLCAucGFja2FnZS1mb290ZXIucGFja2FnZS1zaWRlIC5wYWNrYWdlLXByaWNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFja2FnZS1hY3Rpb25zIC5wYWNrYWdlLWFjdGlvbnMsIC5wYWNrYWdlLWZvb3RlciAucGFja2FnZS1hY3Rpb25zIHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAgIC5wYWNrYWdlLWFjdGlvbnMgLmJ0biwgLnBhY2thZ2UtZm9vdGVyIC5idG4ge1xuICAgICAgbWluLXdpZHRoOiB2YXIoLS1wYWNrYWdlLWJ0bi1taW4td2lkdGgpOyB9XG4gIC5wYWNrYWdlLWFjdGlvbnMgPiAqICsgKjpub3QoLnBhY2thZ2UtbGVhcm4tbW9yZSkge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTsgfVxuICAucGFja2FnZS1hY3Rpb25zID4gZm9ybSBzZWxlY3QgKyAuYnRuIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTsgfVxuICAucGFja2FnZS1hY3Rpb25zID4gLmJ0biArIC5wYWNrYWdlLWxlYXJuLW1vcmUge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pOyB9XG4gIC5wYWNrYWdlLWFjdGlvbnMtd3AgLmJ0bi5idG4tYWRkLXRvLWNhcnQuYnRuLWluZm9bZGlzYWJsZWRdIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWluZm8tY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1pbmZvLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1pbmZvLWJvcmRlcik7IH1cbiAgLnBhY2thZ2UtbGVhcm4tbW9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7IH1cbiAgLnBhY2thZ2UtbW9uaXRvcmluZyAucGFja2FnZS1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiA1cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAucGFja2FnZS1tb25pdG9yaW5nIC5wYWNrYWdlLWJvZHkgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5wYWNrYWdlLW1vbml0b3JpbmcgLnBhY2thZ2UtYm9keSB1bCBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH1cbiAgICAgICAgLnBhY2thZ2UtbW9uaXRvcmluZyAucGFja2FnZS1ib2R5IHVsIGxpOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhY2thZ2UtbW9uaXRvcmluZyAucGFja2FnZS1zdWJ0aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgLnBhY2thZ2UtbW9uaXRvcmluZyAucGFja2FnZS1hY3Rpb25zIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAucGFja2FnZS1tb25pdG9yaW5nIC5wYWNrYWdlLXByaWNlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnBhY2thZ2UtbW9uaXRvcmluZyAucGFja2FnZS1wcmljZTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7IH1cbiAgLnBhY2thZ2UtYWRkb25zIC5wYWNrYWdlLXRpdGxlOmhhcyguZ3JhcGhpYy1pdGVtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhY2thZ2UgLSBGZWF0dXJlZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFja2FnZS1mZWF0dXJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICAucGFja2FnZS1mZWF0dXJlZCAubGFiZWw6bm90KC5sYWJlbC1jb3JuZXIpOm5vdCgucHJpY2UtZGlzY291bnQtc2F2ZSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIC5wYWNrYWdlLWZlYXR1cmVkIC5sYWJlbC1jb3JuZXIge1xuICAgIHRvcDogLTE1cHg7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVgoNTAlKTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAucGFja2FnZS1mZWF0dXJlZCAubGFiZWwtY29ybmVyIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhY2thZ2UgLSBTZXBhcmF0b3IgbGluZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFja2FnZS10aXRsZSArIC5wYWNrYWdlLWNvbnRlbnQsXG4ucGFja2FnZS1wcmljZSArIC5wYWNrYWdlLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYWNrYWdlIC0gU2l6ZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFja2FnZS1zbSB7XG4gIHBhZGRpbmc6IHZhcigtLXBhY2thZ2Utc20tcGFkZGluZyk7IH1cbiAgLnBhY2thZ2Utc20gPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYWNrYWdlLXNtIC5wYWNrYWdlLXNpZGUtbGVmdCA+ICo6bm90KC5sYWJlbC1jb3JuZXIpICsgKixcbiAgLnBhY2thZ2Utc20gPiAqOm5vdCgubGFiZWwtY29ybmVyKSArICoge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2Utc20tZWxlbWVudC1zcGFjaW5nKTsgfVxuICAucGFja2FnZS1zbSAucGFja2FnZS1zaWRlLWxlZnQgPiAqICsgKixcbiAgLnBhY2thZ2Utc20gLnBhY2thZ2UtdGl0bGUsXG4gIC5wYWNrYWdlLXNtIC5wYWNrYWdlLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcGFja2FnZS1zbS10aXRsZS1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wYWNrYWdlLXNtLXRpdGxlLWZvbnQtd2VpZ2h0KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tcGFja2FnZS1zbS10aXRsZS1saW5lLWhlaWdodCk7IH1cbiAgLnBhY2thZ2Utc20gLnBhY2thZ2Utc3RhcnRpbmctZnJvbSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpOyB9XG4gIC5wYWNrYWdlLXNtIC5wYWNrYWdlLXNldHVwLWZlZSxcbiAgLnBhY2thZ2Utc20gLnBhY2thZ2UtcXR5LFxuICAucGFja2FnZS1zbSAucGFja2FnZS1iaWxsaW5nLWN5Y2xlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTsgfVxuICAucGFja2FnZS1zbSAucGFja2FnZS1mZWF0dXJlcyxcbiAgLnBhY2thZ2Utc20gLnBhY2thZ2UtZGVzYyxcbiAgLnBhY2thZ2Utc20gLnBhY2thZ2UtY29udGVudCA+IHAge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcGFja2FnZS1kZXNjLXNtLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXBhY2thZ2UtZGVzYy1zbS1saW5lLWhlaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXBhY2thZ2UtZGVzYy1zbS1mb250LXdlaWdodCk7IH1cbiAgLnBhY2thZ2Utc20gLnBhY2thZ2UtdGl0bGUgKyAucGFja2FnZS1jb250ZW50LFxuICAucGFja2FnZS1zbSAucGFja2FnZS1wcmljZSArIC5wYWNrYWdlLWNvbnRlbnQsXG4gIC5wYWNrYWdlLXNtIC5wYWNrYWdlLXByaWNlICsgLnBhY2thZ2UtZmVhdHVyZXMge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2Utc20tZWxlbWVudC1zcGFjaW5nKTsgfVxuICAucGFja2FnZS1zbSAucGFja2FnZS1hY3Rpb25zLFxuICAucGFja2FnZS1zbSAucGFja2FnZS1mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWNrYWdlLXNtLWVsZW1lbnQtc3BhY2luZyk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYWNrYWdlIC0gTGF5b3V0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYWNrYWdlLWxlZnQgLnBhY2thZ2UtY29udGVudCBwOmFmdGVyLCAucGFja2FnZS1hZGRvbnMgLnBhY2thZ2UtY29udGVudCBwOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGFja2FnZS1sZWZ0IC5wYWNrYWdlLWZlYXR1cmVzOmFmdGVyLCAucGFja2FnZS1hZGRvbnMgLnBhY2thZ2UtZmVhdHVyZXM6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wYWNrYWdlLWFkZG9ucy1uYXJyb3cgLnBhY2thZ2UtZmVhdHVyZXMgPiBsaSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFja2FnZSAtIExlZnQgQWxpZ25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhY2thZ2UtbGVmdCxcbi5wYWNrYWdlLWxlZnQgLnBhY2thZ2UtY29udGVudCxcbi5wYWNrYWdlLWxlZnQgLnBhY2thZ2UtZmVhdHVyZXMsXG4ucGFja2FnZS1sZWZ0IC5wYWNrYWdlLWFjdGlvbnMge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5wYWNrYWdlLWxlZnQgLnBhY2thZ2UtcHJpY2UgLnByaWNlIHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAucGFja2FnZS1sZWZ0IC5wYWNrYWdlLXByaWNlIC5wcmljZSArIC5wYWNrYWdlLWFjdGlvbnMge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5wYWNrYWdlLWxlZnQgLnBhY2thZ2UtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAucGFja2FnZS1sZWZ0IC5wYWNrYWdlLWZvb3RlciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAgIC5wYWNrYWdlLWxlZnQgLnBhY2thZ2UtZm9vdGVyIC5wYWNrYWdlLWFjdGlvbnMge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KSAhaW1wb3J0YW50OyB9IH1cbiAgLnBhY2thZ2UtbGVmdCAucGFja2FnZS1mb290ZXIgLnBhY2thZ2UtcHJpY2Uge1xuICAgIGZsZXg6IDE7IH1cblxuLnBhY2thZ2UtbGVmdCAucGFja2FnZS1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDsgfVxuICAucGFja2FnZS1sZWZ0IC5wYWNrYWdlLWFjdGlvbnMgLmJ0biB7XG4gICAgbWluLXdpZHRoOiAwOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFja2FnZSAtIEhvcml6b250YWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1kaXZpZGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGFja2FnZS1ob3Jpem9udGFsIC5wcmljZS1kaXNjb3VudENlbnRlciAucHJpY2UtYW1vdW50IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFja2FnZS1ob3Jpem9udGFsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1oZWFkZXI6aGFzKC5ncmFwaGljLWl0ZW0pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpOyB9XG4gICAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWhlYWRlcjpoYXMoLmdyYXBoaWMtaXRlbSkgLmdyYXBoaWMtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgIC5wYWNrYWdlLWhvcml6b250YWwgLnBhY2thZ2UtaGVhZGVyIC5wYWNrYWdlLXByaWNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWhlYWRlciArIC5wYWNrYWdlLWJvZHkge1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1zaWRlLWxlZnQge1xuICAgICAgZmxleDogMTtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5wYWNrYWdlLWhvcml6b250YWwgLnBhY2thZ2UtYm9keTphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWNvbnRlbnQge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWNvbnRlbnQgcDpub3QoOmVtcHR5KTphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWFjdGlvbnMsXG4gICAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1mb290ZXIge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gICAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWFjdGlvbnMgLnBhY2thZ2UtcHJpY2UsXG4gICAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWZvb3RlciAucGFja2FnZS1wcmljZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWFjdGlvbnMgZm9ybSxcbiAgICAgIC5wYWNrYWdlLWhvcml6b250YWwgLnBhY2thZ2UtYWN0aW9ucyAuYnRuLFxuICAgICAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1mb290ZXIgZm9ybSxcbiAgICAgIC5wYWNrYWdlLWhvcml6b250YWwgLnBhY2thZ2UtZm9vdGVyIC5idG4ge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOyB9XG4gICAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1mZWF0dXJlcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5wYWNrYWdlLWhvcml6b250YWwgLnBhY2thZ2UtZmVhdHVyZXM6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAucGFja2FnZS1ob3Jpem9udGFsIC5wYWNrYWdlLWZlYXR1cmVzID4gbGkge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtaW4td2lkdGg6IDUwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgcGFkZGluZzogNHB4IDA7IH1cbiAgICAgICAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1mZWF0dXJlcyA+IGxpICsgbGkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1wcmljZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5wYWNrYWdlLWhvcml6b250YWwgLnBhY2thZ2UtcHJpY2UgLnByaWNlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC5wYWNrYWdlLWhvcml6b250YWwtaW5saW5lIC5wYWNrYWdlLWJvZHkge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnBhY2thZ2UtaG9yaXpvbnRhbC1pbmxpbmUgLnBhY2thZ2UtY29udGVudCxcbiAgLnBhY2thZ2UtaG9yaXpvbnRhbC1pbmxpbmUgLnBhY2thZ2UtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucGFja2FnZS1ob3Jpem9udGFsLWlubGluZSAucGFja2FnZS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5wYWNrYWdlLWhvcml6b250YWwtaW5saW5lIC5wYWNrYWdlLWNvbnRlbnQgPiAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAucGFja2FnZS1ob3Jpem9udGFsLWlubGluZSAucGFja2FnZS1jb250ZW50ID4gKiArICoge1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFja2FnZS1lbGVtZW50LXNwYWNpbmcpOyB9XG4gIC5wYWNrYWdlLWhvcml6b250YWwtaW5saW5lIC5wYWNrYWdlLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIC5wYWNrYWdlLWhvcml6b250YWwtaW5saW5lIC5wYWNrYWdlLWZvb3RlciAucHJpY2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWNrYWdlLWVsZW1lbnQtc3BhY2luZyk7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1wcmljZSAucHJpY2UtcmlnaHQge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnBhY2thZ2UtaG9yaXpvbnRhbCAucGFja2FnZS1wcmljZSAucHJpY2Utc2F2aW5ncyB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4ucHJlbWl1bS1kaXZpZGVyIHtcbiAgbWF4LXdpZHRoOiAyMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cbiAgLnByZW1pdW0tZGl2aWRlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgxNiwgOTgsIDI1NCwgMCkgMCUsIHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcikgMjAuMzElLCB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpIDgwLjczJSwgcmdiYSgxNiwgOTgsIDI1NCwgMCkgMTAwJSk7IH1cbiAgLnByZW1pdW0tZGl2aWRlcjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDE2LCA5OCwgMjU0LCAwKSAwJSwgdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKSAyMC4zMSUsIHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcikgODAuNzMlLCByZ2JhKDE2LCA5OCwgMjU0LCAwKSAxMDAlKTsgfVxuICAucHJlbWl1bS1kaXZpZGVyID4gc3BhbiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwYWRkaW5nOiA0cHggdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuXG4ucGFnZS1hZGRvbnMgLnBhY2thZ2UtcHJpY2UgLnByaWNlLWlubGluZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyNDBweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWFkZG9ucyAucGFja2FnZS1mb290ZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAucGFnZS1hZGRvbnMgLnBhY2thZ2UtZm9vdGVyIC5wcmljZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfSB9XG5cbi5wYWdlLWhvbWVwYWdlIC5wYWNrYWdlLWljb24gPiBzdmcsIC5wYWdlLWhvbWVwYWdlIC5wYWNrYWdlLWljb24gPiBpbWcge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5wYWdlLWhvbWVwYWdlIC5wYWNrYWdlLWljb24gPiBzdmcsIC5wYWdlLWhvbWVwYWdlIC5wYWNrYWdlLWljb24gPiBpbWcge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZvcm0gLSBTd2l0Y2hcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnN3aXRjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAyNHB4O1xuICB3aWR0aDogNDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiBTd2l0Y2g6IENoZWNrYm94ICovXG4gIC8qIFN3aXRjaDogSGFuZGxlICovXG4gIC8qIFN3aXRjaDogQ29udGFpbmVyICovIH1cbiAgLnN3aXRjaCArIC5mb3JtLXRleHQge1xuICAgIG1hcmdpbi1sZWZ0OiBzcGFjaW5nKDJ4KTsgfVxuICAuc3dpdGNoX19jaGVja2JveCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgICAuc3dpdGNoX19jaGVja2JveCArIC5zd2l0Y2hfX2NvbnRhaW5lciAuc3dpdGNoX19oYW5kbGUge1xuICAgICAgcmlnaHQ6IDE4cHg7IH1cbiAgICAuc3dpdGNoX19jaGVja2JveDpjaGVja2VkICsgLnN3aXRjaF9fY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpOyB9XG4gICAgICAuc3dpdGNoX19jaGVja2JveDpjaGVja2VkICsgLnN3aXRjaF9fY29udGFpbmVyIC5zd2l0Y2hfX2hhbmRsZSB7XG4gICAgICAgIHJpZ2h0OiAycHg7IH1cbiAgICAuc3dpdGNoX19jaGVja2JveC0tZG9tYWluIC5sb2FkZXIge1xuICAgICAgdHJhbnNpdGlvbjogMnM7IH1cbiAgICAuc3dpdGNoX19jaGVja2JveC0tZG9tYWluLmlzLWxvYWRpbmcgKyAuc3dpdGNoX19jb250YWluZXIge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLnN3aXRjaF9fY2hlY2tib3gtLWRvbWFpbi5pcy1sb2FkaW5nICsgLnN3aXRjaF9fY29udGFpbmVyIC5sb2FkZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcmlnaHQ6IDhweDtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5zd2l0Y2hfX2NoZWNrYm94LS1kb21haW4uaXMtbG9hZGluZyArIC5zd2l0Y2hfX2NvbnRhaW5lcjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAuc3dpdGNoX19jaGVja2JveC0tZG9tYWluOmNoZWNrZWQuaXMtbG9hZGluZyArIC5zd2l0Y2hfX2NvbnRhaW5lciAubG9hZGVyIHtcbiAgICAgIGxlZnQ6IDdweDtcbiAgICAgIHJpZ2h0OiB1bnNldDsgfVxuICAgICAgLnN3aXRjaF9fY2hlY2tib3gtLWRvbWFpbjpjaGVja2VkLmlzLWxvYWRpbmcgKyAuc3dpdGNoX19jb250YWluZXIgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLnN3aXRjaF9faGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAycHg7XG4gICAgcmlnaHQ6IDJweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAuc3dpdGNoX19jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICAvKlN3aXRjaCBsb2FkZXIqLyB9XG4gICAgLnN3aXRjaF9fY29udGFpbmVyIC5sb2FkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgei1pbmRleDogMjsgfVxuICAgICAgLnN3aXRjaF9fY29udGFpbmVyIC5sb2FkZXIgLnNwaW5uZXItc20ge1xuICAgICAgICBoZWlnaHQ6IDE2cHg7IH1cblxudHIucHJldmVudC1jbGljayA+IHRkIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uc3dpdGNoW2RhdGEtYXV0by1yZW5ldy1zd2l0Y2hdLmlzLWxvYWRpbmcge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuc3dpdGNoW2RhdGEtYXV0by1yZW5ldy1zd2l0Y2hdLmlzLWxvYWRpbmc6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgei1pbmRleDogMTA7IH1cblxuLnN3aXRjaC0tdGV4dCB7XG4gIHdpZHRoOiA1MHB4OyB9XG4gIC5zd2l0Y2gtLXRleHQgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXIgLnN3aXRjaF9faGFuZGxlIHtcbiAgICByaWdodDogMjhweDsgfVxuICAuc3dpdGNoLS10ZXh0IC5zd2l0Y2hfX2NoZWNrYm94ICsgLnN3aXRjaF9fY29udGFpbmVyOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAycHg7XG4gICAgYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcmlnaHQ6IDZweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29udGVudDogXCJvZmZcIjtcbiAgICBjb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTIpO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuc3dpdGNoLS10ZXh0IC5zd2l0Y2hfX2NoZWNrYm94OmNoZWNrZWQgKyAuc3dpdGNoX19jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpOyB9XG4gICAgLnN3aXRjaC0tdGV4dCAuc3dpdGNoX19jaGVja2JveDpjaGVja2VkICsgLnN3aXRjaF9fY29udGFpbmVyOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgY29udGVudDogXCJvblwiO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGVmdDogOHB4OyB9XG4gICAgLnN3aXRjaC0tdGV4dCAuc3dpdGNoX19jaGVja2JveDpjaGVja2VkICsgLnN3aXRjaF9fY29udGFpbmVyIC5zd2l0Y2hfX2hhbmRsZSB7XG4gICAgICByaWdodDogMnB4OyB9XG5cbi5zd2l0Y2gtLWRhcmstbW9kZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnN3aXRjaC0tZGFyay1tb2RlIC5zd2l0Y2hfX2NoZWNrYm94ICsgLnN3aXRjaF9fY29udGFpbmVyIC5zd2l0Y2hfX2hhbmRsZTpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgei1pbmRleDogMztcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9saWdodC1tb2RlLWljb24uc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLnN3aXRjaC0tZGFyay1tb2RlIC5zd2l0Y2hfX2NoZWNrYm94ICsgLnN3aXRjaF9fY29udGFpbmVyIC5zd2l0Y2hfX2hhbmRsZSBzdmcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnN3aXRjaC0tZGFyay1tb2RlIC5zd2l0Y2hfX2NoZWNrYm94OmNoZWNrZWQgKyAuc3dpdGNoX19jb250YWluZXIgLnN3aXRjaF9faGFuZGxlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnN3aXRjaC0tZGFyay1tb2RlIC5zd2l0Y2hfX2NoZWNrYm94OmNoZWNrZWQgKyAuc3dpdGNoX19jb250YWluZXIgLnN3aXRjaF9faGFuZGxlIHN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uc3dpdGNoLS1zbSB7XG4gIGhlaWdodDogMThweDtcbiAgd2lkdGg6IDMycHg7IH1cbiAgLnN3aXRjaC0tc20gLnN3aXRjaF9faGFuZGxlIHtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7IH1cbiAgLnN3aXRjaC0tc20gLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXIgLnN3aXRjaF9faGFuZGxlIHtcbiAgICByaWdodDogMTZweDsgfVxuICAuc3dpdGNoLS1zbSAuc3dpdGNoX19jaGVja2JveDpjaGVja2VkICsgLnN3aXRjaF9fY29udGFpbmVyIC5zd2l0Y2hfX2hhbmRsZSB7XG4gICAgcmlnaHQ6IDJweDsgfVxuXG4uc3dpdGNoLS1sZyB7XG4gIGhlaWdodDogMjhweDtcbiAgd2lkdGg6IDYwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cbiAgLnN3aXRjaC0tbGcgLnN3aXRjaF9faGFuZGxlIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7IH1cbiAgLnN3aXRjaC0tbGcgLnN3aXRjaF9fY29udGFpbmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4OyB9XG4gIC5zd2l0Y2gtLWxnLnN3aXRjaC0tdGV4dCAuc3dpdGNoX19jaGVja2JveCArIC5zd2l0Y2hfX2NvbnRhaW5lciAuc3dpdGNoX19oYW5kbGUge1xuICAgIHJpZ2h0OiAzNHB4OyB9XG4gIC5zd2l0Y2gtLWxnLnN3aXRjaC0tdGV4dCAuc3dpdGNoX19jaGVja2JveDpjaGVja2VkICsgLnN3aXRjaF9fY29udGFpbmVyOmFmdGVyIHtcbiAgICByaWdodDogMzZweCAhaW1wb3J0YW50OyB9XG4gIC5zd2l0Y2gtLWxnLnN3aXRjaC0tdGV4dCAuc3dpdGNoX19jaGVja2JveDpjaGVja2VkICsgLnN3aXRjaF9fY29udGFpbmVyIC5zd2l0Y2hfX2hhbmRsZSB7XG4gICAgcmlnaHQ6IDJweDsgfVxuICAuc3dpdGNoLS1sZy5zd2l0Y2gtLXRleHQgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXI6YWZ0ZXIge1xuICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuXG4uc3dpdGNoLS1wcmltYXJ5IC5zd2l0Y2hfX2hhbmRsZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpOyB9XG5cbi5zd2l0Y2gtLXByaW1hcnkgLnN3aXRjaF9fY2hlY2tib3g6Y2hlY2tlZCArIC5zd2l0Y2hfX2NvbnRhaW5lciAuc3dpdGNoX19oYW5kbGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5zd2l0Y2gtLXByaW1hcnkgLnN3aXRjaF9fY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1saWdodGVyLTQpOyB9XG5cbmh0bWwubGFnb20tZGFyay1tb2RlIC5wYWdlLWxhZ29tLWNtcyAuc3dpdGNoLS1kYXJrLW1vZGUgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICBodG1sLmxhZ29tLWRhcmstbW9kZSAucGFnZS1sYWdvbS1jbXMgLnN3aXRjaC0tZGFyay1tb2RlIC5zd2l0Y2hfX2NoZWNrYm94ICsgLnN3aXRjaF9fY29udGFpbmVyOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAycHg7XG4gICAgYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgei1pbmRleDogMTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbnRlbnQ6IFwib25cIjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGVmdDogOHB4OyB9XG4gIGh0bWwubGFnb20tZGFyay1tb2RlIC5wYWdlLWxhZ29tLWNtcyAuc3dpdGNoLS1kYXJrLW1vZGUgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXIgLnN3aXRjaF9faGFuZGxlIHtcbiAgICByaWdodDogMnB4OyB9XG4gIGh0bWwubGFnb20tZGFyay1tb2RlIC5wYWdlLWxhZ29tLWNtcyAuc3dpdGNoLS1kYXJrLW1vZGUgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXIgLnN3aXRjaF9faGFuZGxlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgaHRtbC5sYWdvbS1kYXJrLW1vZGUgLnBhZ2UtbGFnb20tY21zIC5zd2l0Y2gtLWRhcmstbW9kZSAuc3dpdGNoX19jaGVja2JveCArIC5zd2l0Y2hfX2NvbnRhaW5lciAuc3dpdGNoX19oYW5kbGUgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbmh0bWw6bm90KC5sYWdvbS1kYXJrLW1vZGUpIC5wYWdlLWxhZ29tLWNtcyAuc3dpdGNoLS1kYXJrLW1vZGUgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cbiAgaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLnBhZ2UtbGFnb20tY21zIC5zd2l0Y2gtLWRhcmstbW9kZSAuc3dpdGNoX19jaGVja2JveCArIC5zd2l0Y2hfX2NvbnRhaW5lciAuc3dpdGNoX19oYW5kbGUge1xuICAgIHJpZ2h0OiAyOHB4OyB9XG4gIGh0bWw6bm90KC5sYWdvbS1kYXJrLW1vZGUpIC5wYWdlLWxhZ29tLWNtcyAuc3dpdGNoLS1kYXJrLW1vZGUgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXI6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDJweDtcbiAgICBib3R0b206IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICByaWdodDogNnB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb250ZW50OiBcIm9mZlwiO1xuICAgIGNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItMik7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxlZnQ6IHVuc2V0OyB9XG4gIGh0bWw6bm90KC5sYWdvbS1kYXJrLW1vZGUpIC5wYWdlLWxhZ29tLWNtcyAuc3dpdGNoLS1kYXJrLW1vZGUgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXIgLnN3aXRjaF9faGFuZGxlOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB6LWluZGV4OiAzO1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2xpZ2h0LW1vZGUtaWNvbi5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBodG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFnZS1sYWdvbS1jbXMgLnN3aXRjaC0tZGFyay1tb2RlIC5zd2l0Y2hfX2NoZWNrYm94ICsgLnN3aXRjaF9fY29udGFpbmVyIC5zd2l0Y2hfX2hhbmRsZSBzdmcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvcm0tdGV4dCArIC5zd2l0Y2gge1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZvcm0gLSBCb29zdHJhcCBTd2l0Y2hcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmJvb3RzdHJhcC1zd2l0Y2gge1xuICBtYXJnaW4tdG9wOiAxMXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMjhweDtcbiAgd2lkdGg6IDYwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5ib290c3RyYXAtc3dpdGNoIGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuICAuYm9vdHN0cmFwLXN3aXRjaCBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmJvb3RzdHJhcC1zd2l0Y2gtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAuYm9vdHN0cmFwLXN3aXRjaC1oYW5kbGUtb24sIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYge1xuICAgIHJpZ2h0OiA4cHg7IH1cbiAgLmJvb3RzdHJhcC1zd2l0Y2gtaGFuZGxlLW9uIHtcbiAgICBsZWZ0OiA4cHg7IH1cbiAgLmJvb3RzdHJhcC1zd2l0Y2gtbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogOTk5O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAuYm9vdHN0cmFwLXN3aXRjaC1sYWJlbDphZnRlciB7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgbGVmdDogMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICAuYm9vdHN0cmFwLXN3aXRjaC1vZmYgLmJvb3RzdHJhcC1zd2l0Y2gtaGFuZGxlLW9uIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5ib290c3RyYXAtc3dpdGNoLW9uIC5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJvb3RzdHJhcC1zd2l0Y2gtb24gLmJvb3RzdHJhcC1zd2l0Y2gtbGFiZWw6YWZ0ZXIge1xuICAgIGxlZnQ6IDM0cHg7IH1cbiAgLmJvb3RzdHJhcC1zd2l0Y2gtb24gLmJvb3RzdHJhcC1zd2l0Y2gtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBTVkcgSWNvbnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnN2Zy1pY29uLXN0cm9rZSB7XG4gIHN0cm9rZS13aWR0aDogMnB4O1xuICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gIHN0cm9rZS1saW5lam9pbjogcm91bmQ7IH1cblxuLnN2Zy1pY29uLW91dGxpbmUtcCwgLnN2Zy1pY29uLW91dGxpbmUtbCwgLnN2Zy1pY29uLW91dGxpbmUtcywgLnN2Zy1pY29uLW91dGxpbmUtaSB7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZS13aWR0aDogMnB4O1xuICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gIHN0cm9rZS1saW5lam9pbjogcm91bmQ7IH1cblxuLnN2Zy1pY29uLW91dGxpbmUtcCB7XG4gIHN0cm9rZTogdmFyKC0tc3ZnLWljb24tY29sb3ItYmFzZSk7IH1cblxuLnN2Zy1pY29uLW91dGxpbmUtbCB7XG4gIHN0cm9rZTogdmFyKC0tc3ZnLWljb24tY29sb3ItbGlnaHRlcik7IH1cblxuLnN2Zy1pY29uLW91dGxpbmUtcyB7XG4gIHN0cm9rZTogdmFyKC0tc3ZnLWljb24tY29sb3Itc2Vjb25kYXJ5KTsgfVxuXG4uc3ZnLWljb24tb3V0bGluZS1pIHtcbiAgc3Ryb2tlOiB2YXIoLS1zdmctaWNvbi1jb2xvci1pY29uKTsgfVxuXG4uc3ZnLWljb24taSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1pY29uLWNvbG9yLWljb24pOyB9XG4gIC5zdmctaWNvbi1pLnN2Zy1pY29uLXN0cm9rZSB7XG4gICAgc3Ryb2tlOiB2YXIoLS1zdmctaWNvbi1jb2xvci1pY29uKTsgfVxuXG4uc3ZnLWljb24tcHJpbWUge1xuICBmaWxsOiB2YXIoLS1zdmctaWNvbi1jb2xvci1iYXNlKTsgfVxuICAuc3ZnLWljb24tcHJpbWUuc3ZnLWljb24tc3Ryb2tlIHtcbiAgICBzdHJva2U6IHZhcigtLXN2Zy1pY29uLWNvbG9yLWJhc2UpOyB9XG5cbi5zdmctaWNvbi1wcmltZS1sIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWljb24tY29sb3ItbGlnaHRlcik7IH1cbiAgLnN2Zy1pY29uLXByaW1lLWwuc3ZnLWljb24tc3Ryb2tlIHtcbiAgICBzdHJva2U6IHZhcigtLXN2Zy1pY29uLWNvbG9yLWxpZ2h0ZXIpOyB9XG5cbi5zZWN0aW9uLXNlY29uZGFyeSAuc3ZnLWljb24tb3V0bGluZS1zLFxuLmFwcC1uYXYtc2Vjb25kYXJ5IC5zdmctaWNvbi1vdXRsaW5lLXMsXG4ubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAuc3ZnLWljb24tb3V0bGluZS1zLFxuLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSAuc3ZnLWljb24tb3V0bGluZS1zLFxuLnN2Zy1pY29uLW9uLWRhcmsgLnN2Zy1pY29uLW91dGxpbmUtcyB7XG4gIHN0cm9rZTogdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci1zZWNvbmRhcnkpOyB9XG5cbi5zZWN0aW9uLXNlY29uZGFyeSAucGFja2FnZSAuc3ZnLWljb24tb3V0bGluZS1zLFxuLmFwcC1uYXYtc2Vjb25kYXJ5IC5wYWNrYWdlIC5zdmctaWNvbi1vdXRsaW5lLXMsXG4ubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSAucGFja2FnZSAuc3ZnLWljb24tb3V0bGluZS1zLFxuLm1haW4tZm9vdGVyLWV4dGVuZGVkLXNlY29uZGFyeSAucGFja2FnZSAuc3ZnLWljb24tb3V0bGluZS1zLFxuLnN2Zy1pY29uLW9uLWRhcmsgLnBhY2thZ2UgLnN2Zy1pY29uLW91dGxpbmUtcyB7XG4gIHN0cm9rZTogdmFyKC0tc3ZnLWljb24tY29sb3Itc2Vjb25kYXJ5KTsgfVxuXG46cm9vdCAuc2VjdGlvbi1wcmltYXJ5IC5zdmctaWNvbi1vbi1kYXJrLFxuOnJvb3QgLnNlY3Rpb24tc2Vjb25kYXJ5IC5zdmctaWNvbi1vbi1kYXJrLFxuOnJvb3QgLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkgLnN2Zy1pY29uLW9uLWRhcmssXG46cm9vdCAubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5IC5zdmctaWNvbi1vbi1kYXJrIHtcbiAgLS1zdmctaWNvbi1jb2xvci0xOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0xKTtcbiAgLS1zdmctaWNvbi1jb2xvci0yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0yKTtcbiAgLS1zdmctaWNvbi1jb2xvci0zOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0zKTtcbiAgLS1zdmctaWNvbi1jb2xvci00OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci00KTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgOnJvb3QgLmxhZ29tOm5vdCgubGFnb20tbGF5b3V0LWxlZnQpOm5vdCgubGFnb20tbGF5b3V0LWxlZnQtd2lkZSkgLmFwcC1uYXYtcHJpbWFyeSAubWVudS5tZW51LXByaW1hcnkgPiBsaSA+IGEgLnN2Zy1pY29uLW9uLWRhcmssXG4gIDpyb290IC5sYWdvbTpub3QoLmxhZ29tLWxheW91dC1sZWZ0KTpub3QoLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUpIC5hcHAtbmF2LXNlY29uZGFyeSAubWVudS5tZW51LXByaW1hcnkgPiBsaSA+IGEgLnN2Zy1pY29uLW9uLWRhcmsge1xuICAgIC0tc3ZnLWljb24tY29sb3ItMTogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMSk7XG4gICAgLS1zdmctaWNvbi1jb2xvci0yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0yKTtcbiAgICAtLXN2Zy1pY29uLWNvbG9yLTM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTMpO1xuICAgIC0tc3ZnLWljb24tY29sb3ItNDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItNCk7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgOnJvb3QgLmxhZ29tIC5hcHAtbmF2LXByaW1hcnkgLm1lbnUubWVudS1wcmltYXJ5ID4gbGkgPiBhIC5zdmctaWNvbi1vbi1kYXJrLFxuICA6cm9vdCAubGFnb20gLmFwcC1uYXYtc2Vjb25kYXJ5IC5tZW51Lm1lbnUtcHJpbWFyeSA+IGxpID4gYSAuc3ZnLWljb24tb24tZGFyayxcbiAgOnJvb3QgLmxhZ29tIC5hcHAtbmF2LXByaW1hcnkgLm1lbnUubWVudS1wcmltYXJ5ID4gbGkuZHJvcGRvd24gPiB1bC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIC5zdmctaWNvbi1vbi1kYXJrLFxuICA6cm9vdCAubGFnb20gLmFwcC1uYXYtc2Vjb25kYXJ5IC5tZW51Lm1lbnUtcHJpbWFyeSA+IGxpLmRyb3Bkb3duID4gdWwuZHJvcGRvd24tbWVudSA+IGxpID4gYSAuc3ZnLWljb24tb24tZGFyayB7XG4gICAgLS1zdmctaWNvbi1jb2xvci0xOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0xKTtcbiAgICAtLXN2Zy1pY29uLWNvbG9yLTI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTIpO1xuICAgIC0tc3ZnLWljb24tY29sb3ItMzogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMyk7XG4gICAgLS1zdmctaWNvbi1jb2xvci00OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci00KTsgfSB9XG5cbjpyb290IC5zdmctaWNvbi1vbi1kYXJrOm5vdChbY2xhc3MqPSdvbkRhcmsnXSkge1xuICAtLXN2Zy1pY29uLWNvbG9yLTE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTEpO1xuICAtLXN2Zy1pY29uLWNvbG9yLTI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTIpO1xuICAtLXN2Zy1pY29uLWNvbG9yLTM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTMpO1xuICAtLXN2Zy1pY29uLWNvbG9yLTQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTQpOyB9XG5cbjpyb290IC5sYWdvbS5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUtcHJpbWFyeSA+IGxpID4gYSAuc3ZnLWljb24tb24tZGFyayxcbjpyb290IC5sYWdvbS5sYWdvbS1sYXlvdXQtbGVmdCAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudS1wcmltYXJ5ID4gbGkgPiBhIC5zdmctaWNvbi1vbi1kYXJrLFxuOnJvb3QgLmxhZ29tLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51LXByaW1hcnkgPiBsaSA+IGEgLnN2Zy1pY29uLW9uLWRhcmssXG46cm9vdCAubGFnb20ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudS1wcmltYXJ5ID4gbGkgPiBhIC5zdmctaWNvbi1vbi1kYXJrIHtcbiAgLS1zdmctaWNvbi1jb2xvci0xOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0xKTtcbiAgLS1zdmctaWNvbi1jb2xvci0yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0yKTtcbiAgLS1zdmctaWNvbi1jb2xvci0zOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0zKTtcbiAgLS1zdmctaWNvbi1jb2xvci00OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci00KTsgfVxuXG46cm9vdCAubGFnb20ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUtcHJpbWFyeSA+IGxpID4gdWwgbGkgYSAuc3ZnLWljb24tb24tZGFyaywgOnJvb3QgLmxhZ29tLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtcHJpbWFyeSAuYXBwLW5hdi1tZW51IC5tZW51LXByaW1hcnkgPiBsaSA+IHVsIGxpIC5uYXYtaGVhZGVyLXRleHQgLnN2Zy1pY29uLW9uLWRhcmssXG46cm9vdCAubGFnb20ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1wcmltYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUtcHJpbWFyeSA+IGxpID4gLmRyb3Bkb3duLW1lbnUgbGkgYSAuc3ZnLWljb24tb24tZGFyayxcbjpyb290IC5sYWdvbS5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXByaW1hcnkgLmFwcC1uYXYtbWVudSAubWVudS1wcmltYXJ5ID4gbGkgPiAuZHJvcGRvd24tbWVudSBsaSAubmF2LWhlYWRlci10ZXh0IC5zdmctaWNvbi1vbi1kYXJrLFxuOnJvb3QgLmxhZ29tLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUtcHJpbWFyeSA+IGxpID4gdWwgbGkgYSAuc3ZnLWljb24tb24tZGFyayxcbjpyb290IC5sYWdvbS5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5hcHAtbmF2LXNlY29uZGFyeSAuYXBwLW5hdi1tZW51IC5tZW51LXByaW1hcnkgPiBsaSA+IHVsIGxpIC5uYXYtaGVhZGVyLXRleHQgLnN2Zy1pY29uLW9uLWRhcmssXG46cm9vdCAubGFnb20ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuYXBwLW5hdi1zZWNvbmRhcnkgLmFwcC1uYXYtbWVudSAubWVudS1wcmltYXJ5ID4gbGkgPiAuZHJvcGRvd24tbWVudSBsaSBhIC5zdmctaWNvbi1vbi1kYXJrLFxuOnJvb3QgLmxhZ29tLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgLmFwcC1uYXYtc2Vjb25kYXJ5IC5hcHAtbmF2LW1lbnUgLm1lbnUtcHJpbWFyeSA+IGxpID4gLmRyb3Bkb3duLW1lbnUgbGkgLm5hdi1oZWFkZXItdGV4dCAuc3ZnLWljb24tb24tZGFyayB7XG4gIC0tc3ZnLWljb24tY29sb3ItMTogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMSk7XG4gIC0tc3ZnLWljb24tY29sb3ItMjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMik7XG4gIC0tc3ZnLWljb24tY29sb3ItMzogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMyk7XG4gIC0tc3ZnLWljb24tY29sb3ItNDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItNCk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gU1ZHIEdyYXBoaWNzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5zdmctZ3JhcGhpYy1zdHJva2UtdywgLnN2Zy1ncmFwaGljLXN0cm9rZS1wLCAuc3ZnLWdyYXBoaWMtc3Ryb2tlLWYsIC5zdmctZ3JhcGhpYy1zdHJva2UtZi0yLCAuc3ZnLWdyYXBoaWMtc3Ryb2tlLTIsIC5zdmctZ3JhcGhpYy1zdHJva2UtNCB7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZS13aWR0aDogMXB4O1xuICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gIHN0cm9rZS1saW5lam9pbjogcm91bmQ7IH1cblxuLnN2Zy1ncmFwaGljLXN0cm9rZS13IHtcbiAgc3Ryb2tlOiB2YXIoLS1zdmctZ3JhcGhpYy1zdHJva2Utd2hpdGUpOyB9XG5cbi5zdmctZ3JhcGhpYy1zdHJva2UtcCB7XG4gIHN0cm9rZTogdmFyKC0tc3ZnLWdyYXBoaWMtc3Ryb2tlLXByaW1hcnkpOyB9XG5cbi5zdmctZ3JhcGhpYy1zdHJva2UtZiwgLnN2Zy1ncmFwaGljLXN0cm9rZS1ncmF5IHtcbiAgc3Ryb2tlOiB2YXIoLS1zdmctZ3JhcGhpYy1zdHJva2UtZmFkZWQpOyB9XG5cbi5zdmctZ3JhcGhpYy1zdHJva2UtZi0yIHtcbiAgc3Ryb2tlOiB2YXIoLS1zdmctZ3JhcGhpYy1zdHJva2UtZmFkZWQtMik7IH1cblxuLnN2Zy1ncmFwaGljLXN0cm9rZS0yIHtcbiAgc3Ryb2tlLXdpZHRoOiAycHg7IH1cblxuLnN2Zy1ncmFwaGljLXN0cm9rZS00IHtcbiAgc3Ryb2tlLXdpZHRoOiA0cHg7IH1cblxuLnN2Zy1ncmFwaGljLXN0cm9rZS1kYXNoZWQge1xuICBzdHJva2UtZGFzaGFycmF5OiA0LDQ7IH1cblxuLnN2Zy1ncmFwaGljLWJvZHkge1xuICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1ib2R5KTsgfVxuXG4uc3ZnLWdyYXBoaWMtYnJvd3Nlci10b3Age1xuICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1icm93c2VyLXRvcCk7IH1cblxuLnN2Zy1ncmFwaGljLWJyb3dzZXItYWN0aW9ucyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWJyb3dzZXItYWN0aW9ucyk7IH1cblxuLnN2Zy1ncmFwaGljLWJyb3dzZXItc2VhcmNoIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWdyYXBoaWMtYmctYnJvd3Nlci1zZWFyY2gpOyB9XG5cbi5zdmctZ3JhcGhpYy1iYW5uZXIge1xuICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1iYW5uZXIpOyB9XG5cbi5zdmctZ3JhcGhpYy13aGl0ZSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLXdoaXRlKTsgfVxuXG4uc3ZnLWdyYXBoaWMtZmFkZWQge1xuICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1mYWRlZCk7IH1cblxuLnN2Zy1ncmFwaGljLWZhZGVkLTIge1xuICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1mYWRlZC0yKTsgfVxuXG4uc3ZnLWdyYXBoaWMtZmFkZWQtMyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWZhZGVkLTMpOyB9XG5cbi5zdmctZ3JhcGhpYy1ncmVlbiB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWdyZWVuKTsgfVxuXG4uc3ZnLWdyYXBoaWMtcmVkIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWdyYXBoaWMtYmctcmVkKTsgfVxuXG4uc3ZnLWdyYXBoaWMtcmVkLWRhcmtlciB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLXJlZC1kYXJrZXIpOyB9XG5cbi5zdmctZ3JhcGhpYy1wcmltYXJ5IHtcbiAgZmlsbDogdmFyKC0tc3ZnLWdyYXBoaWMtYmctcHJpbWFyeSk7IH1cbiAgLnN2Zy1ncmFwaGljLXByaW1hcnkuc3ZnLWdyYXBoaWMtc3Ryb2tlLCAuc3ZnLWdyYXBoaWMtcHJpbWFyeS5zdmctZ3JhcGhpYy1zdHJva2UtMiwgLnN2Zy1ncmFwaGljLXByaW1hcnkuc3ZnLWdyYXBoaWMtc3Ryb2tlLTQge1xuICAgIHN0cm9rZTogdmFyKC0tc3ZnLWdyYXBoaWMtYmctcHJpbWFyeSk7IH1cblxuLnN2Zy1ncmFwaGljLXNlY29uZGFyeSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLXNlY29uZGFyeSk7IH1cblxuLnN2Zy1ncmFwaGljLWZpbGwtbm9uZSB7XG4gIGZpbGw6IG5vbmU7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gU1ZHIElsbHVzdHJhdGlvbnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLyogU2hhcmVkIEVsZW1lbnRzICovXG4uc3ZnLXNjcmVlbi1ib3R0b20tZnJvbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLWJvdHRvbS1mcm9udCk7IH1cblxuLnN2Zy1zY3JlZW4tYm90dG9tLWJhY2sge1xuICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLWJvdHRvbS1iYWNrKTsgfVxuXG4uc3ZnLXNjcmVlbi1ib3R0b20tYnV0dG9uIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi1ib3R0b20tYnV0dG9uKTsgfVxuXG4uc3ZnLXNjcmVlbi10b3AtZnJvbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLXRvcC1mcm9udCk7IH1cblxuLnN2Zy1zY3JlZW4tdG9wLWJnIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi10b3AtYmcpOyB9XG5cbi5zdmctc2NyZWVuLXRvcC1iYWNrIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi10b3AtYmFjayk7IH1cblxuLnN2Zy1zY3JlZW4tdG9wLWxvZ28ge1xuICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLXRvcC1sb2dvKTsgfVxuICAuc3ZnLXNjcmVlbi10b3AtbG9nby1lbCB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi10b3AtbG9nby1lbCk7IH1cblxuLnN2Zy1zY3JlZW4tbGVnLWJhY2sge1xuICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLWxlZy1iYWNrKTsgfVxuXG4uc3ZnLXNjcmVlbi1sZWctZnJvbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLWxlZy1mcm9udCk7IH1cblxuLnN2Zy1zbWFydHBob25lLWJvcmRlciB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zbWFydHBob25lLWJvcmRlcik7IH1cblxuLnN2Zy1zbWFydHBob25lLWZyb250IHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNtYXJ0cGhvbmUtZnJvbnQpOyB9XG5cbi5zdmctc21hcnRwaG9uZS1zY3JlZW4ge1xuICBmaWxsOiB2YXIoLS1zdmctc21hcnRwaG9uZS1zY3JlZW4pOyB9XG5cbi5zdmctc21hcnRwaG9uZS1pY29uIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNtYXJ0cGhvbmUtaWNvbik7IH1cbiAgLnN2Zy1zbWFydHBob25lLWljb24tYmcge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zbWFydHBob25lLWljb24tYmcpOyB9XG5cbi5zdmctdGFibGV0LWJhY2sge1xuICBmaWxsOiB2YXIoLS1zdmctdGFibGV0LWJhY2spOyB9XG5cbi5zdmctdGFibGV0LWZyb250IHtcbiAgZmlsbDogdmFyKC0tc3ZnLXRhYmxldC1mcm9udCk7IH1cblxuLnN2Zy10YWJsZXQtc2NyZWVuIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXRhYmxldC1zY3JlZW4pOyB9XG5cbi5zdmctYnJvd3Nlci1ib2R5IHtcbiAgZmlsbDogdmFyKC0tc3ZnLWJyb3dzZXItYm9keSk7IH1cblxuLnN2Zy1icm93c2VyLXRvcCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1icm93c2VyLXRvcCk7IH1cbiAgLnN2Zy1icm93c2VyLXRvcC0xIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctYnJvd3Nlci10b3AtMSk7IH1cblxuLnN2Zy1icm93c2VyLXRleHQge1xuICBmaWxsOiB2YXIoLS1zdmctYnJvd3Nlci10ZXh0KTsgfVxuXG4uc3ZnLWJyb3dzZXItYmFubmVyIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWJyb3dzZXItYmFubmVyKTsgfVxuXG4uc3ZnLWJvcmRlci1pbm5lci1mcm9udCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ib3JkZXItaW5uZXItZnJvbnQpOyB9XG5cbi5zdmctYm9yZGVyLWlubmVyLWJhY2sge1xuICBmaWxsOiB2YXIoLS1zdmctYm9yZGVyLWlubmVyLWJhY2spOyB9XG5cbi5zdmctYm9yZGVyLXRvcC1mcm9udCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ib3JkZXItdG9wLWZyb250KTsgfVxuXG4uc3ZnLWJvcmRlci10b3AtYmFjayB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ib3JkZXItdG9wLWJhY2spOyB9XG5cbi5zdmctYm9yZGVyLWJvdHRvbSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ib3JkZXItYm90dG9tKTsgfVxuXG4uc3ZnLWNwYW5lbHNlby1ib3gtZnJvbnQge1xuICBmaWxsOiB2YXIoLS1zdmctY3BhbmVsc2VvLWJveC1mcm9udCk7IH1cblxuLnN2Zy1jcGFuZWxzZW8tYm94LXRvcCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jcGFuZWxzZW8tYm94LXRvcCk7IH1cblxuLnN2Zy1jcGFuZWxzZW8tYm94LXJpZ2h0IHtcbiAgZmlsbDogdmFyKC0tc3ZnLWNwYW5lbHNlby1ib3gtcmlnaHQpOyB9XG5cbi5zdmctY3BhbmVsc2VvLWJveC1vbmUge1xuICBmaWxsOiB2YXIoLS1zdmctY3BhbmVsc2VvLWJveC1vbmUpOyB9XG5cbi5zdmcta29uZmV0dGktc21hbGwge1xuICBmaWxsOiB2YXIoLS1zdmcta29uZmV0dGktc21hbGwpOyB9XG5cbi5zdmcta29uZmV0dGktbm9ybWFsIHtcbiAgc3Ryb2tlOiB2YXIoLS1zdmcta29uZmV0dGktbm9ybWFsKTsgfVxuXG4uc3ZnLWxhcHRvcC1ib3R0b20tYmFjayB7XG4gIGZpbGw6IHZhcigtLXN2Zy1sYXB0b3AtYm90dG9tLWJhY2spOyB9XG5cbi5zdmctbGFwdG9wLWJvdHRvbS10b3Age1xuICBmaWxsOiB2YXIoLS1zdmctbGFwdG9wLWJvdHRvbS10b3ApOyB9XG5cbi5zdmctbGFwdG9wLXRvdWNocGFkLWluc2lkZSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1sYXB0b3AtdG91Y2hwYWQtaW5zaWRlKTtcbiAgb3BhY2l0eTogMC40ODtcbiAgZW5hYmxlLWJhY2tncm91bmQ6IG5ldzsgfVxuXG4uc3ZnLWxhcHRvcC10b3VjaHBhZC1vdXRzaWRlIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWxhcHRvcC10b3VjaHBhZC1vdXRzaWRlKTtcbiAgb3BhY2l0eTogMC40ODtcbiAgZW5hYmxlLWJhY2tncm91bmQ6IG5ldzsgfVxuXG4uc3ZnLWxhcHRvcC1zY3JlZW4ge1xuICBmaWxsOiB2YXIoLS1zdmctbGFwdG9wLXNjcmVlbik7IH1cbiAgLnN2Zy1sYXB0b3Atc2NyZWVuLWxvZ28ge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1sYXB0b3Atc2NyZWVuLWxvZ28pOyB9XG4gIC5zdmctbGFwdG9wLXNjcmVlbi1iYWNrIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctbGFwdG9wLXNjcmVlbi1iYWNrKTsgfVxuICAuc3ZnLWxhcHRvcC1zY3JlZW4tZnJvbnQge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1sYXB0b3Atc2NyZWVuLWZyb250KTsgfVxuXG4uc3ZnLWtleWJvYXJkLWtleXMtYm90dG9tIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWtleWJvYXJkLWtleXMtYm90dG9tKTsgfVxuXG4uc3ZnLWtleWJvYXJkLWtleXMtdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWtleWJvYXJkLWtleXMtdG9wKTsgfVxuXG4uc3ZnLWtleWJvYXJkLWJvZHktdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWtleWJvYXJkLWJvZHktdG9wKTsgfVxuXG4uc3ZnLWtleWJvYXJkLWJvZHktYm90dG9tIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWtleWJvYXJkLWJvZHktYm90dG9tKTsgfVxuXG4uc3ZnLWN1cC1mbG93ZXIgLnN2Zy1jdXAtYm9keSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jdXAtYm9keSk7IH1cblxuLnN2Zy1jdXAtZmxvd2VyIC5zdmctY3VwLXRvcCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jdXAtdG9wKTsgfVxuXG4uc3ZnLWN1cC1mbG93ZXIgLnN2Zy1jdXAtaW5zaWRlIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWN1cC1pbnNpZGUpOyB9XG5cbi5zdmctY3VwLWZsb3dlciAuc3ZnLWZsb3dlci1sZWFmIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWZsb3dlci1sZWFmKTsgfVxuICAuc3ZnLWN1cC1mbG93ZXIgLnN2Zy1mbG93ZXItbGVhZi0xIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctZmxvd2VyLWxlYWYtMSk7IH1cbiAgLnN2Zy1jdXAtZmxvd2VyIC5zdmctZmxvd2VyLWxlYWYtMiB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLWZsb3dlci1sZWFmLTIpOyB9XG5cbi5zdmctZW52ZWxvcGUtdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWVudmVsb3BlLXRvcCk7IH1cblxuLnN2Zy1lbnZlbG9wZS10b3Atb3BlbiB7XG4gIGZpbGw6IHZhcigtLXN2Zy1lbnZlbG9wZS10b3Atb3Blbik7IH1cblxuLnN2Zy1lbnZlbG9wZS1pbnNpZGUge1xuICBmaWxsOiB2YXIoLS1zdmctZW52ZWxvcGUtaW5zaWRlKTsgfVxuXG4uc3ZnLWVudmVsb3BlLXJpZ2h0LXNpZGUtb3BlbiB7XG4gIGZpbGw6IHZhcigtLXN2Zy1lbnZlbG9wZS1yaWdodC1zaWRlLW9wZW4pOyB9XG5cbi5zdmctZW52ZWxvcGUtbGVmdC1zaWRlLW9wZW4ge1xuICBmaWxsOiB2YXIoLS1zdmctZW52ZWxvcGUtbGVmdC1zaWRlLW9wZW4pOyB9XG5cbi5zdmctZW52ZWxvcGUtc3BsaXQtb3BlbiB7XG4gIGZpbGw6IHZhcigtLXN2Zy1lbnZlbG9wZS1zcGxpdC1vcGVuKTsgfVxuXG4uc3ZnLWVudmVsb3BlLXNwbGl0IHtcbiAgZmlsbDogdmFyKC0tc3ZnLWVudmVsb3BlLXNwbGl0KTsgfVxuXG4uc3ZnLWVudmVsb3BlLXJpZ2h0LXNpZGUge1xuICBmaWxsOiB2YXIoLS1zdmctZW52ZWxvcGUtcmlnaHQtc2lkZSk7IH1cblxuLnN2Zy1lbnZlbG9wZS1sZWZ0LXNpZGUge1xuICBmaWxsOiB2YXIoLS1zdmctZW52ZWxvcGUtbGVmdC1zaWRlKTsgfVxuXG4uc3ZnLWNvbG9ycy1ib3R0b20ge1xuICBmaWxsOiB2YXIoLS1zdmctd2VlYmx5LWNvbG9ycy1ib3R0b20pOyB9XG5cbi5zdmctY29sb3JzLXRvcCB7XG4gIGZpbGw6IHZhcigtLXN2Zy13ZWVibHktY29sb3JzLXRvcCk7IH1cbiAgLnN2Zy1jb2xvcnMtdG9wLTEge1xuICAgIGZpbGw6IHZhcigtLXN2Zy13ZWVibHktY29sb3JzLXRvcC0xKTsgfVxuICAuc3ZnLWNvbG9ycy10b3AtMiB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1jb2xvcnMtdG9wLTIpOyB9XG4gIC5zdmctY29sb3JzLXRvcC0zIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctd2VlYmx5LWNvbG9ycy10b3AtMyk7IH1cblxuLyogV2Vic2l0ZSBCdWlsZGVyIChXZWVibHkpICovXG4uc3ZnLXdlZWJseSAuc3ZnLWN1cC1ib2R5IHtcbiAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1jdXAtYm9keSk7IH1cblxuLnN2Zy13ZWVibHkgLnN2Zy1jdXAtdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1jdXAtdG9wKTsgfVxuXG4uc3ZnLXdlZWJseSAuc3ZnLWN1cC1pbnNpZGUge1xuICBmaWxsOiB2YXIoLS1zdmctd2VlYmx5LWN1cC1pbnNpZGUpOyB9XG5cbi5zdmctd2VlYmx5IC5zdmctbGVmdC1lbGVtZW50cyB7XG4gIGZpbGw6IHZhcigtLXN2Zy13ZWVibHktbGVmdC1lbGVtZW50cyk7IH1cbiAgLnN2Zy13ZWVibHkgLnN2Zy1sZWZ0LWVsZW1lbnRzLWJvdHRvbSB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1sZWZ0LWVsZW1lbnRzLWJvdHRvbSk7IH1cblxuLnN2Zy13ZWVibHkgLnN2Zy1sZWZ0LWJvZHkge1xuICBmaWxsOiB2YXIoLS1zdmctd2VlYmx5LWxlZnQtYm9keSk7IH1cblxuLnN2Zy1zcGFtZXhwZXJ0cyAuc3ZnLWJyb3dzZXItdGV4dC1sZWZ0IHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNwYW1leHBlcnRzLWJyb3dzZXItdGV4dC1sZWZ0KTsgfVxuXG4uc3ZnLXNwYW1leHBlcnRzIC5zdmctYnJvd3Nlci10ZXh0LXJpZ2h0IHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNwYW1leHBlcnRzLWJyb3dzZXItdGV4dC1yaWdodCk7IH1cblxuLnN2Zy1zcGFtZXhwZXJ0cyAuc3ZnLWJyb3dzZXItdXNlciB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zcGFtZXhwZXJ0cy1icm93c2VyLXVzZXIpOyB9XG5cbi5zdmctc3BhbWV4cGVydHMgLnN2Zy1icm93c2VyLXVzZXItYmcge1xuICBmaWxsOiB2YXIoLS1zdmctc3BhbWV4cGVydHMtYnJvd3Nlci11c2VyLWJnKTsgfVxuXG4uc3ZnLXNwYW1leHBlcnRzIC5zdmctYnJvd3Nlci1iYW5uZXIge1xuICBmaWxsOiB2YXIoLS1zdmctc3BhbWV4cGVydHMtYnJvd3Nlci1iYW5uZXIpOyB9XG5cbi5zdmctc3ltYW50ZWMgLnN2Zy1sZWZ0LWJvZHkge1xuICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtbGVmdC1ib2R5KTsgfVxuXG4uc3ZnLXN5bWFudGVjIC5zdmctbGVmdC1lbGVtZW50cyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1sZWZ0LWVsZW1lbnRzKTsgfVxuXG4uc3ZnLXN5bWFudGVjIC5zdmctbWVkYWwtcmliYm9uIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLW1lZGFsLXJpYmJvbik7IH1cblxuLnN2Zy1zeW1hbnRlYyAuc3ZnLW1lZGFsLWluc2lkZSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1tZWRhbC1pbnNpZGUpOyB9XG4gIC5zdmctc3ltYW50ZWMgLnN2Zy1tZWRhbC1pbnNpZGUtZWxlbWVudCB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLW1lZGFsLWluc2lkZS1lbGVtZW50KTsgfVxuXG4uc3ZnLXN5bWFudGVjIC5zdmctbWVkYWwtcm91bmQtYmFjayB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1tZWRhbC1yb3VuZC1iYWNrKTsgfVxuXG4uc3ZnLXN5bWFudGVjIC5zdmctbWVkYWwtcm91bmQtZnJvbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtbWVkYWwtcm91bmQtZnJvbnQpOyB9XG5cbi5zdmctc3ltYW50ZWMgLnN2Zy1wYWRsb2NrLXJpZ2h0LXNpZGUge1xuICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtcGFkbG9jay1yaWdodC1zaWRlKTsgfVxuICAuc3ZnLXN5bWFudGVjIC5zdmctcGFkbG9jay1yaWdodC1zaWRlLWVsZW1lbnQge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1wYWRsb2NrLXJpZ2h0LXNpZGUtZWxlbWVudCk7IH1cblxuLnN2Zy1zeW1hbnRlYyAuc3ZnLXBhZGxvY2stdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLXBhZGxvY2stdG9wKTsgfVxuICAuc3ZnLXN5bWFudGVjIC5zdmctcGFkbG9jay10b3Atcm91bmQtZWxlbWVudCB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLXBhZGxvY2stdG9wLXJvdW5kLWVsZW1lbnQpOyB9XG4gIC5zdmctc3ltYW50ZWMgLnN2Zy1wYWRsb2NrLXRvcC1lbGVtZW50IHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtcGFkbG9jay10b3AtZWxlbWVudCk7IH1cbiAgICAuc3ZnLXN5bWFudGVjIC5zdmctcGFkbG9jay10b3AtZWxlbWVudC0xIHtcbiAgICAgIGZpbGw6IG5vbmU7XG4gICAgICBzdHJva2U6IHZhcigtLXN2Zy1zeW1hbnRlYy1wYWRsb2NrLXRvcC1lbGVtZW50LTEpO1xuICAgICAgc3Ryb2tlLXdpZHRoOiAxODtcbiAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7IH1cblxuLnN2Zy1zeW1hbnRlYyAuc3ZnLXBhZGxvY2stZnJvbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtcGFkbG9jay1mcm9udCk7IH1cblxuLnN2Zy1zeW1hbnRlYyAuc3ZnLXBhZGxvY2stbG9jayB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1wYWRsb2NrLWxvY2spOyB9XG4gIC5zdmctc3ltYW50ZWMgLnN2Zy1wYWRsb2NrLWxvY2staW5zaWRlIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtcGFkbG9jay1sb2NrLWluc2lkZSk7IH1cblxuLnN2Zy1zeW1hbnRlYyAuc3ZnLWtleS1ib3R0b20ge1xuICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMta2V5LWJvdHRvbSk7IH1cblxuLnN2Zy1zeW1hbnRlYyAuc3ZnLWtleS10b3Age1xuICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMta2V5LXRvcCk7IH1cbiAgLnN2Zy1zeW1hbnRlYyAuc3ZnLWtleS10b3AtMSB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLWtleS10b3AtMSk7IH1cblxuLnN2Zy1jb2RlZ3VhcmQgLnN2Zy1waG90by1mcmFtZSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtcGhvdG8tZnJhbWUpOyB9XG5cbi5zdmctY29kZWd1YXJkIC5zdmctcGhvdG8tYmcge1xuICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWJnKTsgfVxuXG4uc3ZnLWNvZGVndWFyZCAuc3ZnLXBob3RvLWxvZ28ge1xuICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWxvZ28pOyB9XG5cbi5zdmctY29kZWd1YXJkIC5zdmctcGhvdG8tZnJvbnQtY29ybmVycyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtcGhvdG8tZnJvbnQtY29ybmVycyk7IH1cblxuLnN2Zy1jb2RlZ3VhcmQgLnN2Zy1waG90by1iYWNrIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWNvZGVndWFyZC1waG90by1iYWNrKTsgfVxuXG4uc3ZnLWNvZGVndWFyZCAuc3ZnLXBob3RvLWJyb3dzZXItYm9keSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtcGhvdG8tYnJvd3Nlci1ib2R5KTsgfVxuXG4uc3ZnLWNvZGVndWFyZCAuc3ZnLXBob3RvLWJyb3dzZXItdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWNvZGVndWFyZC1waG90by1icm93c2VyLXRvcCk7IH1cbiAgLnN2Zy1jb2RlZ3VhcmQgLnN2Zy1waG90by1icm93c2VyLXRvcC0xIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWJyb3dzZXItdG9wLTEpOyB9XG5cbi5zdmctY29kZWd1YXJkIC5zdmctcGhvdG8tYnJvd3Nlci10ZXh0IHtcbiAgZmlsbDogdmFyKC0tc3ZnLWNvZGVndWFyZC1waG90by1icm93c2VyLXRleHQpOyB9XG5cbi5zdmctY29kZWd1YXJkIC5zdmctbGlzdC1iZyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtbGlzdC1iZyk7IH1cblxuLnN2Zy1jb2RlZ3VhcmQgLnN2Zy1saXN0LWl0ZW0ge1xuICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLWxpc3QtaXRlbSk7IH1cbiAgLnN2Zy1jb2RlZ3VhcmQgLnN2Zy1saXN0LWl0ZW0tYm90dG9tIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLWxpc3QtaXRlbS1ib3R0b20pOyB9XG5cbi5zdmctY29kZWd1YXJkIC5zdmctZm9sZGVyLW1hbHdhcmUtYmcge1xuICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLWZvbGRlci1tYWx3YXJlLWJnKTsgfVxuXG4uc3ZnLWNvZGVndWFyZCAuc3ZnLWZvbGRlci1sb2dvIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWNvZGVndWFyZC1mb2xkZXItbG9nbyk7IH1cblxuLnN2Zy1jb2RlZ3VhcmQgLnN2Zy1mb2xkZXItYmFja3VwLXRvcCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtZm9sZGVyLWJhY2t1cC10b3ApOyB9XG4gIC5zdmctY29kZWd1YXJkIC5zdmctZm9sZGVyLWJhY2t1cC10b3AtYm9yZGVyIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLWZvbGRlci1iYWNrdXAtdG9wLWJvcmRlcik7IH1cblxuLnN2Zy1jb2RlZ3VhcmQgLnN2Zy1mb2xkZXItYmFja3VwLWJnIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWNvZGVndWFyZC1mb2xkZXItYmFja3VwLWJnKTsgfVxuXG4uc3ZnLWNvZGVndWFyZCAuc3ZnLWZvbGRlci1iYWNrdXAtbG9nbyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtZm9sZGVyLWJhY2t1cC1sb2dvKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLXBob25lLWJvcmRlciB7XG4gIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tcGhvbmUtYm9yZGVyKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLXBob25lLWJnIHtcbiAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1waG9uZS1iZyk7IH1cblxuLnN2Zy1tYXJrZXRnb28gLnN2Zy1waG9uZS1idXR0b24ge1xuICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLXBob25lLWJ1dHRvbik7IH1cblxuLnN2Zy1tYXJrZXRnb28gLnN2Zy1waG9uZS1lbGVtZW50cyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tcGhvbmUtZWxlbWVudHMpOyB9XG5cbi5zdmctbWFya2V0Z29vIC5zdmctZ3JhcGhzLWJnIHtcbiAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1ncmFwaHMtYmcpOyB9XG5cbi5zdmctbWFya2V0Z29vIC5zdmctZ3JhcGhzLXRleHQge1xuICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWdyYXBocy10ZXh0KTsgfVxuICAuc3ZnLW1hcmtldGdvbyAuc3ZnLWdyYXBocy10ZXh0LWJnIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWdyYXBocy10ZXh0LWJnKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLWdyYXBocy1lbGVtZW50cyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tZ3JhcGhzLWVsZW1lbnRzKTsgfVxuICAuc3ZnLW1hcmtldGdvbyAuc3ZnLWdyYXBocy1lbGVtZW50cy0xIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWdyYXBocy1lbGVtZW50cy0xKTsgfVxuICAuc3ZnLW1hcmtldGdvbyAuc3ZnLWdyYXBocy1lbGVtZW50cy0yIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWdyYXBocy1lbGVtZW50cy0yKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLWJhci10b3Age1xuICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWJhci10b3ApOyB9XG5cbi5zdmctbWFya2V0Z29vIC5zdmctYmFyLWZyb250IHtcbiAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1iYXItZnJvbnQpOyB9XG5cbi5zdmctbWFya2V0Z29vIC5zdmctYmFyLXNpZGUge1xuICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWJhci1zaWRlKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLXNlYXJjaC1ib3JkZXJzIHtcbiAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1zZWFyY2gtYm9yZGVycyk7IH1cblxuLnN2Zy1tYXJrZXRnb28gLnN2Zy1zZWFyY2gtdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1zZWFyY2gtdG9wKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLXNlYXJjaC1iZyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tc2VhcmNoLWJnKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLXNlYXJjaC10ZXh0IHtcbiAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1zZWFyY2gtdGV4dCk7IH1cblxuLnN2Zy1tYXJrZXRnb28gLnN2Zy1icm93c2VyLXNlYXJjaC1iZyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tYnJvd3Nlci1zZWFyY2gtYmcpOyB9XG5cbi5zdmctbWFya2V0Z29vIC5zdmctYnJvd3Nlci1zZWFyY2gtaWNvbiB7XG4gIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tYnJvd3Nlci1zZWFyY2gtaWNvbik7IH1cbiAgLnN2Zy1tYXJrZXRnb28gLnN2Zy1icm93c2VyLXNlYXJjaC1pY29uLWJnIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWJyb3dzZXItc2VhcmNoLWljb24tYmcpOyB9XG5cbi5zdmctbWFya2V0Z29vIC5zdmctYnJvd3Nlci1jb250ZW50LWJvdHRvbSAuY29udGVudC1ib3R0b20tcmlnaHQge1xuICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWNvbnRlbnQtYm90dG9tLXJpZ2h0KTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLWJyb3dzZXItY29udGVudC1ib3R0b20gLmNvbnRlbnQtYm90dG9tLWNpcmNsZSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tY29udGVudC1ib3R0b20tY2lyY2xlKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLWJyb3dzZXItY29udGVudC1ib3R0b20gLmNvbnRlbnQtYm90dG9tLW51bSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tY29udGVudC1ib3R0b20tbnVtKTsgfVxuXG4uc3ZnLW1hcmtldGdvbyAuc3ZnLWJyb3dzZXItY29udGVudC10b3AgLmNvbnRlbnQtdG9wLXJpZ2h0IHtcbiAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1jb250ZW50LXRvcC1yaWdodCk7IH1cblxuLnN2Zy1tYXJrZXRnb28gLnN2Zy1icm93c2VyLWNvbnRlbnQtdG9wIC5jb250ZW50LXRvcC1jaXJjbGUge1xuICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWNvbnRlbnQtdG9wLWNpcmNsZSk7IH1cblxuLnN2Zy1tYXJrZXRnb28gLnN2Zy1icm93c2VyLWNvbnRlbnQtdG9wIC5jb250ZW50LXRvcC1udW0ge1xuICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWNvbnRlbnQtdG9wLW51bSk7IH1cblxuLnN2Zy1zaXRlbG9ja3ZwbiAuc3ZnLWxlZnQtZWxlbWVudHMge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tbGVmdC1lbGVtZW50cyk7IH1cbiAgLnN2Zy1zaXRlbG9ja3ZwbiAuc3ZnLWxlZnQtZWxlbWVudHMtYm9keSB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWxlZnQtZWxlbWVudHMtYm9keSk7IH1cbiAgICAuc3ZnLXNpdGVsb2NrdnBuIC5zdmctbGVmdC1lbGVtZW50cy1ib2R5LTEge1xuICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWxlZnQtZWxlbWVudHMtYm9keS0xKTsgfVxuICAuc3ZnLXNpdGVsb2NrdnBuIC5zdmctbGVmdC1lbGVtZW50cy1iZyB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWxlZnQtZWxlbWVudHMtYmcpOyB9XG4gIC5zdmctc2l0ZWxvY2t2cG4gLnN2Zy1sZWZ0LWVsZW1lbnRzLXRleHQge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1sZWZ0LWVsZW1lbnRzLXRleHQpOyB9XG5cbi5zdmctc2l0ZWxvY2t2cG4gLnN2Zy1sZWZ0LXRpbWUge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tbGVmdC10aW1lKTsgfVxuXG4uc3ZnLXNpdGVsb2NrdnBuIC5zdmctbGVmdC1jaXJjbGUge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tbGVmdC1jaXJjbGUpOyB9XG4gIC5zdmctc2l0ZWxvY2t2cG4gLnN2Zy1sZWZ0LWNpcmNsZS1pY29uIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tbGVmdC1jaXJjbGUtaWNvbik7IH1cblxuLnN2Zy1zaXRlbG9ja3ZwbiAuc3ZnLWNpcmNsZS1ib3R0b20ge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tY2lyY2xlLWJvdHRvbSk7IH1cblxuLnN2Zy1zaXRlbG9ja3ZwbiAuc3ZnLWNpcmNsZS1mcm9udCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1jaXJjbGUtZnJvbnQpOyB9XG5cbi5zdmctc2l0ZWxvY2t2cG4gLnN2Zy1jaXJjbGUtdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWNpcmNsZS10b3ApOyB9XG4gIC5zdmctc2l0ZWxvY2t2cG4gLnN2Zy1jaXJjbGUtdG9wLWJvcmRlciB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWNpcmNsZS10b3AtYm9yZGVyKTsgfVxuICAuc3ZnLXNpdGVsb2NrdnBuIC5zdmctY2lyY2xlLXRvcC10ZXh0IHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tY2lyY2xlLXRvcC10ZXh0KTsgfVxuXG4uc3ZnLXNpdGVsb2NrdnBuIC5zdmctYnJvd3Nlci1tYXAge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tYnJvd3Nlci1tYXApOyB9XG4gIC5zdmctc2l0ZWxvY2t2cG4gLnN2Zy1icm93c2VyLW1hcC1tYXJrZXIge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1icm93c2VyLW1hcC1tYXJrZXIpOyB9XG4gICAgLnN2Zy1zaXRlbG9ja3ZwbiAuc3ZnLWJyb3dzZXItbWFwLW1hcmtlci1iZyB7XG4gICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tYnJvd3Nlci1tYXAtbWFya2VyLWJnKTsgfVxuXG4uc3ZnLXNpdGVsb2NrdnBuIC5zdmctYnJvd3Nlci1tYXJrZXIge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tYnJvd3Nlci1tYXJrZXIpOyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1sZWZ0LWVsZW1lbnRzIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLWxlZnQtZWxlbWVudHMpOyB9XG4gIC5zdmctc2l0ZWxvY2sgLnN2Zy1sZWZ0LWVsZW1lbnRzLTEge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1sZWZ0LWVsZW1lbnRzLTEpOyB9XG4gIC5zdmctc2l0ZWxvY2sgLnN2Zy1sZWZ0LWVsZW1lbnRzLWJvZHkge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1sZWZ0LWVsZW1lbnRzLWJvZHkpOyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1jb2RlLWJnIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLWNvZGUtYmcpOyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1jb2RlLXRleHQge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stY29kZS10ZXh0KTsgfVxuXG4uc3ZnLXNpdGVsb2NrIC5zdmctc2hpZWxkLWJhY2sge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2hpZWxkLWJhY2spO1xuICBvcGFjaXR5OiAwLjQ4O1xuICBlbmFibGUtYmFja2dyb3VuZDogbmV3OyB9XG4gIC5zdmctc2l0ZWxvY2sgLnN2Zy1zaGllbGQtYmFjay0xIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2hpZWxkLWJhY2stMSk7XG4gICAgb3BhY2l0eTogMC40ODtcbiAgICBlbmFibGUtYmFja2dyb3VuZDogbmV3OyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1zaGllbGQtcmlnaHQtc2lkZSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zaGllbGQtcmlnaHQtc2lkZSk7IH1cblxuLnN2Zy1zaXRlbG9jayAuc3ZnLXNoaWVsZC10b3Age1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2hpZWxkLXRvcCk7IH1cblxuLnN2Zy1zaXRlbG9jayAuc3ZnLXNoaWVsZC1mcm9udCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zaGllbGQtZnJvbnQpOyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1zaGllbGQtbG9nbyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zaGllbGQtbG9nbyk7IH1cblxuLnN2Zy1zaXRlbG9jayAuc3ZnLXNlYXJjaC1ib3R0b20tZWxlbWVudCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zZWFyY2gtYm90dG9tLWVsZW1lbnQpOyB9XG4gIC5zdmctc2l0ZWxvY2sgLnN2Zy1zZWFyY2gtYm90dG9tLWVsZW1lbnQtMSB7XG4gICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLXNlYXJjaC1ib3R0b20tZWxlbWVudC0xKTsgfVxuXG4uc3ZnLXNpdGVsb2NrIC5zdmctc2VhcmNoLWJvcmRlcnMge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2VhcmNoLWJvcmRlcnMpOyB9XG4gIC5zdmctc2l0ZWxvY2sgLnN2Zy1zZWFyY2gtYm9yZGVycy1pbnNpZGUge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zZWFyY2gtYm9yZGVycy1pbnNpZGUpOyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1zZWFyY2gtaWNvbiB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zZWFyY2gtaWNvbik7IH1cblxuLnN2Zy1zaXRlbG9jayAuc3ZnLXNlYXJjaC1iZyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zZWFyY2gtYmcpOyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1zZWFyY2gtdG9wIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLXNlYXJjaC10b3ApOyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1icm93c2VyLWVsZW1lbnRzIHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLWJyb3dzZXItZWxlbWVudHMpOyB9XG5cbi5zdmctc2l0ZWxvY2sgLnN2Zy1icm93c2VyLWF2YXRhciB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1icm93c2VyLWF2YXRhcik7IH1cbiAgLnN2Zy1zaXRlbG9jayAuc3ZnLWJyb3dzZXItYXZhdGFyLWJnIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stYnJvd3Nlci1hdmF0YXItYmcpOyB9XG5cbi5zdmctb3ggLnN2Zy1icm93c2VyLXRleHQtcmlnaHQge1xuICBmaWxsOiB2YXIoLS1zdmctb3gtYnJvd3Nlci10ZXh0LXJpZ2h0KTsgfVxuXG4uc3ZnLW94IC5zdmctYnJvd3Nlci10ZXh0LWxlZnQge1xuICBmaWxsOiB2YXIoLS1zdmctb3gtYnJvd3Nlci10ZXh0LWxlZnQpOyB9XG5cbi5zdmctb3ggLnN2Zy1icm93c2VyLWJhbm5lci1yaWdodCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1veC1icm93c2VyLWJhbm5lci1yaWdodCk7IH1cblxuLnN2Zy1veCAuc3ZnLWJyb3dzZXItYmFubmVyLWxlZnQge1xuICBmaWxsOiB2YXIoLS1zdmctb3gtYnJvd3Nlci1iYW5uZXItbGVmdCk7IH1cblxuLnN2Zy1veCAuc3ZnLWJyb3dzZXItdXNlciB7XG4gIGZpbGw6IHZhcigtLXN2Zy1veC1icm93c2VyLXVzZXIpOyB9XG4gIC5zdmctb3ggLnN2Zy1icm93c2VyLXVzZXItYmcge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1veC1icm93c2VyLXVzZXItYmcpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1iYW5uZXItYm9yZGVyZWQtZWxlbWVudCB7XG4gIHN0cm9rZTogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLWJhbm5lci1ib3JkZXJlZC1lbGVtZW50KTsgfVxuXG4uc3ZnLXNpdGVidWlsZGVyIC5zdmctYmFubmVyLWJvZHkge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItYmFubmVyLWJvZHkpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1iYW5uZXItYm9keS1lbGVtZW50IHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLWJhbm5lci1ib2R5LWVsZW1lbnQpOyB9XG4gIC5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1iYW5uZXItYm9keS1lbGVtZW50LTEge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1iYW5uZXItYm9keS1lbGVtZW50LTEpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1zbWFydHBob25lLWJvcmRlcmVkLWVsZW1lbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItcGhvbmUtYm9yZGVyZWQtZWxlbWVudCk7IH1cblxuLnN2Zy1zaXRlYnVpbGRlciAuc3ZnLXNtYXJ0cGhvbmUtZWxlbWVudCB7XG4gIHN0cm9rZTogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLXBob25lLWVsZW1lbnQpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy10YWJsZXQtZWxlbWVudCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci10YWJsZXQtZWxlbWVudCk7IH1cbiAgLnN2Zy1zaXRlYnVpbGRlciAuc3ZnLXRhYmxldC1lbGVtZW50LTEge1xuICAgIHN0cm9rZTogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLXRhYmxldC1lbGVtZW50LTEpOyB9XG4gIC5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy10YWJsZXQtZWxlbWVudC0yIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItdGFibGV0LWVsZW1lbnQtMik7IH1cbiAgLnN2Zy1zaXRlYnVpbGRlciAuc3ZnLXRhYmxldC1lbGVtZW50LTMge1xuICAgIHN0cm9rZTogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLXRhYmxldC1lbGVtZW50LTEpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1ub3RlcGFkLWJhY2sge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItbm90ZXBhZC1iYWNrKTsgfVxuXG4uc3ZnLXNpdGVidWlsZGVyIC5zdmctbm90ZXBhZC1ib3JkZXIge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItbm90ZXBhZC1ib3JkZXIpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1ub3RlcGFkLWZyb250IHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLW5vdGVwYWQtZnJvbnQpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1ub3RlcGFkLXRleHQge1xuICBzdHJva2U6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1ub3RlcGFkLXRleHQpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1ub3RlcGFkIC5zdmctaG9sZSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1ob2xlKTsgfVxuXG4uc3ZnLXNpdGVidWlsZGVyIC5zdmctcGVuLWVsZW1lbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItcGVuLWVsZW1lbnQpOyB9XG4gIC5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1wZW4tZWxlbWVudC1kYXJrIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItcGVuLWVsZW1lbnQtZGFyayk7IH1cbiAgLnN2Zy1zaXRlYnVpbGRlciAuc3ZnLXBlbi1lbGVtZW50LTEge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1wZW4tZWxlbWVudC0xKTsgfVxuXG4uc3ZnLXNpdGVidWlsZGVyIC5zdmctcGVuY2lsLWVsZW1lbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItcGVuY2lsLWVsZW1lbnQpOyB9XG4gIC5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1wZW5jaWwtZWxlbWVudC1kYXJrIHtcbiAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItcGVuY2lsLWVsZW1lbnQtZGFyayk7IH1cbiAgLnN2Zy1zaXRlYnVpbGRlciAuc3ZnLXBlbmNpbC1lbGVtZW50LTEge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1wZW5jaWwtZWxlbWVudC0xKTsgfVxuXG4uc3ZnLXNpdGVidWlsZGVyIC5zdmctc2NyZWVuLWVsZW1lbnQge1xuICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItc2NyZWVuLWVsZW1lbnQpOyB9XG4gIC5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1zY3JlZW4tZWxlbWVudC0xIHtcbiAgICBzdHJva2U6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1zY3JlZW4tZWxlbWVudCk7IH1cblxuLnN2Zy1zaXRlYnVpbGRlciAuc3ZnLXNjcmVlbi1ib3JkZXJlZC1lbGVtZW50IHtcbiAgc3Ryb2tlOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItc2NyZWVuLWVsZW1lbnQpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1yaWdodC1ib2R5IHtcbiAgZmlsbDogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLXJpZ2h0LWJvZHkpOyB9XG5cbi5zdmctc2l0ZWJ1aWxkZXIgLnN2Zy1yaWdodC1lbGVtZW50cyB7XG4gIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1yaWdodC1lbGVtZW50cyk7IH1cbiAgLnN2Zy1zaXRlYnVpbGRlciAuc3ZnLXJpZ2h0LWVsZW1lbnRzLTEge1xuICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1yaWdodC1lbGVtZW50cy0xKTsgfVxuXG4uc3ZnLWljb24tZGFzaGVkLFxuLnN2Zy1pY29uIC5kYXNoZWQge1xuICBzdHJva2UtZGFzaGFycmF5OiAzLjg0IDcuNjk7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0xLFxuICAuc3ZnLWljb24gLmRhc2hlZC0xIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA0IDg7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0yLFxuICAuc3ZnLWljb24gLmRhc2hlZC0yIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA3LjcxIDkuNjQ7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0zLFxuICAuc3ZnLWljb24gLmRhc2hlZC0zIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA3LjUgOS4zNzsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTQsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTQge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYuNiA4LjI1OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtNSxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtNSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNy42MSA5LjUxOyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtNixcbiAgLnN2Zy1pY29uIC5kYXNoZWQtNiB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNy41NSA5LjQzOyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtNyxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtNyB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNi43NiA4LjQ1OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtOCxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtOCB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNy42MyA5LjU0OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtOSxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtOSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNi41MiA4LjE1OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMTAsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTEwIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA3Ljc5IDkuNzQ7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0xMSxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMTEge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDguMzkgMTAuNDk7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0xMixcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMTIge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcuODMgOS43ODsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTEzLFxuICAuc3ZnLWljb24gLmRhc2hlZC0xMyB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogOCAxMDsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTE0LFxuICAuc3ZnLWljb24gLmRhc2hlZC0xNCB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogOCA4OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMTUsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTE1IHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA2LjQyIDYuNDI7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0xNixcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMTYge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcuNjYgOS41ODsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTE3LFxuICAuc3ZnLWljb24gLmRhc2hlZC0xNyB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNy42NCA5LjU1OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMTgsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTE4IHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA2LjU2IDguMTk7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0xOSxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMTkge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcuNiA5LjU7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0yMCxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMjAge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYuNTcgOC4yMTsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTIxLFxuICAuc3ZnLWljb24gLmRhc2hlZC0yMSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNC4yNyA4LjUzOyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMjIsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTIyIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAzLjcgNy40OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMjMsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTIzIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA3LjY3IDkuNTk7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0yNCxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMjQge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYuNSA4LjEzOyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMjUsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTI1IHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA3LjU4IDkuNDg7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0yNixcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMjYge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYuNDggOC4xOyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMjcsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTI3IHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA0IDY7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0yOCxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMjgge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDkuMDksMTEuMzY7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0yOSxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMjkge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDIzLjI1LDI5LjE5OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMzAsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTMwIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAyMy4zNSwyOS4xOTsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTMxLFxuICAuc3ZnLWljb24gLmRhc2hlZC0zMSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMjMuMjUsMjkuMDc7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0zMixcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMzIge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDkuMDksMTEuMzc7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0zMyxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMzMge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEwLjkzLDEzLjY2OyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMzQsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTM0IHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAyMC44MiwyNi4wMjsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTM0LFxuICAuc3ZnLWljb24gLmRhc2hlZC0zNCB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMjAuODgsMjYuMTsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTM1LFxuICAuc3ZnLWljb24gLmRhc2hlZC0zNSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMTMuNTQsMTYuOTM7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0zNixcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMzYge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDIxLjE0LDI2LjQyOyB9XG4gIC5zdmctaWNvbi1kYXNoZWQtMzcsXG4gIC5zdmctaWNvbiAuZGFzaGVkLTM3IHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAyMS4wNCwyNi4zMTsgfVxuICAuc3ZnLWljb24tZGFzaGVkLTM4LFxuICAuc3ZnLWljb24gLmRhc2hlZC0zOCB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMTMuNDIsMTYuNzg7IH1cbiAgLnN2Zy1pY29uLWRhc2hlZC0zOSxcbiAgLnN2Zy1pY29uIC5kYXNoZWQtMzkge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcuOTYsOS45NDsgfVxuXG4uc3ZnLWJhbm5lci1saW5lIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmlsbC1ydWxlOiBldmVub2RkO1xuICBjbGlwLXJ1bGU6IGV2ZW5vZGQ7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZTogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XG4gIHN0cm9rZS13aWR0aDogMjtcbiAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwOyB9XG5cbi5zdmctYmFubmVyLXNoYXBlLWxlZnQge1xuICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXNoYXBlLWxlZnQpO1xuICBmaWxsLXJ1bGU6IGV2ZW5vZGQ7XG4gIGNsaXAtcnVsZTogZXZlbm9kZDsgfVxuXG4uc3ZnLWJhbm5lci1zaGFwZS1yaWdodCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1iYW5uZXItc2hhcGUtcmlnaHQpO1xuICBmaWxsLXJ1bGU6IGV2ZW5vZGQ7XG4gIGNsaXAtcnVsZTogZXZlbm9kZDsgfVxuXG4uc3ZnLWJyb3dzZXItZWxlbWVudC0xIHtcbiAgZmlsbDogdmFyKC0tc3ZnLWJyb3dzZXItdGV4dCk7IH1cblxuLnN2Zy1icm93c2VyLWVsZW1lbnQtMiB7XG4gIGZpbGw6IHZhcigtLXN2Zy1icm93c2VyLWJhbm5lcik7IH1cblxuLnN2Zy1jb29raWUtaWNvbiAuc3ZnLWNvb2tpZS1pY29uLXRvcCB7XG4gIGZpbGw6IHZhcigtLXN2Zy1jb29raWUtaWNvbi10b3ApO1xuICBzdHJva2U6IHZhcigtLXN2Zy1jb29raWUtaWNvbi10b3ApOyB9XG5cbi5zdmctY29va2llLWljb24gLnN2Zy1jb29raWUtaWNvbi1ib3R0b20ge1xuICBmaWxsOiB2YXIoLS1zdmctY29va2llLWljb24tYm90dG9tKTtcbiAgc3Ryb2tlOiB2YXIoLS1zdmctY29va2llLWljb24tYm90dG9tKTsgfVxuXG4uc3ZnLWNvb2tpZS1pY29uIC5zdmctY29va2llLWljb24td2hpdGUge1xuICBmaWxsOiB2YXIoLS1zdmctY29va2llLWljb24td2hpdGUpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRW1haWwgVmVyaWZpY2F0aW9uIC0gR2VuZXJhbFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4udXNlci12YWxpZGF0aW9uLmFsZXJ0LFxuLmVtYWlsLXZlcmlmaWNhdGlvbi5hbGVydCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItcmFkaXVzOiAwcHg7IH1cbiAgLnVzZXItdmFsaWRhdGlvbi5hbGVydCAuY29udGFpbmVyLFxuICAuZW1haWwtdmVyaWZpY2F0aW9uLmFsZXJ0IC5jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudXNlci12YWxpZGF0aW9uLmFsZXJ0IC5hbGVydC1ib2R5LFxuICAuZW1haWwtdmVyaWZpY2F0aW9uLmFsZXJ0IC5hbGVydC1ib2R5IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuICAgIC51c2VyLXZhbGlkYXRpb24uYWxlcnQgLmFsZXJ0LWJvZHkgaSxcbiAgICAuZW1haWwtdmVyaWZpY2F0aW9uLmFsZXJ0IC5hbGVydC1ib2R5IGkge1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLnVzZXItdmFsaWRhdGlvbi5hbGVydCAudGV4dCxcbiAgLmVtYWlsLXZlcmlmaWNhdGlvbi5hbGVydCAudGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogNnB4IDA7IH1cbiAgLnVzZXItdmFsaWRhdGlvbi5hbGVydCAuYWxlcnQtYWN0aW9ucyxcbiAgLmVtYWlsLXZlcmlmaWNhdGlvbi5hbGVydCAuYWxlcnQtYWN0aW9ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5FbWFpbCBWZXJpZmljYXRpb24gLSBSZXNwb25zaXZlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSAuZW1haWwtdmVyaWZpY2F0aW9uLFxuICAubGFnb20tbGF5b3V0LWxlZnQgLmVtYWlsLXZlcmlmaWNhdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5lbWFpbC12ZXJpZmljYXRpb24gLmNvbnRhaW5lciB7XG4gICAgZmxleDogMTsgfVxuICAuZW1haWwtdmVyaWZpY2F0aW9uIC5hbGVydC1ib2R5IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgLmVtYWlsLXZlcmlmaWNhdGlvbiAuYWxlcnQtYm9keSAuYnRuIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmVtYWlsLXZlcmlmaWNhdGlvbiAuYWxlcnQtYWN0aW9ucyB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7IH0gfVxuXG4udHdvZmEtbW9kdWxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC50d29mYS1tb2R1bGU6aG92ZXIsIC50d29mYS1tb2R1bGU6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpOyB9XG4gIC50d29mYS1tb2R1bGUuYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpOyB9XG4gIC50d29mYS1tb2R1bGUgLmNvbC1sb2dvIHtcbiAgICB3aWR0aDogNjRweDtcbiAgICBmbGV4LXNocmluazogMDsgfVxuICAgIC50d29mYS1tb2R1bGUgLmNvbC1sb2dvID4gaW1nIHtcbiAgICAgIG1heC1oZWlnaHQ6IDQ4cHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnR3b2ZhLW1vZHVsZSA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuXG4udGhlbWUtc3dpdGNoZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDI7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiBjYWxjKDEwMCUpO1xuICB3aWR0aDogOTIzcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjRzOyB9XG4gIC50aGVtZS1zd2l0Y2hlciBoMSB7XG4gICAgY29sb3I6ICMzOTNkNDU7IH1cbiAgLnRoZW1lLXN3aXRjaGVyIGgyIHtcbiAgICBjb2xvcjogIzM5M2Q0NTtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAudGhlbWUtc3dpdGNoZXItb3BlbiB7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuOyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLW9wZW4gLnRoZW1lLXN3aXRjaGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgICAgIC50aGVtZS1zd2l0Y2hlci1vcGVuIC50aGVtZS1zd2l0Y2hlcjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgICAudGhlbWUtc3dpdGNoZXItb3BlbiAudGhlbWUtc3dpdGNoZXItYnV0dG9uIC5idG4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgYm9yZGVyOiAjZmZmOyB9XG4gIC50aGVtZS1zd2l0Y2hlci1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLWhlYWRlciBoMSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLWhlYWRlciBpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpOyB9XG4gIC50aGVtZS1zd2l0Y2hlci1ib2R5IHtcbiAgICBwYWRkaW5nOiAwIDU2cHg7XG4gICAgZmxleDogMTtcbiAgICBvdmVyZmxvdzogYXV0bzsgfVxuICAgIC50aGVtZS1zd2l0Y2hlci1ib2R5IC5zZWN0aW9uOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC50aGVtZS1zd2l0Y2hlci1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IC01MnB4O1xuICAgIHdpZHRoOiA1MnB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7IH1cbiAgICAudGhlbWUtc3dpdGNoZXItYnV0dG9uIC5idG4ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA2NHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMzJweDtcbiAgICAgIGhlaWdodDogNTVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAgIC50aGVtZS1zd2l0Y2hlci1idXR0b24gLmJ0biBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxOHB4OyB9XG4gIC50aGVtZS1zd2l0Y2hlci1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZy1ib3R0b206IDg1cHg7IH1cbiAgICAudGhlbWUtc3dpdGNoZXItY29udGVudCAuY29sLTIwIHtcbiAgICAgIHdpZHRoOiAyMCU7IH1cbiAgLnRoZW1lLXN3aXRjaGVyLWZvb3RlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiA5NTBweDtcbiAgICBwYWRkaW5nOiAxOHB4IDU2cHggMThweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAudGhlbWUtc3dpdGNoZXItZm9vdGVyIC5idG4gKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxM3B4OyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLWZvb3RlciAuYnRuLWRlZmF1bHQge1xuICAgICAgY29sb3I6ICMzOTNkNDU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZGNkZWUyOyB9XG4gIC50aGVtZS1zd2l0Y2hlci1ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2FlM2ZjO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAudGhlbWUtc3dpdGNoZXItYm94OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLWJveDpiZWZvcmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCk7XG4gICAgICBjb250ZW50OiBcIlxcZTkxMVwiO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTEycHg7IH1cbiAgICAudGhlbWUtc3dpdGNoZXItYm94ID4gaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIC50aGVtZS1zd2l0Y2hlci1ib3guYWN0aXZlLCAudGhlbWUtc3dpdGNoZXItYm94OmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7IH1cbiAgICAudGhlbWUtc3dpdGNoZXItYm94LmFjdGl2ZTphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLWJveC5hY3RpdmU6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbiAgICAudGhlbWUtc3dpdGNoZXItYm94LmFjdGl2ZSArIGg0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLWJveCArIGg0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XG4gICAgICBjb2xvcjogIzM5M2Q0NTsgfVxuICAgICAgLnRoZW1lLXN3aXRjaGVyLWJveCArIGg0IC5sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9XG4gIC50aGVtZS1zd2l0Y2hlci1zb29uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOiAxcHggZGFzaGVkICNjYWUzZmM7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTsgfVxuICAgIC50aGVtZS1zd2l0Y2hlci1zb29uIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLXNvb24gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcbiAgICAgIGNvbG9yOiAjMzkzZDQ1OyB9XG5cbmJvZHk6bm90KC50aGVtZS1zd2l0Y2hlci1vcGVuKSAudGhlbWUtc3dpdGNoZXI6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYm9keTpub3QoLnRoZW1lLXN3aXRjaGVyLW9wZW4pIC50aGVtZS1zd2l0Y2hlcjpob3ZlciAudGhlbWUtc3dpdGNoZXItYnV0dG9uIHtcbiAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuICAgIGJvZHk6bm90KC50aGVtZS1zd2l0Y2hlci1vcGVuKSAudGhlbWUtc3dpdGNoZXI6aG92ZXIgLnRoZW1lLXN3aXRjaGVyLWJ1dHRvbiAuYnRuIHtcbiAgICAgIGxlZnQ6IC02MHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAudGhlbWUtc3dpdGNoZXIge1xuICAgIHdpZHRoOiA4ODVweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC50aGVtZS1zd2l0Y2hlciB7XG4gICAgd2lkdGg6IDY4MHB4OyB9XG4gICAgLnRoZW1lLXN3aXRjaGVyLWhlYWRlciwgLnRoZW1lLXN3aXRjaGVyLWZvb3RlciwgLnRoZW1lLXN3aXRjaGVyLWJvZHkge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGhlbWUtc3dpdGNoZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudGhlbWUtc3dpdGNoZXItb3BlbiAub3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZlYXV0ZSAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmZlYXR1cmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZmVhdHVyZS1tYXJnaW4tYm90dG9tKTsgfVxuICAuZmVhdHVyZS1pY29uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZmVhdHVyZS1pY29uLW1hcmdpbi1ib3R0b20pOyB9XG4gICAgLmZlYXR1cmUtaWNvbiA+IGkge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH1cbiAgLmZlYXR1cmUtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZmVhdHVyZS10aXRsZS1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1mZWF0dXJlLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZmVhdHVyZS10aXRsZS1mb250LXdlaWdodCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgICAuZmVhdHVyZS10aXRsZTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAuZmVhdHVyZS1kZXNjIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mZWF0dXJlLWRlc2MtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZmVhdHVyZS1kZXNjLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZmVhdHVyZS1kZXNjLWZvbnQtd2VpZ2h0KTsgfVxuICAgIC5mZWF0dXJlLWRlc2MgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pOyB9XG4gIC5mZWF0dXJlLWNvbnRlbnQgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmZlYXR1cmUtbnVtYmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1mZWF0dXJlLWljb24tbWFyZ2luLWJvdHRvbSk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7IH1cbiAgICAuZmVhdHVyZS1udW1iZXItY2lyY2xlZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICAgIHdpZHRoOiA1NnB4O1xuICAgICAgaGVpZ2h0OiA1NnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICAuZmVhdHVyZS1sZWZ0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLmZlYXR1cmUtbGVmdCAuZmVhdHVyZS1pY29uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0zeCk7IH1cblxuLmxhZ29tLWRlZmF1bHQgLnNpdGUgLnNlY3Rpb24tc3RlcHMgLmZlYXR1cmUtYm94ZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5GZWF1dGUgLSBCb3hlZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uZmVhdHVyZS1ib3hlZCxcbi5mZWF0dXJlLWJvcmRlcmVkIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZmVhdHVyZS1ib3hlZC1ib3JkZXItcmFkaXVzKTtcbiAgcGFkZGluZzogdmFyKC0tZmVhdHVyZS1ib3hlZC1wYWRkaW5nKTsgfVxuXG4uZmVhdHVyZS1ib3hlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWZlYXR1cmUtYm94ZWQtYmcpO1xuICBib3gtc2hhZG93OiB2YXIoLS1mZWF0dXJlLWJveGVkLXNoYWRvdyk7IH1cblxuLmZlYXR1cmUtYm9yZGVyZWQge1xuICBib3JkZXI6IHZhcigtLWZlYXR1cmUtYm94ZWQtYm9yZGVyKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZlYXV0ZSAtIFNpemVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5mZWF0dXJlLXNtIC5mZWF0dXJlLXRpdGxlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mZWF0dXJlLXNtLXRpdGxlLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mZWF0dXJlLXNtLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZlYXR1cmUtc20tdGl0bGUtZm9udC13ZWlnaHQpOyB9XG5cbi5mZWF0dXJlLXNtIC5mZWF0dXJlLWljb24gLnN2Zy1pY29uIHtcbiAgaGVpZ2h0OiB2YXIoLS1mZWF0dXJlLXNtLXN2Zy1pY29uLXNpemUpOyB9XG5cbi5mZWF0dXJlLXNtLmZlYXR1cmUtYm94ZWQsIC5mZWF0dXJlLXNtLmZlYXR1cmUtYm9yZGVyZWQge1xuICBwYWRkaW5nOiB2YXIoLS1mZWF0dXJlLXNtLWJveGVkLXBhZGRpbmcpOyB9XG4gIC5mZWF0dXJlLXNtLmZlYXR1cmUtYm94ZWQgLmZlYXR1cmUtaWNvbiwgLmZlYXR1cmUtc20uZmVhdHVyZS1ib3JkZXJlZCAuZmVhdHVyZS1pY29uIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuXG4uZmVhdHVyZS1zbS5mZWF0dXJlLWxlZnQgLmZlYXR1cmUtaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7IH1cblxuLmZlYXR1cmUtbGcuZmVhdHVyZS1ib3hlZCwgLmZlYXR1cmUtbGcuZmVhdHVyZS1ib3JkZXJlZCB7XG4gIHBhZGRpbmc6IHZhcigtLWZlYXR1cmUtYm94ZWQtcGFkZGluZyk7IH1cblxuLmZlYXR1cmUtbGcgLmZlYXR1cmUtaWNvbiB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWZlYXR1cmUtbGctaWNvbi1tYXJnaW4tYm90dG9tKTsgfVxuXG4uZmVhdHVyZS1sZyAuZmVhdHVyZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZmVhdHVyZS1sZy10aXRsZS1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZmVhdHVyZS1sZy10aXRsZS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mZWF0dXJlLWxnLXRpdGxlLWZvbnQtd2VpZ2h0KTsgfVxuXG4uZmVhdHVyZS1sZyAuZmVhdHVyZS1kZXNjIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mZWF0dXJlLWxnLWRlc2MtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZlYXR1cmUtbGctZGVzYy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mZWF0dXJlLWxnLWRlc2MtZm9udC13ZWlnaHQpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRmVhdXRlIC0gUm93XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5mZWF0dXJlcy1ib3hlcyB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSkgIWltcG9ydGFudDsgfVxuICAuZmVhdHVyZXMtYm94ZXMgLmZlYXR1cmUge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG5cbi5mZWF0dXJlczpub3QoLmZlYXR1cmVzLWJveGVzKSB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS1mZWF0dXJlLXJvdy1tYXJnaW4tYm90dG9tKSkgIWltcG9ydGFudDsgfVxuICAuZmVhdHVyZXM6bm90KC5mZWF0dXJlcy1ib3hlcykgLmZlYXR1cmUge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWZlYXR1cmUtcm93LW1hcmdpbi1ib3R0b20pOyB9XG5cbi5mZWF0dXJlcy1zdGVwcyB7XG4gIG1hcmdpbjogMCAtMzJweDsgfVxuICAuZmVhdHVyZXMtc3RlcHMgW2NsYXNzKj1cImNvbFwiXSB7XG4gICAgcGFkZGluZzogMCAzMnB4OyB9XG4gICAgLmZlYXR1cmVzLXN0ZXBzIFtjbGFzcyo9XCJjb2xcIl06bm90KDpsYXN0LWNoaWxkKSAuZmVhdHVyZTphZnRlciB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtbWVkaXVtKTtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MWUnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IC00MHB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLmZlYXR1cmVzIC5tb2ItZmVhdHVyZS1sZWZ0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAuZmVhdHVyZXMgLm1vYi1mZWF0dXJlLWxlZnQgLmZlYXR1cmUtaWNvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1mZWF0dXJlLWljb24tbWFyZ2luLWJvdHRvbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOThweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKG1heC13aWR0aDogNDc5Ljk4cHgpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAuZmVhdHVyZXMgLm1vYi1mZWF0dXJlLWxlZnQgLmZlYXR1cmUtdGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAgIC5mZWF0dXJlcyAubW9iLWZlYXR1cmUtbGVmdCAuZmVhdHVyZS1ib3JkZXJlZCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLXRvcDogMHB4OyB9XG4gICAgLmZlYXR1cmVzIC5tb2ItZmVhdHVyZS1sZWZ0IC5mZWF0dXJlLWZsZXggLmZlYXR1cmUtaWNvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4OyB9XG4gICAgLmZlYXR1cmVzIC5tb2ItZmVhdHVyZS1sZWZ0IC5mZWF0dXJlLWZsZXggLmZlYXR1cmUtY29udGVudCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OS45OHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAobWF4LXdpZHRoOiA0NzkuOThweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuZmVhdHVyZXMgLm0tc2FmYXJpIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLnNlY3Rpb24tZW5sYXJnZW1lbnQgLmZlYXR1cmUuZmVhdHVyZS1ib3JkZXJlZC5mZWF0dXJlLWZsZXggLmZlYXR1cmUtaWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwcHg7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblNlYXJjaCBCb3hcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnNlYXJjaC1ib3gge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMtbGcpO1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWxnKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpOyB9XG4gIC5zZWFyY2gtYm94LXNtIHtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gIC5zZWFyY2gtYm94IC5zZWFyY2gtZ3JvdXAge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc2VhcmNoLWJveCAuZGVzYyB7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSAwIDA7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5TZWFyY2ggQm94IC0gU3R5bGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmJhbm5lci1wcmltYXJ5LFxuLnNlYXJjaC1ib3gtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmctaCk7IH1cbiAgLmJhbm5lci1wcmltYXJ5IC5zZWFyY2gtZ3JvdXAgLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sOmZvY3VzIH4gLnNlYXJjaC1maWVsZC1pY29uID4gaSxcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuc2VhcmNoLWdyb3VwIC5zZWFyY2gtZmllbGQgLmZvcm0tY29udHJvbDpmb2N1cyB+IC5zZWFyY2gtZmllbGQtaWNvbiA+IGkge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gIC5iYW5uZXItcHJpbWFyeSAuc2VhcmNoLWZpZWxkLWljb24sXG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLnNlYXJjaC1maWVsZC1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAgIC5iYW5uZXItcHJpbWFyeSAuc2VhcmNoLWZpZWxkLWljb24gPiBpLFxuICAgIC5zZWFyY2gtYm94LXByaW1hcnkgLnNlYXJjaC1maWVsZC1pY29uID4gaSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktcHJpbWFyeS1jb2xvcik7IH1cbiAgLmJhbm5lci1wcmltYXJ5IC5mb3JtLWNvbnRyb2wsIC5iYW5uZXItcHJpbWFyeSAuZm9ybS1jb250cm9sOmhvdmVyLCAuYmFubmVyLXByaW1hcnkgLmZvcm0tY29udHJvbDphY3RpdmUsIC5iYW5uZXItcHJpbWFyeSAuZm9ybS1jb250cm9sOmZvY3VzLFxuICAuYmFubmVyLXByaW1hcnkgLmlucHV0LWdyb3VwLFxuICAuYmFubmVyLXByaW1hcnkgLmlucHV0LWdyb3VwOmhvdmVyLFxuICAuYmFubmVyLXByaW1hcnkgLmlucHV0LWdyb3VwOmFjdGl2ZSxcbiAgLmJhbm5lci1wcmltYXJ5IC5pbnB1dC1ncm91cDpmb2N1cyxcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuZm9ybS1jb250cm9sLFxuICAuc2VhcmNoLWJveC1wcmltYXJ5IC5mb3JtLWNvbnRyb2w6aG92ZXIsXG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmZvcm0tY29udHJvbDphY3RpdmUsXG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuaW5wdXQtZ3JvdXAsXG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmlucHV0LWdyb3VwOmhvdmVyLFxuICAuc2VhcmNoLWJveC1wcmltYXJ5IC5pbnB1dC1ncm91cDphY3RpdmUsXG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmlucHV0LWdyb3VwOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1jb2xvcik7IH1cbiAgLmJhbm5lci1wcmltYXJ5IC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuICAuYmFubmVyLXByaW1hcnkgLmlucHV0LWdyb3VwOjpwbGFjZWhvbGRlcixcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuaW5wdXQtZ3JvdXA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcik7IH1cbiAgLmJhbm5lci1wcmltYXJ5IC5kcm9wZG93bi1oZWFkZXIgLmZvcm0tY29udHJvbCxcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuZHJvcGRvd24taGVhZGVyIC5mb3JtLWNvbnRyb2wge1xuICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7IH1cbiAgLmJhbm5lci1wcmltYXJ5IC5pbnB1dC1ncm91cC1hZGRvbixcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKTsgfVxuICAuYmFubmVyLXByaW1hcnkgLmRvbWFpbi1zZWFyY2gtaW5wdXQuc2VhcmNoLWdyb3VwLWNvbWJpbmVkLFxuICAuc2VhcmNoLWJveC1wcmltYXJ5IC5kb21haW4tc2VhcmNoLWlucHV0LnNlYXJjaC1ncm91cC1jb21iaW5lZCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1iZyk7IH1cbiAgLmJhbm5lci1wcmltYXJ5IC5kb21haW4tc2VhcmNoLWlucHV0IC5zZWFyY2gtZmllbGQtaWNvbixcbiAgLmJhbm5lci1wcmltYXJ5IC5kb21haW4tc2VhcmNoLWlucHV0IC5zZWFyY2gtZmllbGQtaWNvbiA+IGksXG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmRvbWFpbi1zZWFyY2gtaW5wdXQgLnNlYXJjaC1maWVsZC1pY29uLFxuICAuc2VhcmNoLWJveC1wcmltYXJ5IC5kb21haW4tc2VhcmNoLWlucHV0IC5zZWFyY2gtZmllbGQtaWNvbiA+IGkge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWljb24tY29sb3IpOyB9XG5cbi5zZWFyY2gtYm94LXByaW1hcnkgLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4uYmFubmVyLXNlY29uZGFyeSxcbi5zZWFyY2gtYm94LXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZy1oKTsgfVxuICAuYmFubmVyLXNlY29uZGFyeSAuc2VhcmNoLWdyb3VwIC5zZWFyY2gtZmllbGQgLmZvcm0tY29udHJvbDpmb2N1cyB+IC5zZWFyY2gtZmllbGQtaWNvbiA+IGksXG4gIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuc2VhcmNoLWdyb3VwIC5zZWFyY2gtZmllbGQgLmZvcm0tY29udHJvbDpmb2N1cyB+IC5zZWFyY2gtZmllbGQtaWNvbiA+IGkge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5zZWFyY2gtZmllbGQtaWNvbixcbiAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5zZWFyY2gtZmllbGQtaWNvbiB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgICAuYmFubmVyLXNlY29uZGFyeSAuc2VhcmNoLWZpZWxkLWljb24gPiBpLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuc2VhcmNoLWZpZWxkLWljb24gPiBpIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1wcmltYXJ5LWNvbG9yKTsgfVxuICAuYmFubmVyLXNlY29uZGFyeSAuZm9ybS1jb250cm9sLFxuICAuYmFubmVyLXNlY29uZGFyeSAuaW5wdXQtZ3JvdXAsXG4gIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuZm9ybS1jb250cm9sLFxuICAuc2VhcmNoLWJveC1zZWNvbmRhcnkgLmlucHV0LWdyb3VwIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1jb2xvcik7IH1cbiAgICAuYmFubmVyLXNlY29uZGFyeSAuZm9ybS1jb250cm9sLCAuYmFubmVyLXNlY29uZGFyeSAuZm9ybS1jb250cm9sOmhvdmVyLCAuYmFubmVyLXNlY29uZGFyeSAuZm9ybS1jb250cm9sOmFjdGl2ZSwgLmJhbm5lci1zZWNvbmRhcnkgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgICAuYmFubmVyLXNlY29uZGFyeSAuaW5wdXQtZ3JvdXAsXG4gICAgLmJhbm5lci1zZWNvbmRhcnkgLmlucHV0LWdyb3VwOmhvdmVyLFxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5pbnB1dC1ncm91cDphY3RpdmUsXG4gICAgLmJhbm5lci1zZWNvbmRhcnkgLmlucHV0LWdyb3VwOmZvY3VzLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuZm9ybS1jb250cm9sLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuZm9ybS1jb250cm9sOmhvdmVyLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuZm9ybS1jb250cm9sOmFjdGl2ZSxcbiAgICAuc2VhcmNoLWJveC1zZWNvbmRhcnkgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgICAuc2VhcmNoLWJveC1zZWNvbmRhcnkgLmlucHV0LWdyb3VwLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuaW5wdXQtZ3JvdXA6aG92ZXIsXG4gICAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5pbnB1dC1ncm91cDphY3RpdmUsXG4gICAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5pbnB1dC1ncm91cDpmb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWNvbG9yKTsgfVxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5pbnB1dC1ncm91cDo6cGxhY2Vob2xkZXIsXG4gICAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuaW5wdXQtZ3JvdXA6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtcGxhY2Vob2xkZXItY29sb3IpOyB9XG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5kcm9wZG93bi1oZWFkZXIgLmZvcm0tY29udHJvbCxcbiAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5kcm9wZG93bi1oZWFkZXIgLmZvcm0tY29udHJvbCB7XG4gICAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yKTsgfVxuICAuYmFubmVyLXNlY29uZGFyeSAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtcGxhY2Vob2xkZXItY29sb3IpOyB9XG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5kb21haW4tc2VhcmNoLWlucHV0LnNlYXJjaC1ncm91cC1jb21iaW5lZCxcbiAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5kb21haW4tc2VhcmNoLWlucHV0LnNlYXJjaC1ncm91cC1jb21iaW5lZCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJnKTsgfVxuICAuYmFubmVyLXNlY29uZGFyeSAuZG9tYWluLXNlYXJjaC1pbnB1dCAuc2VhcmNoLWZpZWxkLWljb24sXG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5kb21haW4tc2VhcmNoLWlucHV0IC5zZWFyY2gtZmllbGQtaWNvbiA+IGksXG4gIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuZG9tYWluLXNlYXJjaC1pbnB1dCAuc2VhcmNoLWZpZWxkLWljb24sXG4gIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuZG9tYWluLXNlYXJjaC1pbnB1dCAuc2VhcmNoLWZpZWxkLWljb24gPiBpIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWljb24tY29sb3IpOyB9XG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5kb21haW4tc2VhcmNoLWFkdmFuY2VkOmhhcygjbWVzc2FnZTphY3RpdmUpIC5kcm9wZG93bi1tdWx0aS1sZXZlbCA+IC5kcm9wZG93bi10b2dnbGUsXG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5kb21haW4tc2VhcmNoLWFkdmFuY2VkOmhhcygjbWVzc2FnZTpmb2N1cykgLmRyb3Bkb3duLW11bHRpLWxldmVsID4gLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLmJhbm5lci1zZWNvbmRhcnkgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQ6aGFzKCNtZXNzYWdlOmhvdmVyKSAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tdG9nZ2xlLFxuICAuc2VhcmNoLWJveC1zZWNvbmRhcnkgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQ6aGFzKCNtZXNzYWdlOmFjdGl2ZSkgLmRyb3Bkb3duLW11bHRpLWxldmVsID4gLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5kb21haW4tc2VhcmNoLWFkdmFuY2VkOmhhcygjbWVzc2FnZTpmb2N1cykgLmRyb3Bkb3duLW11bHRpLWxldmVsID4gLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5kb21haW4tc2VhcmNoLWFkdmFuY2VkOmhhcygjbWVzc2FnZTpob3ZlcikgLmRyb3Bkb3duLW11bHRpLWxldmVsID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1ib3JkZXIpOyB9XG5cbi5zZWFyY2gtYm94LXByaW1hcnkgLmZvcm0tY29udHJvbCxcbi5zZWFyY2gtYm94LXByaW1hcnkgLmlucHV0LWdyb3VwIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1ib3JkZXIpOyB9XG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmZvcm0tY29udHJvbCwgLnNlYXJjaC1ib3gtcHJpbWFyeSAuZm9ybS1jb250cm9sOmhvdmVyLCAuc2VhcmNoLWJveC1wcmltYXJ5IC5mb3JtLWNvbnRyb2w6YWN0aXZlLCAuc2VhcmNoLWJveC1wcmltYXJ5IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmlucHV0LWdyb3VwLFxuICAuc2VhcmNoLWJveC1wcmltYXJ5IC5pbnB1dC1ncm91cDpob3ZlcixcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuaW5wdXQtZ3JvdXA6YWN0aXZlLFxuICAuc2VhcmNoLWJveC1wcmltYXJ5IC5pbnB1dC1ncm91cDpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtY29sb3IpOyB9XG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIsXG4gIC5zZWFyY2gtYm94LXByaW1hcnkgLmlucHV0LWdyb3VwOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtcGxhY2Vob2xkZXItY29sb3IpOyB9XG5cbi5zZWFyY2gtYm94LXByaW1hcnkgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQ6aGFzKCNtZXNzYWdlOmFjdGl2ZSkgLmRyb3Bkb3duLW11bHRpLWxldmVsID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5zZWFyY2gtYm94LXByaW1hcnkgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQ6aGFzKCNtZXNzYWdlOmZvY3VzKSAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLnNlYXJjaC1ib3gtcHJpbWFyeSAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZDpoYXMoI21lc3NhZ2U6aG92ZXIpIC5kcm9wZG93bi1tdWx0aS1sZXZlbCA+IC5kcm9wZG93bi10b2dnbGUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5TZWFyY2ggR3JvdXBcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnNlYXJjaC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc2VhcmNoLWdyb3VwLWJ0biA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLnNlYXJjaC1ncm91cCAuc2VhcmNoLWZpZWxkIHtcbiAgICBmbGV4OiAxOyB9XG4gICAgLnNlYXJjaC1ncm91cCAuc2VhcmNoLWZpZWxkIC5mb3JtLWNvbnRyb2w6Zm9jdXMgfiAuc2VhcmNoLWZpZWxkLWljb24gPiBpIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWFyY2gtZmllbGQtY29tYmluZWQtaWNvbi1jb2xvcik7IH1cblxuLnNlYXJjaC1maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2VhcmNoLWZpZWxkLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoKHZhcigtLXVpLWhlaWdodC1iYXNlKSAtIHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSkvMik7XG4gICAgbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgd2lkdGg6IHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKTtcbiAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tdWktaWNvbi1zaXplLWJhc2UpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5zZWFyY2gtZmllbGQtaWNvbiA+IGkge1xuICAgICAgY29sb3I6IHZhcigtLXNlYXJjaC1maWVsZC1pY29uLWNvbG9yKTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tdWktaWNvbi1zaXplLWJhc2UpICsgMiAqIHZhcigtLXNwYWNpbmctMngpKTsgfVxuICAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtZmllbGQtaWNvbiB7XG4gICAgbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tdWktaWNvbi1zaXplLWJhc2UpICsgMiAqIHZhcigtLXNwYWNpbmctMngpKTsgfVxuICAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtZmllbGQtbG9hZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHJpZ2h0OiAyNHB4OyB9XG4gIC5zZWFyY2gtZmllbGQ6aGFzKC5pbnB1dC1zbSkgLnNlYXJjaC1maWVsZC1sb2FkZXIge1xuICAgIHJpZ2h0OiAxNnB4OyB9XG4gIC5zZWFyY2gtZmllbGQgLnNlYXJjaC1maWVsZC1yZXN1bHRzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IGNhbGMoMTAwJSArIDhweCk7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTZweCk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tc2hvdy1hbmltYXRpb24pO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAgIC5zZWFyY2gtZmllbGQgLnNlYXJjaC1maWVsZC1yZXN1bHRzIC5saXN0LWdyb3VwLWl0ZW0ubWVzc2FnZSB7XG4gICAgICBib3JkZXI6IHVuc2V0OyB9XG4gICAgICAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtZmllbGQtcmVzdWx0cyAubGlzdC1ncm91cC1pdGVtLm1lc3NhZ2Utbm8tZGF0YSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM2MHB4OyB9XG4gICAgICAgIC5zZWFyY2gtZmllbGQgLnNlYXJjaC1maWVsZC1yZXN1bHRzIC5saXN0LWdyb3VwLWl0ZW0ubWVzc2FnZS1uby1kYXRhIC5tZXNzYWdlLWltYWdlIHtcbiAgICAgICAgICB3aWR0aDogNTZweDtcbiAgICAgICAgICBoZWlnaHQ6IDU2cHg7IH1cbiAgICAgICAgICAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtZmllbGQtcmVzdWx0cyAubGlzdC1ncm91cC1pdGVtLm1lc3NhZ2Utbm8tZGF0YSAubWVzc2FnZS1pbWFnZSBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDU2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDU2cHg7IH1cbiAgICAgICAgLnNlYXJjaC1maWVsZCAuc2VhcmNoLWZpZWxkLXJlc3VsdHMgLmxpc3QtZ3JvdXAtaXRlbS5tZXNzYWdlLW5vLWRhdGEgLm1lc3NhZ2UtdGl0bGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gICAgLnNlYXJjaC1maWVsZCAuc2VhcmNoLWZpZWxkLXJlc3VsdHMubGlzdC1ncm91cC14eHMgLmxpc3QtZ3JvdXAtaXRlbS5tZXNzYWdlLW5vLWRhdGEge1xuICAgICAgbWluLWhlaWdodDogMjI0cHg7IH1cbiAgICAgIC5zZWFyY2gtZmllbGQgLnNlYXJjaC1maWVsZC1yZXN1bHRzLmxpc3QtZ3JvdXAteHhzIC5saXN0LWdyb3VwLWl0ZW0ubWVzc2FnZS1uby1kYXRhIC5tZXNzYWdlLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDsgfVxuICAgICAgICAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtZmllbGQtcmVzdWx0cy5saXN0LWdyb3VwLXh4cyAubGlzdC1ncm91cC1pdGVtLm1lc3NhZ2Utbm8tZGF0YSAubWVzc2FnZS1pbWFnZSBzdmcge1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDsgfVxuICAgICAgLnNlYXJjaC1maWVsZCAuc2VhcmNoLWZpZWxkLXJlc3VsdHMubGlzdC1ncm91cC14eHMgLmxpc3QtZ3JvdXAtaXRlbS5tZXNzYWdlLW5vLWRhdGEgLm1lc3NhZ2UtdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gICAgLnNlYXJjaC1maWVsZCAuc2VhcmNoLWZpZWxkLXJlc3VsdHMuc2hvdyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5zZWFyY2gtZmllbGQgLnNlYXJjaC1maWVsZC1yZXN1bHRzW2RhdGEta25vd2xlZGdlYmFzZS1zZWFyY2gtcmVzdWx0c10ge1xuICAgICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICBbbWVudWl0ZW1uYW1lPVwiS25vd2xlZGdlYmFzZSBTdWdnZXN0aW9uc1wiXSAuc2VhcmNoLWZpZWxkLXJlc3VsdHNbZGF0YS1rbm93bGVkZ2ViYXNlLXNlYXJjaC1yZXN1bHRzXSB7XG4gICAgdG9wOiB1bnNldDtcbiAgICBib3R0b206IGNhbGMoMTAwJSArIDhweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE2cHgpOyB9XG4gICAgW21lbnVpdGVtbmFtZT1cIktub3dsZWRnZWJhc2UgU3VnZ2VzdGlvbnNcIl0gLnNlYXJjaC1maWVsZC1yZXN1bHRzW2RhdGEta25vd2xlZGdlYmFzZS1zZWFyY2gtcmVzdWx0c10uc2hvdyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH0gfVxuXG4ucGFnZS1ob21lcGFnZSAuc2VhcmNoLWdyb3VwIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zZWFyY2gtZ3JvdXAtbWF4LXdpZHRoKTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnNlYXJjaC1ncm91cCA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuc2VhcmNoLWdyb3VwOm5vdCgucGFuZWwtY2hvb3NlLWRvbWFpbi0tc3ViZG9tYWluKSA+ICoge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBmbGV4LWJhc2lzOiAxMDAlOyB9XG4gICAgLnNlYXJjaC1ncm91cDpub3QoLnBhbmVsLWNob29zZS1kb21haW4tLXN1YmRvbWFpbikgPiAqICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuc2VhcmNoLWdyb3VwLWJ0biAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc2VhcmNoLWdyb3VwLWJ0biA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuU2VhcmNoIEdyb3VwIENvbWJpbmVkXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5zZWFyY2gtYm94LXByaW1hcnkgLnNlYXJjaC1ncm91cC1jb21iaW5lZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtYmcpOyB9XG5cbi5zZWFyY2gtYm94LXNlY29uZGFyeSAuc2VhcmNoLWdyb3VwLWNvbWJpbmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJnKTsgfVxuXG4uc2VhcmNoLWdyb3VwLWNvbWJpbmVkIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTF4KSAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAgIC5zZWFyY2gtZ3JvdXAtY29tYmluZWQge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCk7IH0gfVxuICAuc2VhcmNoLWdyb3VwLWNvbWJpbmVkLmhhcy1zaGFkb3cge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3ctbGcpO1xuICAgIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTsgfVxuICAuc2VhcmNoLWdyb3VwLWNvbWJpbmVkIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuU2VhcmNoIEdyb3VwIFNpemVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnNlYXJjaC1ncm91cCAuc2VhcmNoLWZpZWxkIC5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0taW5wdXQtZm9udC13ZWlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTsgfVxuXG4uc2VhcmNoLWdyb3VwIC5zZWFyY2gtZ3JvdXAtYnRuIC5idG4ge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcbiAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1idG4tYmFzZS1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYnRuLWJhc2UtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tYnRuLWJhc2UtZm9udC13ZWlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tYmFzZS1ib3JkZXItcmFkaXVzKTsgfVxuXG4uc2VhcmNoLWdyb3VwLWxnIC5zZWFyY2gtZ3JvdXAtYnRuIC5idG4ge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctbGctdikgdmFyKC0tdWktcGFkZGluZy1sZy1oKTtcbiAgZm9udC1zaXplOiB2YXIoLS1idG4tbGctZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJ0bi1sZy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1idG4tbGctZm9udC13ZWlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tbGctYm9yZGVyLXJhZGl1cyk7IH1cblxuLnNlYXJjaC1ncm91cC1sZyAuc2VhcmNoLWZpZWxkIC5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQtbGctZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LWxnLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWlucHV0LWxnLWZvbnQtd2VpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtbGctYm9yZGVyLXJhZGl1cyk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS11aS1pY29uLXNpemUtYmFzZSkgKyB2YXIoLS1zcGFjaW5nLTV4KSk7IH1cblxuLnNlYXJjaC1ncm91cC1sZyAuc2VhcmNoLWZpZWxkLWljb24ge1xuICB0b3A6IGNhbGMoKHZhcigtLXVpLWhlaWdodC1sZykgLSB2YXIoLS11aS1pY29uLXNpemUtYmFzZSkpLzIpO1xuICBsZWZ0OiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgcmlnaHQ6IHVuc2V0OyB9XG5cbi5zZWFyY2gtZ3JvdXAteGwgLnNlYXJjaC1ncm91cC1idG4gLmJ0biB7XG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhsZyk7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmcteGxnLXYpIHZhcigtLXVpLXBhZGRpbmcteGxnLWgpO1xuICBmb250LXNpemU6IHZhcigtLWJ0bi14bGctZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJ0bi14bGctbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tYnRuLXhsZy1mb250LXdlaWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi14bGctYm9yZGVyLXJhZGl1cyk7IH1cblxuLnNlYXJjaC1ncm91cC14bCAuc2VhcmNoLWZpZWxkIC5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC14bGcpO1xuICBmb250LXNpemU6IHZhcigtLWlucHV0LXhsZy1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQteGxnLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWlucHV0LXhsZy1mb250LXdlaWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LXhsZy1ib3JkZXItcmFkaXVzKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSArIHZhcigtLXNwYWNpbmctNXgpKTsgfVxuXG4uc2VhcmNoLWdyb3VwLXhsIC5zZWFyY2gtZmllbGQtaWNvbiB7XG4gIHRvcDogY2FsYygodmFyKC0tdWktaGVpZ2h0LXhsZykgLSB2YXIoLS11aS1pY29uLXNpemUtYmFzZSkpLzIpO1xuICBsZWZ0OiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgcmlnaHQ6IHVuc2V0OyB9XG5cbi5jb29raWUtYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IHZhcigtLWNvb2tpZS1wb3NpdGlvbik7XG4gIHotaW5kZXg6IHZhcigtLXppbmRleC10b29sdGlwKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1jb29raWUtd2lkdGgpO1xuICBtaW4td2lkdGg6IHZhcigtLWNvb2tpZS13aWR0aCk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IDAuN3M7IH1cbiAgLmNvb2tpZS1iYXIuaXMtYWN0aXZlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmNvb2tpZS1iYXJfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1sZyk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cy1sZyk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpOyB9XG4gIC5jb29raWUtYmFyX19kZXNjIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkOyB9XG4gIC5jb29raWUtYmFyX19pY29uIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5jb29raWUtYmFyX19hY3Rpb24ge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNvb2tpZS1iYXJfX2FjdGlvbiAuYnRuIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb29raWUtYmFyLS1ib3R0b20tbGVmdCB7XG4gICAgbGVmdDogdmFyKC0tY29va2llLXBvc2l0aW9uKTsgfVxuICAuY29va2llLWJhci0tYm90dG9tLXJpZ2h0IHtcbiAgICByaWdodDogdmFyKC0tY29va2llLXBvc2l0aW9uKTsgfVxuICAuY29va2llLWJhci0tYm90dG9tIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgYm90dG9tOiB2YXIoLS1jb29raWUtcG9zaXRpb24pOyB9XG4gICAgLmNvb2tpZS1iYXItLWJvdHRvbTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgI0ZGRkZGRiA1My4xMiUpOyB9XG4gICAgLmNvb2tpZS1iYXItLWJvdHRvbSAuY29va2llLWJhcl9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3cteGxnKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvb2tpZS1iYXItLWJvdHRvbSAuY29va2llLWJhcl9faWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7IH1cbiAgLmNvb2tpZS1iYXItLWJvdHRvbSAuY29va2llLWJhcl9fZGVzYyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuY29va2llLWJhci0tYm90dG9tIC5jb29raWUtYmFyX19hY3Rpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgIHdpZHRoOiB1bnNldDsgfVxuICAgIC5jb29raWUtYmFyLS1ib3R0b20gLmNvb2tpZS1iYXJfX2FjdGlvbiAuYnRuIHtcbiAgICAgIG1pbi13aWR0aDogMjIwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNvb2tpZS1iYXItLWJvdHRvbSAuY29va2llLWJhcl9fY29udGVudCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbi5jbGllbnQtYXZhdGFyLFxuLmNyZWF0b3ItYXZhdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuICAuY2xpZW50LWF2YXRhciBpbWcsXG4gIC5jcmVhdG9yLWF2YXRhciBpbWcge1xuICAgIHdpZHRoOiA3MnB4O1xuICAgIGhlaWdodDogNzJweDtcbiAgICBib3JkZXItcmFkaXVzOiA1NnB4OyB9XG4gIC5jbGllbnQtYXZhdGFyLXNtLFxuICAuY3JlYXRvci1hdmF0YXItc20ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmNsaWVudC1hdmF0YXItc20gaW1nLFxuICAgIC5jcmVhdG9yLWF2YXRhci1zbSBpbWcge1xuICAgICAgd2lkdGg6IDMycHg7XG4gICAgICBoZWlnaHQ6IDMycHg7IH1cbiAgLmNsaWVudC1hdmF0YXItbWQsXG4gIC5jcmVhdG9yLWF2YXRhci1tZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuY2xpZW50LWF2YXRhci1tZCBpbWcsXG4gICAgLmNyZWF0b3ItYXZhdGFyLW1kIGltZyB7XG4gICAgICB3aWR0aDogNDhweDtcbiAgICAgIGhlaWdodDogNDhweDsgfVxuICAuY2xpZW50LWF2YXRhciAuc3RhZmYtcmVwbHksXG4gIC5jcmVhdG9yLWF2YXRhciAuc3RhZmYtcmVwbHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTRweDtcbiAgICBib3R0b206IC02cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG4gICAgLmNsaWVudC1hdmF0YXIgLnN0YWZmLXJlcGx5IGltZyxcbiAgICAuY3JlYXRvci1hdmF0YXIgLnN0YWZmLXJlcGx5IGltZyB7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICB3aWR0aDogMTJweDsgfVxuXG4ubGFnb20tbGF5b3V0LWxlZnQgLnRvcC1uYXYgLmNsaWVudC1hdmF0YXItc20gaW1nLFxuLmxhZ29tLWxheW91dC1jb25kZW5zZWQgLnRvcC1uYXYgLmNsaWVudC1hdmF0YXItc20gaW1nIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDsgfVxuXG4uZHJvcGRvd24tbWVudS1zZWFyY2gsXG4uZHJvcGRvd24tbGFuZ3VhZ2Utc2VhcmNoIHtcbiAgd2lkdGg6IDI1MHB4O1xuICBtYXgtaGVpZ2h0OiAyOTBweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpOyB9XG4gIC5kcm9wZG93bi1tZW51LXNlYXJjaCAuZHJvcGRvd24tbWVudS1pdGVtcyxcbiAgLmRyb3Bkb3duLWxhbmd1YWdlLXNlYXJjaCAuZHJvcGRvd24tbWVudS1pdGVtcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC1oZWlnaHQ6IDIzNnB4OyB9XG4gIC5kcm9wZG93bi1tZW51LXNlYXJjaCAuZHJvcGRvd24taGVhZGVyLFxuICAuZHJvcGRvd24tbGFuZ3VhZ2Utc2VhcmNoIC5kcm9wZG93bi1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiA1NnB4OyB9XG4gICAgLmRyb3Bkb3duLW1lbnUtc2VhcmNoIC5kcm9wZG93bi1oZWFkZXIgLmlucHV0LWdyb3VwLWljb24sXG4gICAgLmRyb3Bkb3duLWxhbmd1YWdlLXNlYXJjaCAuZHJvcGRvd24taGVhZGVyIC5pbnB1dC1ncm91cC1pY29uIHtcbiAgICAgIG1hcmdpbjogMCAtMzNweCAwIDI0cHg7XG4gICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7IH1cbiAgICAuZHJvcGRvd24tbWVudS1zZWFyY2ggLmRyb3Bkb3duLWhlYWRlciAuZm9ybS1jb250cm9sLFxuICAgIC5kcm9wZG93bi1sYW5ndWFnZS1zZWFyY2ggLmRyb3Bkb3duLWhlYWRlciAuZm9ybS1jb250cm9sIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQ0cHg7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cbiAgICAuZHJvcGRvd24tbWVudS1zZWFyY2ggLmRyb3Bkb3duLWhlYWRlci1ib3JkZXJlZCxcbiAgICAuZHJvcGRvd24tbGFuZ3VhZ2Utc2VhcmNoIC5kcm9wZG93bi1oZWFkZXItYm9yZGVyZWQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcik7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgIC5kcm9wZG93bi1tZW51LXNlYXJjaCAuZHJvcGRvd24taGVhZGVyLWJvcmRlcmVkOmhhcyhpbnB1dDpmb2N1cyksXG4gICAgICAuZHJvcGRvd24tbGFuZ3VhZ2Utc2VhcmNoIC5kcm9wZG93bi1oZWFkZXItYm9yZGVyZWQ6aGFzKGlucHV0OmZvY3VzKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTsgfVxuICAuZHJvcGRvd24tbWVudS1zZWFyY2ggLmRyb3Bkb3duLW1lbnUtbm8tZGF0YSxcbiAgLmRyb3Bkb3duLWxhbmd1YWdlLXNlYXJjaCAuZHJvcGRvd24tbWVudS1uby1kYXRhIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4taGVpZ2h0OiA2NHB4OyB9XG4gIC5kcm9wZG93bi1tZW51LXNlYXJjaC5pcy1lbXB0eSAuZHJvcGRvd24tbWVudS1pdGVtcyxcbiAgLmRyb3Bkb3duLWxhbmd1YWdlLXNlYXJjaC5pcy1lbXB0eSAuZHJvcGRvd24tbWVudS1pdGVtcyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZHJvcGRvd24tbWVudS1zZWFyY2guaXMtZW1wdHkgLmRyb3Bkb3duLW1lbnUtbm8tZGF0YSxcbiAgLmRyb3Bkb3duLWxhbmd1YWdlLXNlYXJjaC5pcy1lbXB0eSAuZHJvcGRvd24tbWVudS1uby1kYXRhIHtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhzKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmRyb3Bkb3duLWxhbmd1YWdlLXNlYXJjaCAuZHJvcGRvd24tbWVudS1pdGVtIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5kcm9wZG93bi1sYW5ndWFnZS1zZWFyY2ggLm5hdi1kaXZpZGVyIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5kcm9wZG93bi1sYW5ndWFnZS1zZWFyY2ggLmxhbmd1YWdlLWVudGVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5kcm9wZG93bi1sYW5ndWFnZS1zZWFyY2ggLmxhbmd1YWdlLWVudGVyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZW50ZXIuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuXG4ubGFuZ3VhZ2UtZmxhZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLmNhdGFsYW4ge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9jYXRhbGFuLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5hcmFiaWMge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9hcmFiaWMuc3ZnXCIpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLmF6ZXJiYWlqYW5pIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvYXplcmJhaWphbmkuc3ZnXCIpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLmNoaW5lc2Uge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9jaGluZXNlLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5jcm9hdGlhbiB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL2Nyb2F0aWFuLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5jemVjaCB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL2N6ZWNoLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5kYW5pc2gge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9kYW5pc2guc3ZnXCIpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLmR1dGNoIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvZHV0Y2guc3ZnXCIpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLmVuZ2xpc2gge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9lbmdsaXNoLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5lc3RvbmlhbiB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL2VzdG9uaWFuLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5mYXJzaSB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL2ZhcnNpLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5mcmVuY2gge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9mcmVuY2guc3ZnXCIpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLmdlcm1hbiB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL2dlcm1hbi5zdmdcIik7IH1cbiAgLmxhbmd1YWdlLWZsYWcuaGVicmV3IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvaGVicmV3LnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5odW5nYXJpYW4ge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9odW5nYXJpYW4uc3ZnXCIpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLml0YWxpYW4ge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9pdGFsaWFuLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5tYWNlZG9uaWFuIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvbWFjZWRvbmlhbi5zdmdcIik7IH1cbiAgLmxhbmd1YWdlLWZsYWcubm9yd2VnaWFuIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3Mvbm9yd2VnaWFuLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5wb3J0dWd1ZXNlLWJyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvcG9ydHVndWVzZS1ici5zdmdcIik7IH1cbiAgLmxhbmd1YWdlLWZsYWcucG9ydHVndWVzZS1wdCB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL3BvcnR1Z3Vlc2UtcHQuc3ZnXCIpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLnBvcnR1Z3Vlc2Uge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9wb3J0dWd1ZXNlLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5yb21hbmlhbiB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL3JvbWFuaWFuLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy5ydXNzaWFuIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvcnVzc2lhbi5zdmdcIik7IH1cbiAgLmxhbmd1YWdlLWZsYWcuc3BhbmlzaCB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL3NwYW5pc2guc3ZnXCIpOyB9XG4gIC5sYW5ndWFnZS1mbGFnLnN3ZWRpc2gge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9zd2VkaXNoLnN2Z1wiKTsgfVxuICAubGFuZ3VhZ2UtZmxhZy50dXJraXNoIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvdHVya2lzaC5zdmdcIik7IH1cbiAgLmxhbmd1YWdlLWZsYWcudWtyYWluaWFuIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvdWtyYWluaWFuLnN2Z1wiKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkFydGljbGUgLSBDb250ZW50XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5hcnRpY2xlLWNvbnRlbnQge1xuICBjb2xvcjogdmFyKC0tYXJ0aWNsZS1mb250LWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1hcnRpY2xlLWZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWFydGljbGUtZm9udC13ZWlnaHQtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1hcnRpY2xlLWxpbmUtaGVpZ2h0LWJhc2UpOyB9XG4gIC5hcnRpY2xlLWNvbnRlbnQgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5hcnRpY2xlLWNvbnRlbnQgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmFydGljbGUtY29udGVudCBoMSxcbiAgLmFydGljbGUtY29udGVudCAuaDEge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWFydGljbGUtaDEtbWFyZ2luLXRvcCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tYXJ0aWNsZS1oMS1tYXJnaW4tYm90dG9tKTsgfVxuICAuYXJ0aWNsZS1jb250ZW50IGgyLFxuICAuYXJ0aWNsZS1jb250ZW50IC5oMiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tYXJ0aWNsZS1oMi1tYXJnaW4tdG9wKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1hcnRpY2xlLWgyLW1hcmdpbi1ib3R0b20pOyB9XG4gIC5hcnRpY2xlLWNvbnRlbnQgaDMsXG4gIC5hcnRpY2xlLWNvbnRlbnQgLmgzIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1hcnRpY2xlLWgzLW1hcmdpbi10b3ApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWFydGljbGUtaDMtbWFyZ2luLWJvdHRvbSk7IH1cbiAgLmFydGljbGUtY29udGVudCBoNCxcbiAgLmFydGljbGUtY29udGVudCAuaDQge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWFydGljbGUtaDQtbWFyZ2luLXRvcCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tYXJ0aWNsZS1oNC1tYXJnaW4tYm90dG9tKTsgfVxuICAuYXJ0aWNsZS1jb250ZW50IGg1LFxuICAuYXJ0aWNsZS1jb250ZW50IC5oNSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tYXJ0aWNsZS1oNS1tYXJnaW4tdG9wKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1hcnRpY2xlLWg1LW1hcmdpbi1ib3R0b20pOyB9XG4gIC5hcnRpY2xlLWNvbnRlbnQgaDYsXG4gIC5hcnRpY2xlLWNvbnRlbnQgLmg2IHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1hcnRpY2xlLWg2LW1hcmdpbi10b3ApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWFydGljbGUtaDYtbWFyZ2luLWJvdHRvbSk7IH1cbiAgLmFydGljbGUtY29udGVudCBiLFxuICAuYXJ0aWNsZS1jb250ZW50IHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gIC5hcnRpY2xlLWNvbnRlbnQgLnRhYmxlLFxuICAuYXJ0aWNsZS1jb250ZW50IHRhYmxlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAgIC5hcnRpY2xlLWNvbnRlbnQgLnRhYmxlIHRkLFxuICAgIC5hcnRpY2xlLWNvbnRlbnQgLnRhYmxlIHRoLFxuICAgIC5hcnRpY2xlLWNvbnRlbnQgdGFibGUgdGQsXG4gICAgLmFydGljbGUtY29udGVudCB0YWJsZSB0aCB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmFydGljbGUtY29udGVudCBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuLmFubm91bmNlbWVudHMtbGlzdCBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSAwOyB9XG5cbi5pbnZpdGUtdXNlcnMtYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLnBhbmVsLXVzZXJzIC5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogMDsgfVxuXG4udXNlci1saXN0IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC51c2VyLWxpc3QtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnVzZXItbGlzdC1pdGVtID4gKiArICoge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgLnVzZXItbGlzdC1pdGVtLWF2YXRhciB7XG4gICAgICB3aWR0aDogNDhweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAudXNlci1saXN0LWl0ZW0tYXZhdGFyIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIC51c2VyLWxpc3QtaXRlbS1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleDogMTsgfVxuICAgIC51c2VyLWxpc3QtaXRlbS1pbmZvIHtcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgIC51c2VyLWxpc3QtaXRlbS1pbmZvID4gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAgICAgLnVzZXItbGlzdC1pdGVtLWluZm8gPiBpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAgIC51c2VyLWxpc3QtaXRlbS1uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gICAgLnVzZXItbGlzdC1pdGVtLWVtYWlsIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gICAgLnVzZXItbGlzdC1pdGVtLWRhdGUge1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIG1heC13aWR0aDogNDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAudXNlci1saXN0LWl0ZW0tYWN0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogLThweDsgfVxuICAgICAgLnVzZXItbGlzdC1pdGVtLWFjdGlvbnMgLmxhYmVsLFxuICAgICAgLnVzZXItbGlzdC1pdGVtLWFjdGlvbnMgLmJ0bi1kZWZhdWx0IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cbiAgICAudXNlci1saXN0LWl0ZW0gLnRvb2x0aXAge1xuICAgICAgbWF4LXdpZHRoOiAxNTBweDsgfVxuICAgIC51c2VyLWxpc3QtaXRlbSArIC51c2VyLWxpc3QtaXRlbSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgLnVzZXItbGlzdCBhLnVzZXItbGlzdC1pdGVtOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogOHB4O1xuICAgIHJpZ2h0OiA4cHg7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgLnVzZXItbGlzdCBhLnVzZXItbGlzdC1pdGVtICsgLnVzZXItbGlzdC1pdGVtOmFmdGVyIHtcbiAgICB0b3A6IDFweDsgfVxuICAudXNlci1saXN0IGEudXNlci1saXN0LWl0ZW06aG92ZXI6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnVzZXItbGlzdCBhLnVzZXItbGlzdC1pdGVtLmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNzsgfVxuICAgIC51c2VyLWxpc3QgYS51c2VyLWxpc3QtaXRlbS5kaXNhYmxlZCAqIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAudXNlci1saXN0IGEudXNlci1saXN0LWl0ZW0uZGlzYWJsZWQ6aG92ZXI6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnVzZXItbGlzdC1zd2l0Y2ggLnVzZXItbGlzdC1pdGVtLWRhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudXNlci1saXN0LWl0ZW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC51c2VyLWxpc3QtaXRlbS1ib2R5IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC51c2VyLWxpc3QtaXRlbS1kYXRlIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7IH1cbiAgICAgIC51c2VyLWxpc3QtaXRlbS1kYXRlID4gKiArICoge1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLnVzZXItbGlzdC1pdGVtLWFjdGlvbnMge1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA2NnB4O1xuICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLnVzZXItbGlzdC1pdGVtLWFjdGlvbnMgLmxhYmVsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICBtYXJnaW4tdG9wOiA2cHg7IH1cbiAgLnVzZXItbGlzdC1zd2l0Y2ggLnVzZXItbGlzdC1pdGVtLWFjdGlvbnMge1xuICAgIHBhZGRpbmctbGVmdDogNzJweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9IH1cblxuOnJvb3QgLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAtLWJvZHktYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICMxNjI0QTcgMCUsICMwMDAwMDAgMTAwJSk7XG4gIC0tZ3JheS1ncmFkaWVudC12OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG4gIC0tZ3JheS1ibG9jay1iZy1oOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG4gIC0tZ3JheS1ncmFkaWVudC1oOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG4gIC0td2hpdGUtZ3JhZGllbnQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zZXQ7XG4gIC0tYXBwLW5hdi10b3AtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMDtcbiAgLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtaGVhZGVyLWJvcmRlci1ib3R0b206ICAgICAgICAgICAgICAgICAgICAgICBub25lO1xuICAtLWNtcy1ibG9jay1kaXZpZGVyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgLS1hcHAtbmF2LXRvcC1ib3JkZXItYm90dG9tOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub25lO1xuICAtLXVpLWJsb2NrLWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNGRkZGRkY1NztcbiAgLS1tYWluLWZvb3Rlci1ib3JkZXItdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggc29saWQgI0ZGRkZGRjFBO1xuICAtLW1haW4tZm9vdGVyLWV4dGVuZGVkLWJvcmRlci10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDFweCBzb2xpZCAjRkZGRkZGMUE7XG4gIC0tbWFpbi1mb290ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG4gIC0tc2l0ZS1zZWN0aW9uLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcbiAgLS1zaXRlLXNlY3Rpb24tc3VidGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjRkZGRkZGRUI7XG4gIC0tYmFuZXItY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcbiAgLS1zZWN0aW9uLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuICAtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY7XG4gIC0tbWFpbi1mb290ZXItbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI0ZGRkZGRkNDO1xuICAtLW1haW4tZm9vdGVyLWV4dGVuZGVkLWRlc2MtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNGRkZGRkZDQztcbiAgLS1uYXYtdGFicy1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjQjNCM0IzOyB9XG4gIDpyb290IC5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5zZWN0aW9uLWZhcSB7XG4gICAgLS1icmFuZC1wcmltYXJ5OiAjMDA5QUZGO1xuICAgIC0tZ3JheS1saWdodGVyOiAjMzAzMDMwO1xuICAgIC0tZ3JheS1saWdodGVyLTQ6ICNFRkVGRjE7XG4gICAgLS10ZXh0LWhlYWRpbmctY29sb3I6ICNmZmY7XG4gICAgLS10ZXh0LXByaW1hcnktY29sb3I6ICMwMDlBRkY7XG4gICAgLS10ZXh0LWJvZHktY29sb3I6IGhzbGEoMCwwJSwxMDAlLC4yNCk7XG4gICAgLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXItMzogaHNsYSgwLDAlLDEwMCUsLjgpOyB9XG5cbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5zZWN0aW9uLWZhcSAuZmFxLWl0ZW0uZmFxLWl0ZW0tYm94ZWQge1xuICBvdXRsaW5lOiB1bnNldCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjQpOyB9XG4gIC5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5zZWN0aW9uLWZhcSAuZmFxLWl0ZW0uZmFxLWl0ZW0tYm94ZWQgLmZhcS1pdGVtLWJvdHRvbSB7XG4gICAgY29sb3I6ICNGRkZGRkZDQyAhaW1wb3J0YW50OyB9XG5cbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5zZWN0aW9uLWZhcS5jb2xsYXBzZWQ6bm90KC5mYXEtaXRlbS1leHBhbmRlZCk6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnNlY3Rpb24tZmFxOm5vdCguY29sbGFwc2VkKTpub3QoLmZhcS1pdGVtLWV4cGFuZGVkKSBoMyB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG5cbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5zZWN0aW9uLWZhcTpub3QoLmZhcS1pdGVtLWV4cGFuZGVkKTpob3ZlciBoMyB7XG4gIGNvbG9yOiAjRkZGRkZGQ0M7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnNlY3Rpb24tZmFxLmNvbGxhcHNlZDpob3ZlciAuYWNjb3JkaW9uLWljb24gc3ZnIGcgcGF0aCB7XG4gIGZpbGw6ICNGRkZGRkZDQzsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2Vlay5wYWdlLWxhZ29tLWNtcy5sYWdvbS1kZXB0aCxcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZS5wYWdlLWxhZ29tLWNtcy5sYWdvbS1kZXB0aCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJvZHktYmcpOyB9XG5cbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrLmxhZ29tLWZ1dHVyaXN0aWMsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUubGFnb20tZnV0dXJpc3RpYyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJvZHktYmcpOyB9XG5cbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5hcHAtbmF2LW9ubHktbG9nbyxcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAuYXBwLW5hdi1vbmx5LWxvZ28ge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLmFwcC1uYXYtb25seS1sb2dvIC5hcHAtbmF2LW1lbnUsXG4gIC5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAuYXBwLW5hdi1vbmx5LWxvZ28gLmFwcC1uYXYtbWVudSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAuYXBwLW5hdi1vbmx5LWxvZ28gLmFwcC1uYXYtbWVudSA+IC5jb250YWluZXIsXG4gICAgLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC5hcHAtbmF2LW9ubHktbG9nbyAuYXBwLW5hdi1tZW51ID4gLmNvbnRhaW5lciB7XG4gICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAuYXBwLW5hdi1vbmx5LWxvZ28gLmxvZ28taW1nLFxuICAucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLmFwcC1uYXYtb25seS1sb2dvIC5sb2dvLWltZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxvZ28taGVpZ2h0KTtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWFwcC1uYXYtbG9nby13aWR0aCk7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsuc2Nyb2xsLXVwIC5hcHAtbmF2LW9ubHktbG9nbyxcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZS5zY3JvbGwtdXAgLmFwcC1uYXYtb25seS1sb2dvIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAucHJvZHVjdC1iaWxsaW5nLXN3aXRjaGVyIC5idG4tZ3JvdXAgPiAuYnRuOm5vdCguYWN0aXZlKSAuYnRuLXRleHQsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLnByb2R1Y3QtYmlsbGluZy1zd2l0Y2hlciAuYnRuLWdyb3VwID4gLmJ0bjpub3QoLmFjdGl2ZSkgLmJ0bi10ZXh0IHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnByb2R1Y3QtYmlsbGluZy1zd2l0Y2hlciAuYnRuLWRyb3Bkb3duID4gc3Bhbixcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAucHJvZHVjdC1iaWxsaW5nLXN3aXRjaGVyIC5idG4tZHJvcGRvd24gPiBzcGFuIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnByb2R1Y3QtYmlsbGluZy1zd2l0Y2hlciAuYnRuLWRyb3Bkb3duIC5kcm9wZG93bi1jeWNsZS1zd2l0Y2hlciA+IGJ1dHRvbixcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAucHJvZHVjdC1iaWxsaW5nLXN3aXRjaGVyIC5idG4tZHJvcGRvd24gLmRyb3Bkb3duLWN5Y2xlLXN3aXRjaGVyID4gYnV0dG9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnByb2R1Y3QtYmlsbGluZy1zd2l0Y2hlciAuYnRuLWRyb3Bkb3duIC5kcm9wZG93bi1jeWNsZS1zd2l0Y2hlciA+IGJ1dHRvbjpob3ZlciwgLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnByb2R1Y3QtYmlsbGluZy1zd2l0Y2hlciAuYnRuLWRyb3Bkb3duIC5kcm9wZG93bi1jeWNsZS1zd2l0Y2hlciA+IGJ1dHRvbjphY3RpdmUsIC5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5wcm9kdWN0LWJpbGxpbmctc3dpdGNoZXIgLmJ0bi1kcm9wZG93biAuZHJvcGRvd24tY3ljbGUtc3dpdGNoZXIgPiBidXR0b246Zm9jdXMsXG4gIC5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAucHJvZHVjdC1iaWxsaW5nLXN3aXRjaGVyIC5idG4tZHJvcGRvd24gLmRyb3Bkb3duLWN5Y2xlLXN3aXRjaGVyID4gYnV0dG9uOmhvdmVyLFxuICAucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLnByb2R1Y3QtYmlsbGluZy1zd2l0Y2hlciAuYnRuLWRyb3Bkb3duIC5kcm9wZG93bi1jeWNsZS1zd2l0Y2hlciA+IGJ1dHRvbjphY3RpdmUsXG4gIC5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAucHJvZHVjdC1iaWxsaW5nLXN3aXRjaGVyIC5idG4tZHJvcGRvd24gLmRyb3Bkb3duLWN5Y2xlLXN3aXRjaGVyID4gYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAucHJvZHVjdC1iaWxsaW5nLXN3aXRjaGVyIC5idG4tZHJvcGRvd24gLmRyb3Bkb3duLWN5Y2xlLXN3aXRjaGVyID4gYnV0dG9uIC5idG4tdGV4dCxcbiAgLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC5wcm9kdWN0LWJpbGxpbmctc3dpdGNoZXIgLmJ0bi1kcm9wZG93biAuZHJvcGRvd24tY3ljbGUtc3dpdGNoZXIgPiBidXR0b24gLmJ0bi10ZXh0IHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAubWFpbi1mb290ZXIsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLm1haW4tZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAubWFpbi1mb290ZXItZXh0ZW5kZWQtZ3JheSxcbiAgLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC5tYWluLWZvb3Rlci1leHRlbmRlZC1ncmF5IHtcbiAgICBib3JkZXItdG9wOiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1ib3JkZXItdG9wKTsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAuZm9vdGVyLWNvbXBhbnktbG9nbyBpbWcsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLmZvb3Rlci1jb21wYW55LWxvZ28gaW1nIHtcbiAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAuZm9vdGVyLWNvcHlyaWdodCxcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAuZm9vdGVyLWNvcHlyaWdodCB7XG4gIGNvbG9yOiAjRkZGRkZGQ0M7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnNpdGUtYmFubmVyLmJhbGNrLXdlZWstYmFubmVyLWdyYXBoaWMtMSAuYmFubmVyLWdyYXBoaWMtYmFja2dyb3VuZC1zaWRlIGltZyxcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAuc2l0ZS1iYW5uZXIuYmFsY2std2Vlay1iYW5uZXItZ3JhcGhpYy0xIC5iYW5uZXItZ3JhcGhpYy1iYWNrZ3JvdW5kLXNpZGUgaW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMzIwcHg7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnNpdGUtYmFubmVyLmJhbm5lci1ncmF5OjpiZWZvcmUsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLnNpdGUtYmFubmVyLmJhbm5lci1ncmF5OjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5zaXRlLWJhbm5lciAuYmFubmVyLXN1YnRpdGxlLCAucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAuc2l0ZS1iYW5uZXIgLmJhbm5lci10aXRsZSwgLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnNpdGUtYmFubmVyIC5iYW5uZXItdGl0bGUgLmgyLFxuLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC5zaXRlLWJhbm5lciAuYmFubmVyLXN1YnRpdGxlLFxuLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC5zaXRlLWJhbm5lciAuYmFubmVyLXRpdGxlLFxuLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC5zaXRlLWJhbm5lciAuYmFubmVyLXRpdGxlIC5oMiB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC5zaXRlLWJhbm5lciAuYmFubmVyLWNvbnRlbnQsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLnNpdGUtYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAxODBweCAhaW1wb3J0YW50OyB9XG5cbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC50aW1lci1ib3JkZXJlZCAudGltZXItYm94LFxuLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC50aW1lci1ib3JkZXJlZCAudGltZXItYm94IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjU3OyB9XG4gIC5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrIC50aW1lci1ib3JkZXJlZCAudGltZXItYm94LW51bSxcbiAgLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC50aW1lci1ib3JkZXJlZCAudGltZXItYm94LW51bSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnRpbWVyLWJvcmRlcmVkIC50aW1lci1ib3gtbGFiZWwsXG4gIC5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAudGltZXItYm9yZGVyZWQgLnRpbWVyLWJveC1sYWJlbCB7XG4gICAgY29sb3I6ICNGRkZGRkZDQzsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAudGltZXItZGl2aWRlciBzdmcgY2lyY2xlLFxuLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIC50aW1lci1kaXZpZGVyIHN2ZyBjaXJjbGUge1xuICBmaWxsOiAjRkZGRkZGQ0M7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLmZlYXR1cmUtc3RhdCBzcGFuLnRleHQtaGVhZGluZyxcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAuZmVhdHVyZS1zdGF0IHNwYW4udGV4dC1oZWFkaW5nIHtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLmZvbnQtODAsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLmZvbnQtODAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4MHB4O1xuICBsaW5lLWhlaWdodDogODhweDsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAudGV4dC1wcmltYXJ5LWxpZ2h0ZXIsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLnRleHQtcHJpbWFyeS1saWdodGVyIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlcikgIWltcG9ydGFudDsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAuc2l0ZS1iYW5uZXIuYmFubmVyLmJhbGNrLXdlZWstYmFubmVyLWdyYXBoaWMtMSAuY29udGFpbmVyIC5iYW5uZXItZ3JhcGhpYyBpbWcsXG4uaG9tZS1zYWxlLWJsYWNrLXdlZWsgLnNpdGUtYmFubmVyLmJhbm5lci5iYWxjay13ZWVrLWJhbm5lci1ncmFwaGljLTEgLmNvbnRhaW5lciAuYmFubmVyLWdyYXBoaWMgaW1nIHtcbiAgaGVpZ2h0OiA4MjBweDtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IC0xODBweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnNpdGUtYmFubmVyLmJhbm5lci5iYWxjay13ZWVrLWJhbm5lci1ncmFwaGljLTEgLmNvbnRhaW5lciAuYmFubmVyLWJhY2tncm91bmQsXG4gIC5ob21lLXNhbGUtYmxhY2std2VlayAuc2l0ZS1iYW5uZXIuYmFubmVyLmJhbGNrLXdlZWstYmFubmVyLWdyYXBoaWMtMSAuY29udGFpbmVyIC5iYW5uZXItYmFja2dyb3VuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayAuc2l0ZS1iYW5uZXIuYmFubmVyLmJhbGNrLXdlZWstYmFubmVyLWdyYXBoaWMtMSAuY29udGFpbmVyIC5iYW5uZXItY29udGVudCxcbiAgLmhvbWUtc2FsZS1ibGFjay13ZWVrIC5zaXRlLWJhbm5lci5iYW5uZXIuYmFsY2std2Vlay1iYW5uZXItZ3JhcGhpYy0xIC5jb250YWluZXIgLmJhbm5lci1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7IH0gfVxuXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLnNpdGUtYmFubmVyLmJhbm5lci5jaGlyc3RtYXMtc2FsZS1iYW5uZXItZ3JhcGhpYy0xIC5jb250YWluZXIgLmJhbm5lci1ncmFwaGljIGltZyB7XG4gIGhlaWdodDogNjcwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLnNpdGUtYmFubmVyLmJhbm5lci5jaGlyc3RtYXMtc2FsZS1iYW5uZXItZ3JhcGhpYy0xIC5jb250YWluZXIgLmJhbm5lci1iYWNrZ3JvdW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSAuc2l0ZS1iYW5uZXIuYmFubmVyLmNoaXJzdG1hcy1zYWxlLWJhbm5lci1ncmFwaGljLTEgLmNvbnRhaW5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAxMjBweDsgfSB9XG5cbi5ob21lLXNhbGUtYmxhY2std2VlayAuc2VjdGlvbi1zZWNvbmRhcnkgLnRpbWVyIC50aW1lci1ib3guaXMtYm9yZGVyZWQsXG4uaG9tZS1zYWxlLWJsYWNrLXdlZWsgLmJhbm5lci1zZWNvbmRhcnkgLnRpbWVyIC50aW1lci1ib3guaXMtYm9yZGVyZWQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWJsYWNrX3dlZWsgLnRpbWVyIC50aW1lci1ib3guaXMtYm9yZGVyZWQsXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUgLnRpbWVyIC50aW1lci1ib3guaXMtYm9yZGVyZWQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7IH1cblxuLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxlIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgLS1ib2R5LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjMDA2NDNBIDAlLCAjMDAzMzI0IDEwMCUpO1xuICAtLWdyYXktZ3JhZGllbnQtdjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuICAtLWdyYXktYmxvY2stYmctaDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuICAtLWdyYXktZ3JhZGllbnQtaDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuICAtLXdoaXRlLWdyYWRpZW50OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2V0O1xuICAtLWFwcC1uYXYtdG9wLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDA7XG4gIC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLWhlYWRlci1ib3JkZXItYm90dG9tOiAgICAgICAgICAgICAgICAgICAgICAgbm9uZTtcbiAgLS1jbXMtYmxvY2stZGl2aWRlci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIC0tYXBwLW5hdi10b3AtYm9yZGVyLWJvdHRvbTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uZTtcbiAgLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjRkZGRkZGNTc7XG4gIC0tbWFpbi1mb290ZXItYm9yZGVyLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMXB4IHNvbGlkICNGRkZGRkYxQTtcbiAgLS1tYWluLWZvb3Rlci1leHRlbmRlZC1ib3JkZXItdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggc29saWQgI0ZGRkZGRjFBO1xuICAtLW1haW4tZm9vdGVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuICAtLXNpdGUtc2VjdGlvbi10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY7XG4gIC0tc2l0ZS1zZWN0aW9uLXN1YnRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI0ZGRkZGRkVCO1xuICAtLWJhbmVyLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY7XG4gIC0tc2VjdGlvbi1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcbiAgLS1tYWluLWZvb3Rlci1leHRlbmRlZC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuICAtLW1haW4tZm9vdGVyLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNGRkZGRkZDQztcbiAgLS1tYWluLWZvb3Rlci1leHRlbmRlZC1kZXNjLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjRkZGRkZGQ0M7XG4gIC0tbmF2LXRhYnMtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI0IzQjNCMzsgfVxuXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGUsXG4uaG9tZS1jaHJpc3RtYXNfc2FsZSAuc2VjdGlvbi1zZWNvbmRhcnksXG4uaG9tZS1jaHJpc3RtYXNfc2FsZSAuYmFubmVyLXNlY29uZGFyeSB7XG4gIC0tdGV4dC1wcmltYXJ5LWNvbG9yOiAjMjVhNzViO1xuICAtLWJyYW5kLXByaW1hcnktbGlnaHRlcjogIzI1YTc1YjtcbiAgLS1tYWluLWZvb3Rlci1saW5rLWhvdmVyLWNvbG9yOiAjMjVhNzViO1xuICAtLWJ0bi1wcmltYXJ5LWJnOiAjMjVhNzViO1xuICAtLWJ0bi1wcmltYXJ5LWJvcmRlcjogIzI1YTc1YjtcbiAgLS1idG4tcHJpbWFyeS1ob3Zlci1iZzogIzRFQ0E3ODtcbiAgLS1idG4tcHJpbWFyeS1ob3Zlci1ib3JkZXI6ICM0RUNBNzg7XG4gIC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3I6ICMyNWE3NWI7XG4gIC0tYnRuLXByaW1hcnktZmFkZWQtYmc6ICNEOEYzRTE7XG4gIC0tYnRuLXByaW1hcnktZmFkZWQtYm9yZGVyOiAjRDhGM0UxO1xuICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yOiAjMjVhNzViO1xuICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnOiAjQzhFRUQ1O1xuICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlcjogI0M4RUVENTtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmc6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYm9yZGVyOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG5cbi5ob21lLWNocmlzdG1hc19zYWxlIC5zaXRlLWJhbm5lci5iYW5uZXIuY2hpcnN0bWFzLXNhbGUtYmFubmVyLWdyYXBoaWMtMSAuY29udGFpbmVyIC5iYW5uZXItZ3JhcGhpYyBpbWcge1xuICBoZWlnaHQ6IDY3MHB4O1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmhvbWUtY2hyaXN0bWFzX3NhbGUgLnNpdGUtYmFubmVyLmJhbm5lci5jaGlyc3RtYXMtc2FsZS1iYW5uZXItZ3JhcGhpYy0xIC5jb250YWluZXIgLmJhbm5lci1iYWNrZ3JvdW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5ob21lLWNocmlzdG1hc19zYWxlIC5zaXRlLWJhbm5lci5iYW5uZXIuY2hpcnN0bWFzLXNhbGUtYmFubmVyLWdyYXBoaWMtMSAuY29udGFpbmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDEyMHB4OyB9IH1cblxuLmhvbWUtY2hyaXN0bWFzX3NhbGUgLnNpdGUtYmFubmVyLFxuLmhvbWUtY2hyaXN0bWFzX3NhbGUgLnNlY3Rpb24tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgIzAwNjQzQSAwJSwgIzAwMzMyNCAxMDAlKSAhaW1wb3J0YW50OyB9XG5cbi5ob21lLWNocmlzdG1hc19zYWxlIC5zaXRlLWJhbm5lciAuYmFubmVyLWdyYXBoaWMtYmFja2dyb3VuZC1zaWRlIGltZyB7XG4gIG1hcmdpbi10b3A6IC0xMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMzIwcHg7XG4gIG1heC1oZWlnaHQ6IDgyMHB4OyB9XG5cbi5ob21lLWNocmlzdG1hc19zYWxlIC5zZWN0aW9uLXNlY29uZGFyeSAudGltZXIgLnRpbWVyLWJveC5pcy1ib3JkZXJlZCxcbi5ob21lLWNocmlzdG1hc19zYWxlIC5iYW5uZXItc2Vjb25kYXJ5IC50aW1lciAudGltZXItYm94LmlzLWJvcmRlcmVkIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjQpOyB9XG5cbi5ob21lLWNocmlzdG1hc19zYWxlIC5tb2RhbC1iYWNrZHJvcCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoMSwgNzIsIDQyLCAwLjkpIDAlLCByZ2JhKDAsIDE4LCAxMiwgMC45KSAxMDAlKSAhaW1wb3J0YW50OyB9XG5cbjpyb290IC5tb2RhbC1ibGFjay13ZWVrLFxuOnJvb3QgLm1vZGFsLWNocmlzdG1hcy1zYWxlIHtcbiAgLS10ZXh0LWJvZHktY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpO1xuICAtLXRleHQtaGVhZGluZy1jb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7XG4gIC0taW5wdXQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuOCk7IH1cblxuLm1vZGFsLWJsYWNrLXdlZWsgLmNsb3NlLFxuLm1vZGFsLWNocmlzdG1hcy1zYWxlIC5jbG9zZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5tb2RhbC1ibGFjay13ZWVrIC50aW1lcixcbi5tb2RhbC1jaHJpc3RtYXMtc2FsZSAudGltZXIge1xuICBtYXJnaW46IHZhcigtLXNwYWNpbmctMngpIGF1dG87XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5tb2RhbC1ibGFjay13ZWVrIC50aW1lciAudGltZXItYm94LmlzLWJvcmRlcmVkLFxuICAubW9kYWwtY2hyaXN0bWFzLXNhbGUgLnRpbWVyIC50aW1lci1ib3guaXMtYm9yZGVyZWQge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KTsgfVxuXG4uaG9tZS1zYWxlLWJsYWNrLXdlZWsgLm1vZGFsLWJhY2tkcm9wIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgxMywgMjIsIDEwOSwgMC45KSAwJSwgcmdiYSgwLCAwLCAwLCAwLjkpIDEwMCUpICFpbXBvcnRhbnQ7IH1cblxuLm1vZGFsLWJsYWNrLXdlZWsgLm1vZGFsLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjMTYyNEE3IDAlLCAjMDAwMDAwIDEwMCUpICFpbXBvcnRhbnQ7IH1cblxuOnJvb3QgLm1vZGFsLWNocmlzdG1hcy1zYWxlIHtcbiAgLS10ZXh0LXByaW1hcnktY29sb3I6ICMyNWE3NWI7XG4gIC0tYnRuLXByaW1hcnktYmc6IzI1YTc1YjtcbiAgLS1idG4tcHJpbWFyeS1ib3JkZXI6IzI1YTc1YjtcbiAgLS1idG4tcHJpbWFyeS1ob3Zlci1iZzogIzRFQ0E3ODtcbiAgLS1idG4tcHJpbWFyeS1ob3Zlci1ib3JkZXI6ICM0RUNBNzg7XG4gIC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3I6IzI1YTc1YjtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1iZzojRDhGM0UxO1xuICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlcjojRDhGM0UxO1xuICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yOiMyNWE3NWI7XG4gIC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmc6I0M4RUVENTtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXI6I0M4RUVENTtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmc6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYm9yZGVyOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpO1xuICAtLWljaGVjay1hY3RpdmUtYmc6IzI1YTc1YjtcbiAgLS1pY2hlY2stYWN0aXZlLWJvcmRlci1jb2xvcjojMjVhNzViOyB9XG5cbi5tb2RhbC1jaHJpc3RtYXMtc2FsZSAubW9kYWwtY29udGVudCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICMwMDY0M0EgMCUsICMwMDMzMjQgMTAwJSkgIWltcG9ydGFudDsgfVxuXG4uY2xpZW50QWxlcnQuYWxlcnQtYmxhY2std2VlayB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICMxNjI0QTcgMCUsICMwMDAwMDAgMTAwJSkgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lOyB9XG5cbjpyb290IC5jbGllbnRBbGVydC5hbGVydC1jaHJpc3RtYXMtc2FsZSB7XG4gIC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3I6IzI1YTc1YjtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1iZzojRDhGM0UxO1xuICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlcjojRDhGM0UxO1xuICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yOiMyNWE3NWI7XG4gIC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmc6I0M4RUVENTtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXI6I0M4RUVENTtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmc6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcbiAgLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYm9yZGVyOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG5cbi5jbGllbnRBbGVydC5hbGVydC1jaHJpc3RtYXMtc2FsZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICMwMDY0M0EgMCUsICMwMDMzMjQgMTAwJSk7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4vKiBQUkVTRU5UQVRJT04gUEFHRSAqL1xuLmxhZ29tLnByZXNlbnRhdGlvbi1wYWdlIC5wcmVzZW50YXRpb24tc2VjdGlvbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgbWF4LXdpZHRoOiAxOTAwcHg7XG4gIG1hcmdpbjogMTIwcHggYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMjBweDsgfVxuXG4ubGFnb20ucHJlc2VudGF0aW9uLXBhZ2UgLnByZXNlbnRhdGlvbi1zZWN0aW9uLnNpdGUtYmFubmVyOmFmdGVyIHtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuLmxhZ29tLnByZXNlbnRhdGlvbi1wYWdlIC5wcmVzZW50YXRpb24tc2VjdGlvbi5zaXRlLWJhbm5lci5iYW5uZXIgLmJhbm5lci1ib2R5IHtcbiAgbWluLWhlaWdodDogNjQwcHg7XG4gIHotaW5kZXg6IDk5OyB9XG5cbi5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhLmNtcy1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtcGFyZW50Om50aC1jaGlsZCgxKSxcbi5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhLmNtcy1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtcGFyZW50Om50aC1jaGlsZCgyKSB7XG4gIGZsZXgtYmFzaXM6IDE1JTsgfVxuXG4uYWZmaWxpYXRlLXN0YXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMS42ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYWZmaWxpYXRlLXN0YXQgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAyLjRlbTsgfVxuICAuYWZmaWxpYXRlLXN0YXQgaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBmb250LXNpemU6IDRlbTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5hZmZpbGlhdGUtc3RhdCB7XG4gICAgZm9udC1zaXplOiAxLjJlbTsgfVxuICAgIC5hZmZpbGlhdGUtc3RhdCBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4xZW07IH1cbiAgICAuYWZmaWxpYXRlLXN0YXQgaSB7XG4gICAgICBmb250LXNpemU6IDMuNmVtOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5hZmZpbGlhdGUtc3RhdCB7XG4gICAgZm9udC1zaXplOiAxLjBlbTsgfVxuICAgIC5hZmZpbGlhdGUtc3RhdCBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMS42ZW07IH1cbiAgICAuYWZmaWxpYXRlLXN0YXQgaSB7XG4gICAgICBmb250LXNpemU6IDNlbTsgfSB9XG5cbi5wYWdlLXh0cmVhbWNvZGUgLnBhbmVsLnBhbmVsX2Rlc2lnbiB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAucGFnZS14dHJlYW1jb2RlIC5wYW5lbC5wYW5lbF9kZXNpZ24gPiAucGFuZWwtaGVhZGluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29sb3ItdHJhbnNwYXJlbnQpOyB9XG4gIC5wYWdlLXh0cmVhbWNvZGUgLnBhbmVsLnBhbmVsX2Rlc2lnbiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQW5ub3VuY2VtZW50cyBMaXN0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5hbm5vdW5jZW1lbnRzLWxpc3QubGlzdC1ib3hlZCB7XG4gIGdhcDogMzJweDtcbiAgbWF4LXdpZHRoOiA5MjBweDtcbiAgbWFyZ2luOiAzMnB4IGF1dG8gdmFyKC0tbWFpbi1ib2R5LXBhZGRpbmctdikgYXV0bztcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5hbm5vdW5jZW1lbnRzLWxpc3QubGlzdC1ib3hlZCAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saXN0LWdyb3VwLWJnKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWJhc2UpO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5hbm5vdW5jZW1lbnRzLWxpc3QubGlzdC1ib3hlZCAubGlzdC1ncm91cC1pdGVtIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZzo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgICAuYW5ub3VuY2VtZW50cy1saXN0Lmxpc3QtYm94ZWQgLmxpc3QtZ3JvdXAtaXRlbSAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpOyB9XG4gICAgLmFubm91bmNlbWVudHMtbGlzdC5saXN0LWJveGVkIC5saXN0LWdyb3VwLWl0ZW0tZm9vdGVyIHtcbiAgICAgIGdhcDogMjRweDsgfVxuICAgIC5hbm5vdW5jZW1lbnRzLWxpc3QubGlzdC1ib3hlZCAubGlzdC1ncm91cC1pdGVtLWxpbms6aG92ZXIgLmFubm91bmNlbWVudC1kYXRlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG5cbi5hbm5vdW5jZW1lbnRzLWxpc3QgLmRldGFpbHMge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuYW5ub3VuY2VtZW50cy1saXN0IC5kZXRhaWxzIGEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG5cbi5hbm5vdW5jZW1lbnRzLWxpc3QgLmFubm91bmNlbWVudC1kYXRlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG5cbi5hbm5vdW5jZW1lbnRzLWxpc3QgLnBhZ2luYXRpb24ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItd2lkdGg6IDFweCAwIDA7IH1cblxuLmFubm91bmNlbWVudHMtbGlzdC5saXN0LWdyb3VwLWxnIC5hbm5vdW5jZW1lbnQtZGF0ZSBpIHtcbiAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5hbm5vdW5jZW1lbnRzLWxpc3QubGlzdC1ncm91cC1sZyAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IHZhcigtLXNwYWNpbmctMXgpIDA7IH1cbiAgLmFubm91bmNlbWVudHMtbGlzdC5saXN0LWdyb3VwLWxnIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZzpiZWZvcmUge1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5BcnRpY2xlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5hcnRpY2xlIC5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1sZyk7IH1cblxuLmFydGljbGUtZGF0ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAuYXJ0aWNsZS1kYXRlIGkge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLmFydGljbGUtZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG4gIC5hcnRpY2xlLWRldGFpbHMgPiBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7IH1cbiAgICAuYXJ0aWNsZS1kZXRhaWxzID4gbGkgPiBpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7IH1cbiAgICAuYXJ0aWNsZS1kZXRhaWxzID4gbGkgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuYXJ0aWNsZS1kZXRhaWxzID4gbGkgPiB1bCA+IGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAgIC5hcnRpY2xlLWRldGFpbHMgPiBsaSA+IHVsIGEge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTsgfVxuICAgICAgICAuYXJ0aWNsZS1kZXRhaWxzID4gbGkgPiB1bCBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7IH1cblxuLmFydGljbGUtdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG4gIC5hcnRpY2xlLXRpdGxlID4gKiB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5hcnRpY2xlLXRpdGxlIC5idG4tcHJpbnQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLWJhc2UpO1xuICAgIG9yZGVyOiAyOyB9XG4gICAgLmFydGljbGUtdGl0bGUgLmJ0bi1wcmludDpub3QoOmhvdmVyKSB7XG4gICAgICBjb2xvcjogI2I5YmRjNTsgfVxuXG4uYXJ0aWNsZS1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXh4bGcpOyB9XG5cbi5hcnRpY2xlLXNoYXJlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLmFydGljbGUtc2hhcmUgLnNoYXJlLXZpYSB7XG4gICAgbWFyZ2luOiAwIDE2cHggMCAwOyB9XG4gIC5hcnRpY2xlLXNoYXJlID4gYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7IH1cbiAgICAuYXJ0aWNsZS1zaGFyZSA+IGE6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWxpbmstY29sb3IpOyB9XG4gIC5hcnRpY2xlLXNoYXJlID4gc3BhbiArIHNwYW4ge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gIC5hcnRpY2xlLXNoYXJlIC50d2l0dGVyLXNoYXJlLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMTJweDsgfVxuXG4uYXJ0aWNsZS1jb21tZW50cyxcbi5hcnRpY2xlICsgLnNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXh4bGcpOyB9XG5cbi5hcnRpY2xlIHByZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1jb2xvcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNXgpOyB9XG5cbi5hcnRpY2xlLXJhdGUgLnBhbmVsLWJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuXG4uYXJ0aWNsZS1yYXRlIC50ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAuYXJ0aWNsZS1yYXRlIC50ZXh0IHNwYW4ge1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuYXJ0aWNsZS1yYXRlIC50ZXh0IHNwYW4gaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpOyB9XG5cbi5hcnRpY2xlLXJhdGUgZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4OiAxO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5hcnRpY2xlLXJhdGUgZm9ybSAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmFydGljbGUtcmF0ZSBmb3JtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmFydGljbGUtcmF0ZSBmb3JtIGRpdjpub3QoLnRleHQpIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH0gfVxuXG4uY29tbWVudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLW1kKTsgfVxuICAuY29tbWVudC10b3Age1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuY29tbWVudC11c2VyID4gaSB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1tZCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLW1kKTsgfVxuICAuY29tbWVudC11c2VyIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gIC5jb21tZW50LWRhdGUge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG4gIC5jb21tZW50LWJvZHkge1xuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzI0cHgpIHtcbiAgLmFydGljbGUtZm9vdGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5hcnRpY2xlLXNoYXJlIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5hcnRpY2xlLXNoYXJlID4gc3BhbiArIHNwYW4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQW5ub3VuY2VtZW50cyBUb29sYmFyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5hbm5vdW5jZW1lbnRzLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTBweDtcbiAgbWF4LXdpZHRoOiA5MjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi10b3A6IC0xMjBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgICAuYW5ub3VuY2VtZW50cy10b29sYmFyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IDE2cHg7IH0gfVxuICAuYW5ub3VuY2VtZW50cy10b29sYmFyIC50bGQtdG9vbGJhciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB3aWR0aDogdW5zZXQ7XG4gICAgei1pbmRleDogMTAwMDsgfVxuICAgIC5hbm5vdW5jZW1lbnRzLXRvb2xiYXIgLnRsZC10b29sYmFyIGlucHV0IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICAgLmFubm91bmNlbWVudHMtdG9vbGJhciAudGxkLXRvb2xiYXIgaW5wdXQge1xuICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7IH0gfVxuICAgIC5hbm5vdW5jZW1lbnRzLXRvb2xiYXIgLnRsZC10b29sYmFyIC5zZWFyY2gtZmllbGQtaWNvbiB7XG4gICAgICBjb2xvcjogI0FDQUZCOTsgfVxuICAuYW5ub3VuY2VtZW50cy10b29sYmFyIGZvcm0ge1xuICAgIHotaW5kZXg6IDEwMDAwMDsgfVxuICAuYW5ub3VuY2VtZW50cy10b29sYmFyIC5kcm9wZG93bi1maWx0ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDE2cHg7XG4gICAgei1pbmRleDogMTAwMDsgfVxuICAgIC5hbm5vdW5jZW1lbnRzLXRvb2xiYXIgLmRyb3Bkb3duLWZpbHRlciA+IHNwYW4ge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYW5ub3VuY2VtZW50cy10b29sYmFyIC5kcm9wZG93bi1maWx0ZXIgLmRyb3Bkb3duIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pOyB9XG4gICAgLmFubm91bmNlbWVudHMtdG9vbGJhciAuZHJvcGRvd24tZmlsdGVyIC5idG4ge1xuICAgICAgcGFkZGluZzogMTBweCAxNnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7IH1cblxuLmxhZ29tLW1vZGVybiAuYW5ub3VuY2VtZW50cy10b29sYmFyIC5kcm9wZG93bi1maWx0ZXIgPiBzcGFuIHtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYXltZW50IE1ldGhvZHNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLWNjIC5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogMDsgfVxuXG4uY2MtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiB1bnNldDsgfVxuICAuY2MtaXRlbSA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgLmNjLWl0ZW0taWNvbiB7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmNjLWl0ZW0taWNvbiBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLmNjLWl0ZW0taWNvbiBpLFxuICAgIC5jYy1pdGVtLWljb24gLmxzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7IH1cbiAgLmNjLWl0ZW0tbmFtZSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIHdpZHRoOiAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgICAuY2MtaXRlbS1uYW1lLXBheXBhbCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gIC5jYy1pdGVtLWRlc2Mge1xuICAgIGZsZXg6IDE7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgLmNjLWl0ZW0tc3RhdHVzIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5jYy1pdGVtLWFjdGlvbnMge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWluLXdpZHRoOiAyMDVweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5jYy1pdGVtLWFjdGlvbnMgLmxhYmVsLFxuICAgIC5jYy1pdGVtLWFjdGlvbnMgLmJ0bi1kZWZhdWx0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLmNjLWl0ZW0tZXhwaXJ5IHtcbiAgICB3aWR0aDogMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cbiAgICAuY2MtaXRlbS1leHBpcnkgc3BhbiB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICAgIHBhZGRpbmctbGVmdDogNHB4OyB9XG4gIC5jYy1pdGVtICsgLmNjLWl0ZW0ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuXG4uY2MtbGlzdC1iYW5rIC5jYy1pdGVtLWljb24ge1xuICBoZWlnaHQ6IDMycHg7IH1cblxuLmNjLWxpc3QtYmFuayAuY2MtbmFtZSB7XG4gIHdpZHRoOiA0MCU7XG4gIG1heC13aWR0aDogNDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmNjLWl0ZW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5jYy1pdGVtLWljb24ge1xuICAgICAgb3JkZXI6IDA7IH1cbiAgICAuY2MtaXRlbS1uYW1lIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgd2lkdGg6IGNhbGMoNzAlIC0gNDhweCk7XG4gICAgICBtaW4td2lkdGg6IGNhbGMoNzAlIC0gNDhweCk7IH1cbiAgICAuY2MtaXRlbS1kZXNjIHtcbiAgICAgIG9yZGVyOiAzO1xuICAgICAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIG1heC13aWR0aDogNjAlO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgfVxuICAgIC5jYy1pdGVtLXN0YXR1cyB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAuY2MtaXRlbS1hY3Rpb25zIHtcbiAgICAgIG1pbi13aWR0aDogMzAlO1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xuICAgICAgb3JkZXI6IDQ7XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgbWluLXdpZHRoOiA0MCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLmNjLWl0ZW0tZGVzYyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMDAlOyB9XG4gICAgLmNjLWl0ZW0tZGVzYy5lbXB0eSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5jYy1pdGVtLWFjdGlvbnMge1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA1NnB4O1xuICAgIG1hcmdpbi1sZWZ0OiB1bnNldDsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGF5bWVudCBNZXRob2RzIC0gQ0hlY2tvdXRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmNjLWlucHV0LWNvbnRhaW5lciAjaW5wdXREZXNjcmlwdGlvbkNvbnRhaW5lci5jb2wtbWQtNixcbi5jYy1pbnB1dC1jb250YWluZXIgI2NhcmROdW1iZXJDb250YWluZXIuY29sLW1kLTYge1xuICBtYXgtd2lkdGg6IHVuc2V0OyB9XG5cbi5jYy1pbnB1dC1jb250YWluZXIgI2lucHV0RGVzY3JpcHRpb25Db250YWluZXIub2Zmc2V0LW1kLTMsXG4uY2MtaW5wdXQtY29udGFpbmVyICNjYXJkTnVtYmVyQ29udGFpbmVyLm9mZnNldC1tZC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmNjLWlucHV0LWNvbnRhaW5lciAuY2MtaXRlbSB7XG4gIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAuY2MtaW5wdXQtY29udGFpbmVyIC5jYy1pdGVtLWNoZWNrYm94IHtcbiAgICBtYXJnaW4tbGVmdDogLThweDsgfVxuICAuY2MtaW5wdXQtY29udGFpbmVyIC5jYy1pdGVtLWRlc2Mge1xuICAgIHdpZHRoOiA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7IH1cbiAgLmNjLWlucHV0LWNvbnRhaW5lciAuY2MtaXRlbSArIC5jYy1pdGVtOmJlZm9yZSB7XG4gICAgY29udGVudDogdW5zZXQ7IH1cbiAgLmNjLWlucHV0LWNvbnRhaW5lciAuY2MtaXRlbS5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjg7IH1cbiAgLmNjLWlucHV0LWNvbnRhaW5lciAuY2MtaXRlbS5hY3RpdmUsIC5jYy1pbnB1dC1jb250YWluZXIgLmNjLWl0ZW06aG92ZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7IH1cblxuLmNjLWlucHV0LWNvbnRhaW5lciAjbmV3Q2FyZEluZm8ge1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uY2MtaW5wdXQtY29udGFpbmVyICNzdHJpcGVFbGVtZW50cyB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5jYy1pbnB1dC1jb250YWluZXIgI3N0cmlwZUVsZW1lbnRzIC5zdHJpcGUtY2FyZHMtaW5wdXRzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5jYy1pbnB1dC1jb250YWluZXIgI3N0cmlwZUVsZW1lbnRzIC5zdHJpcGUtY2FyZHMtaW5wdXRzIGRpdltjbGFzcyo9Y29sLV0ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWF4LXdpZHRoOiB1bnNldDsgfVxuICAgIC5jYy1pbnB1dC1jb250YWluZXIgI3N0cmlwZUVsZW1lbnRzIC5zdHJpcGUtY2FyZHMtaW5wdXRzLmNvbC1tZC04IHtcbiAgICAgIG1heC13aWR0aDogdW5zZXQ7IH1cbiAgICAuY2MtaW5wdXQtY29udGFpbmVyICNzdHJpcGVFbGVtZW50cyAuc3RyaXBlLWNhcmRzLWlucHV0cy5vZmZzZXQtbWQtMiB7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYy1pbnB1dC1jb250YWluZXIgI3N0cmlwZUVsZW1lbnRzIC5zdHJpcGUtY2FyZHMtaW5wdXRzIC5jb2wtbWQtNiB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgIC5jYy1pbnB1dC1jb250YWluZXIgI3N0cmlwZUVsZW1lbnRzIC5zdHJpcGUtY2FyZHMtaW5wdXRzIC5jb2wtbWQtMyB7XG4gICAgICAgIHdpZHRoOiAyNSU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgLmNjLWlucHV0LWNvbnRhaW5lciAjc3RyaXBlRWxlbWVudHMgLnN0cmlwZS1jYXJkcy1pbnB1dHMgLmNvbC1tZC02IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHggIWltcG9ydGFudDsgfVxuICAgICAgLmNjLWlucHV0LWNvbnRhaW5lciAjc3RyaXBlRWxlbWVudHMgLnN0cmlwZS1jYXJkcy1pbnB1dHMgLmNvbC1tZC0zIHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG5cbiNzdHJpcGVFbGVtZW50cyAuY29udHJvbC1sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBmbG9hdDogbm9uZTsgfVxuXG4jc3RyaXBlRWxlbWVudHMgLlN0cmlwZUVsZW1lbnQge1xuICBwYWRkaW5nLXRvcDogMTJweDsgfVxuXG4jc3RyaXBlRWxlbWVudHMgZGl2W2NsYXNzKj1jb2wtXSB7XG4gIGZsb2F0OiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAjc3RyaXBlRWxlbWVudHMgLmNvbC1zbS03IHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbiNpYmFuRWxlbWVudENvbnRhaW5lciBkaXZbY2xhc3MqPWNvbC1dIHtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnBhZ2Utdmlld2NhcnQgI2ZybUNoZWNrb3V0LnBheXBhbF9wcGNwdi1wYXltZW50LWZvcm0gLnNlY3Rpb24jY3JlZGl0Q2FyZElucHV0RmllbGRzIHtcbiAgYmFja2dyb3VuZDogdW5zZXQ7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnBhZ2Utdmlld2NhcnQgI2ZybUNoZWNrb3V0LnBheXBhbF9wcGNwdi1wYXltZW50LWZvcm0gLnNlY3Rpb24jY3JlZGl0Q2FyZElucHV0RmllbGRzIC5wYXltZW50LWluc3RydWN0aW9ucyB7XG4gICAgb3JkZXI6IDE7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5wYWdlLXZpZXdjYXJ0ICNmcm1DaGVja291dC5wYXlwYWxfcHBjcHYtcGF5bWVudC1mb3JtIC5zZWN0aW9uI2NyZWRpdENhcmRJbnB1dEZpZWxkcyAucGF5bWVudC1pbnN0cnVjdGlvbnMgKyAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBvcmRlcjogMDsgfVxuICAgICAgLnBhZ2Utdmlld2NhcnQgI2ZybUNoZWNrb3V0LnBheXBhbF9wcGNwdi1wYXltZW50LWZvcm0gLnNlY3Rpb24jY3JlZGl0Q2FyZElucHV0RmllbGRzIC5wYXltZW50LWluc3RydWN0aW9ucyArIC5zZWN0aW9uLWhlYWRpbmcgKyAucGFuZWwtZm9ybSB7XG4gICAgICAgIG9yZGVyOiAyOyB9XG4gIC5wYWdlLXZpZXdjYXJ0ICNmcm1DaGVja291dC5wYXlwYWxfcHBjcHYtcGF5bWVudC1mb3JtIC5zZWN0aW9uI2NyZWRpdENhcmRJbnB1dEZpZWxkcyB1bC5wYW5lbC10YWJzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IHVuc2V0O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1wYW5lbC1ib3JkZXItZGl2aWRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgbWFyZ2luOiB1bnNldDtcbiAgICBwYWRkaW5nOiAwIGNhbGModmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKSAtIHZhcigtLW5hdi1saW5rLXBhZGRpbmctaCkpO1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnBhZ2Utdmlld2NhcnQgI2ZybUNoZWNrb3V0LnBheXBhbF9wcGNwdi1wYXltZW50LWZvcm0gLnNlY3Rpb24jY3JlZGl0Q2FyZElucHV0RmllbGRzIC5leGlzdGluZy1jYy1ncmlkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5wYWdlLXZpZXdjYXJ0ICNmcm1DaGVja291dC5wYXlwYWxfcHBjcHYtcGF5bWVudC1mb3JtIC5zZWN0aW9uI2NyZWRpdENhcmRJbnB1dEZpZWxkcyAuZXhpc3RpbmctY2MtZ3JpZCAuY2MtaXRlbS1uYW1lIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuICAgICAgLnBhZ2Utdmlld2NhcnQgI2ZybUNoZWNrb3V0LnBheXBhbF9wcGNwdi1wYXltZW50LWZvcm0gLnNlY3Rpb24jY3JlZGl0Q2FyZElucHV0RmllbGRzIC5leGlzdGluZy1jYy1ncmlkIC5jYy1pdGVtLWRlc2Mge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAucGFnZS12aWV3Y2FydCAjZnJtQ2hlY2tvdXQucGF5cGFsX3BwY3B2LXBheW1lbnQtZm9ybSAuc2VjdGlvbiNjcmVkaXRDYXJkSW5wdXRGaWVsZHMgLmV4aXN0aW5nLWNjLWdyaWQgLmNjLWl0ZW0tYWN0aW9ucyB7XG4gICAgICAgIG1pbi13aWR0aDogdW5zZXQ7IH0gfVxuICAucGFnZS12aWV3Y2FydCAjZnJtQ2hlY2tvdXQucGF5cGFsX3BwY3B2LXBheW1lbnQtZm9ybSAuc2VjdGlvbiNjcmVkaXRDYXJkSW5wdXRGaWVsZHMgLmNjLWlucHV0LWNvbnRhaW5lciAucGF5cGFsLWJ1dHRvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IC0yNHB4OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGF5bWVudCBNZXRob2RzIC0gUGFnZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uZmllbGQtZXJyb3ItbXNnIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZmllbGRncm91cC1hdXhmaWVsZHMgI2JpbGxpbmdDb250YWN0c0NvbnRhaW5lciAucmFkaW8ge1xuICBtYXJnaW46IDEwcHggMDsgfVxuICAuZmllbGRncm91cC1hdXhmaWVsZHMgI2JpbGxpbmdDb250YWN0c0NvbnRhaW5lciAucmFkaW8gbGFiZWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5maWVsZGdyb3VwLWF1eGZpZWxkcyAjYmlsbGluZ0NvbnRhY3RzQ29udGFpbmVyIC5yYWRpbyBsYWJlbCBzcGFuIHtcbiAgICAgIG1hcmdpbjogMCA0cHg7IH1cblxuLmZpZWxkZ3JvdXAtbG9hZGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDYwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5maWVsZGdyb3VwLWNyZWRpdGNhcmQgI3N0cmlwZUVsZW1lbnRzIHtcbiAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xMnB4OyB9XG4gIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQgI3N0cmlwZUVsZW1lbnRzOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjsgfVxuICAuZmllbGRncm91cC1jcmVkaXRjYXJkICNzdHJpcGVFbGVtZW50cyAuY2MtYmlsbGluZy1hZGRyZXNzIHtcbiAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLmZpZWxkZ3JvdXAtY3JlZGl0Y2FyZCAjc3RyaXBlRWxlbWVudHMgLmNjLWJpbGxpbmctYWRkcmVzczpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQgI3N0cmlwZUVsZW1lbnRzIC5jYy1iaWxsaW5nLWFkZHJlc3MgLmNvbC1zbS00LCAuZmllbGRncm91cC1jcmVkaXRjYXJkICNzdHJpcGVFbGVtZW50cyAuY2MtYmlsbGluZy1hZGRyZXNzIC5jb2wtc20tNywgLmZpZWxkZ3JvdXAtY3JlZGl0Y2FyZCAjc3RyaXBlRWxlbWVudHMgLmNjLWJpbGxpbmctYWRkcmVzcyAuY29sLWxnLTgge1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgIG1heC13aWR0aDogdW5zZXQ7IH1cbiAgICAuZmllbGRncm91cC1jcmVkaXRjYXJkICNzdHJpcGVFbGVtZW50cyAuY2MtYmlsbGluZy1hZGRyZXNzIC5jb2wtc20tMiB7XG4gICAgICBmbGV4OiBub25lO1xuICAgICAgbWF4LXdpZHRoOiB1bnNldDsgfVxuICAuZmllbGRncm91cC1jcmVkaXRjYXJkICNzdHJpcGVFbGVtZW50cyAuY29sLXNtLTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQgI3N0cmlwZUVsZW1lbnRzIC5TdHJpcGVFbGVtZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMTJweDsgfVxuICAuZmllbGRncm91cC1jcmVkaXRjYXJkICNzdHJpcGVFbGVtZW50cyBkaXZbY2xhc3MqPWNvbC1dIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsb2F0OiBub25lOyB9XG4gIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQgI3N0cmlwZUVsZW1lbnRzIC5jb250cm9sLWxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsb2F0OiBub25lOyB9XG5cbi5maWVsZGdyb3VwLWNyZWRpdGNhcmQgLmNvbC1sZy04IHtcbiAgZmxleDogbm9uZTtcbiAgbWF4LXdpZHRoOiB1bnNldDsgfVxuXG4uZmllbGRncm91cC1jcmVkaXRjYXJkID4gLnJvdyAuY29sLWxnLTggLnJvdyAuY29sLXhzLTYge1xuICBtYXgtd2lkdGg6IDUwJTtcbiAgcGFkZGluZzogMCAxMnB4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZmllbGRncm91cC1jcmVkaXRjYXJkIC5jYy1udW1iZXItZmllbGQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY3JlZGl0Y2FyZHMvY3JlZGl0LWNhcmQuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAhaW1wb3J0YW50OyB9XG4gIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQgLmNjLW51bWJlci1maWVsZC52aXNhIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY3JlZGl0Y2FyZHMvdmlzYS5zdmdcIik7IH1cbiAgLmZpZWxkZ3JvdXAtY3JlZGl0Y2FyZCAuY2MtbnVtYmVyLWZpZWxkLm1hc3RlcmNhcmQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jcmVkaXRjYXJkcy9tYXN0ZXJjYXJkLnN2Z1wiKTsgfVxuICAuZmllbGRncm91cC1jcmVkaXRjYXJkIC5jYy1udW1iZXItZmllbGQuYW1leCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NyZWRpdGNhcmRzL2FtZXJpY2FuLWV4cHJlc3Muc3ZnXCIpOyB9XG4gIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQgLmNjLW51bWJlci1maWVsZC5kaXNjb3ZlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NyZWRpdGNhcmRzL2Rpc2NvdmVyLnN2Z1wiKTsgfVxuICAuZmllbGRncm91cC1jcmVkaXRjYXJkIC5jYy1udW1iZXItZmllbGQuamNiIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY3JlZGl0Y2FyZHMvamNiLnN2Z1wiKTsgfVxuXG4uZmllbGRncm91cC1jcmVkaXRjYXJkICNiaWxsaW5nQWRkcmVzc0Nob2ljZSAucmFkaW8ge1xuICBtYXJnaW46IDEwcHggMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTMyMHB4KSB7XG4gIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQgLmNvbC1sZy04IHtcbiAgICB3aWR0aDogNjYuNjY2NjYlOyB9XG4gIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQgLmZpZWxkZ3JvdXAtY3JlZGl0Y2FyZCAjc3RyaXBlRWxlbWVudHMge1xuICAgIG1heC13aWR0aDogY2FsYyg2Ni42NjY2NyUgKyB2YXIoLS1zcGFjaW5nLTJ4KSk7IH0gfVxuXG4jY3Z2V2hlcmVMaW5rLCAjc3RyaXBlQ3ZjV2hlcmUge1xuICBwYWRkaW5nOiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1pbnZvaWNlLXBheW1lbnQgLm1haW4tZ3JpZCAubWFpbi1jb250ZW50ICNmcm1QYXltZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzIwcHgpIHtcbiAgLmZpZWxkZ3JvdXAtY3JlZGl0Y2FyZCAjc3RyaXBlRWxlbWVudHMge1xuICAgIG1heC13aWR0aDogY2FsYyg2Ni42NjY2NyUgKyB2YXIoLS1zcGFjaW5nLTJ4KSk7IH0gfVxuXG4ucGFnZS1pbnZvaWNlLXBheW1lbnQgI3BheXBhbF9hY2RjX2lucHV0X2NvbnRhaW5lciAucm93LFxuLnBhZ2UtYWNjb3VudC1wYXltZW50bWV0aG9kcy1tYW5hZ2UgI3BheXBhbF9hY2RjX2lucHV0X2NvbnRhaW5lciAucm93IHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgICAucGFnZS1pbnZvaWNlLXBheW1lbnQgI3BheXBhbF9hY2RjX2lucHV0X2NvbnRhaW5lciAucm93IC5jb2wtc20tNyxcbiAgICAucGFnZS1hY2NvdW50LXBheW1lbnRtZXRob2RzLW1hbmFnZSAjcGF5cGFsX2FjZGNfaW5wdXRfY29udGFpbmVyIC5yb3cgLmNvbC1zbS03IHtcbiAgICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfSB9XG4gIC5wYWdlLWludm9pY2UtcGF5bWVudCAjcGF5cGFsX2FjZGNfaW5wdXRfY29udGFpbmVyIC5yb3cgI3BheXBhbF9hY2RjLUNyZWRpdENhcmQsXG4gIC5wYWdlLWludm9pY2UtcGF5bWVudCAjcGF5cGFsX2FjZGNfaW5wdXRfY29udGFpbmVyIC5yb3cgI3BheXBhbF9hY2RjLUV4cGlyeURhdGUsXG4gIC5wYWdlLWludm9pY2UtcGF5bWVudCAjcGF5cGFsX2FjZGNfaW5wdXRfY29udGFpbmVyIC5yb3cgI3BheXBhbF9hY2RjLUN2YyxcbiAgLnBhZ2UtYWNjb3VudC1wYXltZW50bWV0aG9kcy1tYW5hZ2UgI3BheXBhbF9hY2RjX2lucHV0X2NvbnRhaW5lciAucm93ICNwYXlwYWxfYWNkYy1DcmVkaXRDYXJkLFxuICAucGFnZS1hY2NvdW50LXBheW1lbnRtZXRob2RzLW1hbmFnZSAjcGF5cGFsX2FjZGNfaW5wdXRfY29udGFpbmVyIC5yb3cgI3BheXBhbF9hY2RjLUV4cGlyeURhdGUsXG4gIC5wYWdlLWFjY291bnQtcGF5bWVudG1ldGhvZHMtbWFuYWdlICNwYXlwYWxfYWNkY19pbnB1dF9jb250YWluZXIgLnJvdyAjcGF5cGFsX2FjZGMtQ3ZjIHtcbiAgICBtYXJnaW46IC0wLjM3NXJlbTsgfVxuXG4ucGFnZS1pbnZvaWNlLXBheW1lbnQgLnBheXBhbF9wcGNwdi1wYXltZW50LWZvcm0gI3BheW1lbnRHYXRld2F5SW5wdXQgKyAuZmllbGRncm91cC1jcmVkaXRjYXJkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5wYWdlLWludm9pY2UtcGF5bWVudCAucGF5cGFsX3BwY3B2LXBheW1lbnQtZm9ybSAjcGF5bWVudEdhdGV3YXlJbnB1dCAucGF5bWVudC1pbnN0cnVjdGlvbnMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFnZS1pbnZvaWNlLXBheW1lbnQgLnBheXBhbF9wcGNwdi1wYXltZW50LWZvcm0gLmNjLWl0ZW0tbmFtZSB7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7IH1cbiAgLnBhZ2UtaW52b2ljZS1wYXltZW50IC5wYXlwYWxfcHBjcHYtcGF5bWVudC1mb3JtIC5jYy1pdGVtLWRlc2Mge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhZ2UtaW52b2ljZS1wYXltZW50IC5wYXlwYWxfcHBjcHYtcGF5bWVudC1mb3JtIC5jYy1pdGVtLWFjdGlvbnMge1xuICAgIG1pbi13aWR0aDogdW5zZXQ7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJpbGxpbmcgLSBNYXNzIFBheVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4udGFibGUtbWFzc3BheSAudGFibGUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC50YWJsZS1tYXNzcGF5IC50YWJsZSB0ciB0ZCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHBhZGRpbmctdG9wOiA0cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDRweDsgfVxuICAgIC50YWJsZS1tYXNzcGF5IC50YWJsZSB0ciB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjJweDtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG4gIC50YWJsZS1tYXNzcGF5IC50YWJsZSB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4udGFibGUtbWFzc3BheSAubWFzc3BheS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTsgfVxuICAudGFibGUtbWFzc3BheSAubWFzc3BheS10aXRsZSA+IGkge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5CaWxsaW5nIC0gT3RoZXJzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbiNiaWxsaW5nQWRkcmVzc0Nob2ljZSAucmFkaW8taW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbiNiaWxsaW5nQWRkcmVzc0Nob2ljZSBsYWJlbCB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAjYmlsbGluZ0FkZHJlc3NDaG9pY2UgbGFiZWwgPiBzcGFuLFxuICAjYmlsbGluZ0FkZHJlc3NDaG9pY2UgbGFiZWwgPiBzdHJvbmcge1xuICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbi5hdXRoM2QtYXJlYSB7XG4gIGJvcmRlcjogMDsgfVxuXG4uc3VibWl0LTNkIHtcbiAgd2lkdGg6IDgwJTtcbiAgYm9yZGVyOiAwOyB9XG5cbiNzdHJpcGVDdmNXaGVyZSxcbiNjdnZXaGVyZUxpbmsge1xuICBwYWRkaW5nOiAwOyB9XG5cbiNuZXdCaWxsaW5nQWRkcmVzcyB7XG4gIHBhZGRpbmctbGVmdDogMzBweDsgfVxuXG4jZnJtUmVtb3RlQ2FyZFByb2Nlc3Mge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucGF5bWVudC1mb3JtLnBheW1lbnQtYnRuLWNvbnRhaW5lciA+IGRpdiB7XG4gIG1heC13aWR0aDogdW5zZXQgIWltcG9ydGFudDsgfVxuXG4ucGF5bWVudC1mb3JtLnBheW1lbnQtYnRuLWNvbnRhaW5lciBidXR0b24sXG4ucGF5bWVudC1mb3JtLnBheW1lbnQtYnRuLWNvbnRhaW5lciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuLnBheW1lbnQtZm9ybS5wYXltZW50LWJ0bi1jb250YWluZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5wYXltZW50LWZvcm0ucGF5bWVudC1idG4tY29udGFpbmVyIC5idG4ge1xuICB3aWR0aDogMTAwJTsgfVxuXG4jcGF5cGFsLWJ1dHRvbi1jb250YWluZXIgPiBkaXYge1xuICBtaW4td2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7IH1cblxuLnBheW1lbnQtYnRuLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkVycm9yXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5lcnJvci1wYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdmFyKC0tZXJyb3ItcGFnZS1iZyk7XG4gIHBhZGRpbmc6IHZhcigtLWJhbm5lci1jb250ZW50LXBhZGRpbmctdikgMDsgfVxuICAuZXJyb3ItcGFnZSAuY29udGFpbmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuZXJyb3ItcGFnZS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNTJweDtcbiAgICBsaW5lLWhlaWdodDogMTc4cHg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICAuZXJyb3ItcGFnZS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTI4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTBweDsgfSB9XG4gIC5lcnJvci1wYWdlIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDM0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5lcnJvci1wYWdlIHAge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDgpOyB9XG4gIC5lcnJvci1wYWdlLWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAuZXJyb3ItcGFnZS1hY3Rpb25zIC5idG4gKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzQ5cHgpIHtcbiAgLmVycm9yLXBhZ2UtYWN0aW9ucyAuYnRuIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfSB9XG5cbi5wYWdlLWNsaWVudGFyZWFob21lIC50aWxlcyB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAucGFnZS1jbGllbnRhcmVhaG9tZSAudGlsZXMgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG5cbi5wYWdlLWNsaWVudGFyZWFob21lIC50aWxlIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRGFzaGJvYXJkIC0gUGFuZWxzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdCB7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ib3JkZXIpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0OmZvY3VzLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQ6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlcik7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQ6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLm9wZW4gPiAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYm9yZGVyKTsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgICAub3BlbiA+IC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgICAub3BlbiA+IC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgICAub3BlbiA+IC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAgIC5vcGVuID4gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQ6YWN0aXZlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQuYWN0aXZlLFxuICAgIC5vcGVuID4gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0LmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdFtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUgLmJ0bi1kZWZhdWx0IHtcbiAgICAgIG9wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHRbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAuYnRuLWRlZmF1bHQuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdFtkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCkge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHk6IDAuNjsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlIC5idG4tZGVmYXVsdCAuYmFkZ2Uge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSA+IGkge1xuICAgIG9yZGVyOiAyO1xuICAgIGNvbG9yOiB2YXIoLS1kZWNvcmF0aW9uLWljb25zKTsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSA+IC5mYXMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSAucHVsbC1yaWdodCB7XG4gICAgb3JkZXI6IDE7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG5cbi5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkge1xuICBtYXgtaGVpZ2h0OiAzMjNweDsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4ge1xuICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYm9yZGVyKTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOmZvY3VzLXZpc2libGUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5mb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlcik7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgIC5vcGVuID4gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlcik7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgLm9wZW4gPiAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgICAgLm9wZW4gPiAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgICAgLm9wZW4gPiAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgICAub3BlbiA+IC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuOmFjdGl2ZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmFjdGl2ZSxcbiAgICAub3BlbiA+IC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5kcm9wZG93bi10b2dnbGUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG5bZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0biB7XG4gICAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG5bZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBvcGFjaXR5OiAwLjY7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4gLmJhZGdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2VzcyB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktY29sb3IpO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpOyB9XG4gICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzczpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3M6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKTsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3M6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKTsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgICAub3BlbiA+IC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWFjdGl2ZS1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJvcmRlcik7IH1cbiAgICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzLFxuICAgICAgICAub3BlbiA+IC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpob3ZlcixcbiAgICAgICAgLm9wZW4gPiAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgICAgIC5vcGVuID4gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4gICAgICAgIC5vcGVuID4gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlLmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLXZpc2libGUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpob3ZlciwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzcy5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzOmFjdGl2ZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuYWN0aXZlLFxuICAgICAgLm9wZW4gPiAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzcy5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzc1tkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2VzcyB7XG4gICAgICAgIG9wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcik7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIC5idG4tc3VjY2Vzc1tkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgICAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idG4gLmJ0bi1zdWNjZXNzW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIG9wYWNpdHk6IDAuNjsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biAuYnRuLXN1Y2Nlc3MgLmJhZGdlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktY29sb3IpOyB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgcCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWJvZHkgLm5vLWRhdGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDQ4cHggMjRweCAzNnB4OyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAubm8tZGF0YS1pY29uIHtcbiAgICAgIHdpZHRoOiA2NHB4O1xuICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYm9keSAubm8tZGF0YS1pY29uIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWZvb3RlciB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxuXG4uY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbCAucGFuZWwtbWMtc3NvIC5yb3cgZm9ybSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG5cbi5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsIC5wYW5lbC1tYy1zc28gLnJvdyA+IC5jb2wtc20tNiB7XG4gIGZsZXg6IHVuc2V0O1xuICBtYXgtd2lkdGg6IHVuc2V0OyB9XG5cbi5jbGllbnQtaG9tZS1wYW5lbHMge1xuICAvKiBQYW5lbDogU3VwcG9ydCBUaWNrZXQgTGlzdCAqL1xuICAvKiBQYW5lbDogU2VydmljZXMgTGlzdCAqL1xuICAvKiBQYW5lbDogRG9tYWluIFJlZ2lzdGVyICovIH1cbiAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0uaGlkZS1leHBpcmUtc3RhdHVzIC5zdGF0dXMtZXhwaXJ5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbCAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLmhpZGUtcHJvZHVjdC1ncm91cC1uYW1lIC5saXN0LWdyb3VwLWl0ZW0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0uaGlkZS1wcm9kdWN0LWdyb3VwLW5hbWUgLmxpc3QtZ3JvdXAtaXRlbS1mdWxsbmFtZSB7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7IH1cbiAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtc3VwcG9ydC10aWNrZXRzIC5zdGF0dXMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMCAwIDRweDsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1zdXBwb3J0LXRpY2tldHMgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1hY3RpdmUtc2VydmljZXMgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbTpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10YWJsZS1iZy1ob3Zlcik7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1hY3RpdmUtc2VydmljZXMgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbTpub3QoLmhhcy1ncmFwaGljKSAuZ3JhcGhpYy1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1hY3RpdmUtc2VydmljZXMgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbTpub3QoLmhhcy1ncmFwaGljKSAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnQgLmxpc3QtZ3JvdXAtaXRlbS1uYW1lIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MTlweCkge1xuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0uaGFzLWdyYXBoaWMgLmdyYXBoaWMtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRweDsgfSB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZyk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MjBweCkge1xuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0tY29udGVudCA+IGRpdiArIGRpdiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0zeCk7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MTlweCkge1xuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0tY29udGVudCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDsgfVxuICAgICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1hY3RpdmUtc2VydmljZXMgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbS1jb250ZW50IC5saXN0LWdyb3VwLWl0ZW0tc3RhdHVzIC5sYWJlbCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgICAgICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnQgLmxpc3QtZ3JvdXAtaXRlbS1zdGF0dXMgLnN0YXR1cy1leHBpcnkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnQgLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb25zIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7IH0gfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1hY3RpdmUtc2VydmljZXMgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbS1uYW1lIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLXN0YXR1cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMzE5Ljk4cHgpIHtcbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLXN0YXR1cyB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAgICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1hY3RpdmUtc2VydmljZXMgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbS1zdGF0dXMgLnN0YXR1cy1leHBpcnkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0tc3RhdHVzIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gICAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLXN0YXR1cyAuc3RhdHVzLWV4cGlyeSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDsgfSB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtLWFjdGlvbnMgLmJ0biB7XG4gICAgbWluLXdpZHRoOiAxMDZweDsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1hY3RpdmUtc2VydmljZXMgLmxpc3QtZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5saXN0LWdyb3VwIC5kcm9wZG93bi1pdGVtIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgcGFkZGluZyB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5saXN0LWdyb3VwIC5kcm9wZG93bi1pdGVtIC5sb2FkaW5nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAubGlzdC1ncm91cC1pdGVtLmhpZGUtZXhwaXJlLXN0YXR1cyAuc3RhdHVzLWV4cGlyeSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1hY3RpdmUtc2VydmljZXMgLnN0YXR1cy1leHBpcnkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtYWN0aXZlLXNlcnZpY2VzIC5zdGF0dXMtZXhwaXJ5IGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyAudGV4dC1kb21haW4ge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1kb21haW4tcmVnaXN0ZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWhvbWUtZG9tYWluLWJnKTtcbiAgICBib3JkZXI6IHZhcigtLXBhbmVsLWhvbWUtZG9tYWluLWJvcmRlcik7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1kb21haW4tcmVnaXN0ZXIgc21hbGwge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciBwIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogdmFyKC0tcGFuZWwtaG9tZS1kb21haW4tdGV4dC1jb2xvcik7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtZG9tYWluLXJlZ2lzdGVyIGlucHV0W25hbWU9XCJkb21haW5cIl0ge1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtZG9tYWluLXJlZ2lzdGVyIGlucHV0W25hbWU9XCJkb21haW5cIl0ge1xuICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xuICAgICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLXBhZGRpbmctbGctaCk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWlucHV0LWxnLWZvbnQtc2l6ZSk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGctbGluZS1oZWlnaHQpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtbGctYm9yZGVyLXJhZGl1cyk7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciBpbnB1dFtuYW1lPVwiZG9tYWluXCJdIHNlbGVjdCB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciBpbnB1dFtuYW1lPVwiZG9tYWluXCJdIHRleHRhcmVhLFxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtZG9tYWluLXJlZ2lzdGVyIGlucHV0W25hbWU9XCJkb21haW5cIl0gc2VsZWN0W211bHRpcGxlXSB7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciAucGFuZWwtaGVhZGluZyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3JkZXI6IDA7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciAucGFuZWwtaGVhZGluZyAucGFuZWwtdGl0bGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtaG9tZS1kb21haW4tdGl0bGUtY29sb3IpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXByb2R1Y3QtZGV0YWlscy10aXRsZS1mb250LXNpemUpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJvZHVjdC1kZXRhaWxzLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByb2R1Y3QtZGV0YWlscy10aXRsZS1mb250LXdlaWdodCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtZG9tYWluLXJlZ2lzdGVyIC5pbnB1dC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1kb21haW4tcmVnaXN0ZXIgLmlucHV0LWFjdGlvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciAuaW5wdXQtYWN0aW9ucyAuYnRuIHtcbiAgICAgICAgZmxleDogMTsgfVxuICAgICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1kb21haW4tcmVnaXN0ZXIgLmlucHV0LWFjdGlvbnMgLmJ0bjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgICAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1kb21haW4tcmVnaXN0ZXIgLmlucHV0LWFjdGlvbnMgLmJ0biAuYnRuLWRlZmF1bHQge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtZG9tYWluLXJlZ2lzdGVyIC5wYW5lbC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAubWFyZ2luLTEwIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtZG9tYWluLXJlZ2lzdGVyIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cC5tYXJnaW4tMTAucHgtMi5wYi0yIHtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtZG9tYWluLXJlZ2lzdGVyIC5wYW5lbC1ib2R5IC5pbnB1dC1ncm91cC5tYXJnaW4tMTAgLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAgICAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAubWFyZ2luLTEwIC5pbnB1dC1ncm91cC1idG4gLmJ0biB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLXBhZGRpbmctbGctaCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWJ0bi1sZy1mb250LXNpemUpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWJ0bi1sZy1saW5lLWhlaWdodCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tbGctYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgICAgICAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciAucGFuZWwtYm9keSAuaW5wdXQtZ3JvdXAubWFyZ2luLTEwIC5pbnB1dC1ncm91cC1idG4gLmJ0bjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLWRvbWFpbi1yZWdpc3RlciAucGFuZWwtYm9keSA+IHAge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtZG9tYWluLXJlZ2lzdGVyIC5wYW5lbC1mb290ZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTQwcHg7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXh4bGcpO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1ob21lLWRvbWFpbi10ZXh0LWNvbG9yKTsgfVxuICAuY2xpZW50LWhvbWUtcGFuZWxzIC50ZXh0LWxhc3QtdXBkYXRlZCxcbiAgLmNsaWVudC1ob21lLXBhbmVscyBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLmxpc3QtZ3JvdXAge1xuICAgIG1heC1oZWlnaHQ6IDMyM3B4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLmxpc3QtZ3JvdXAuaGFzLWNoZWNrYm94ZXMgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLmxpc3QtZ3JvdXAuaGFzLWNoZWNrYm94ZXMgLmxpc3QtZ3JvdXAtaXRlbSAuY2hlY2tib3gtc3R5bGVkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE4cHg7XG4gICAgICAgIGxlZnQ6IDE2cHg7IH1cbiAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtc2l0ZWpldC1idWlsZGVyIC5wYW5lbC1ib2R5IHtcbiAgICBtYXgtaGVpZ2h0OiB1bnNldDsgfVxuXG4uY2xpZW50LWhvbWUtYWxlcnRzIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTsgfVxuICAuY2xpZW50LWhvbWUtYWxlcnRzIGEuYWxlcnQ6aG92ZXIgLmFsZXJ0LWFjdGlvbnMgLmJ0bjpmaXJzdC1jaGlsZCB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuY2xpZW50LWhvbWUtYWxlcnRzLmFsZXJ0LWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmNsaWVudC1ob21lLWFsZXJ0cy5hbGVydC1ncm91cCAuYWxlcnQ6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KTsgfVxuXG4ucGFnZS1jbGllbnRhcmVhaG9tZSBbZGF0YS1zZXJ2aWNlLWlkXSAuZHJvcGRvd24taXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIHBhZGRpbmcgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAucGFnZS1jbGllbnRhcmVhaG9tZSBbZGF0YS1zZXJ2aWNlLWlkXSAuZHJvcGRvd24taXRlbSAubG9hZGluZyB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLnBhZ2UtY2xpZW50YXJlYWhvbWUgW2RhdGEtc2VydmljZS1pZF0gLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhZ2UtY2xpZW50YXJlYWhvbWUgW2RhdGEtc2VydmljZS1pZF0gLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgcGFkZGluZzogdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLXYpIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbjQuIEhvbWUgUGFnZSAtIE90aGVyc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG5kaXYuaG9tZS10d2l0dGVyIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14eGxnKTsgfVxuXG5kaXYudHdlZXQgPiBpIHtcbiAgY29sb3I6ICMyQkFCQ0Y7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cblxuZGl2LnR3ZWV0IHNwYW4ge1xuICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XG4gIGNvbG9yOiAjY2NjOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuS25vd2xlZGdlYmFzZSBjYXRlZ29yaWVzIHNlY3Rpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnNlY3Rpb24tLWtiY2F0ZWdvcmllcyB7XG4gIG1hcmdpbi10b3A6IDU2cHg7IH1cblxuLnNlY3Rpb24tLWtiYXJ0aWNsZXMge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEweCk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAgIC5zZWN0aW9uLS1rYmFydGljbGVzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZyk7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbktub3dsZWRnZWJhc2UgY2F0ZWdvcmllc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ua2ItY2F0ZWdvcmllcyAubGlzdC1ncm91cC0tYm94ZXMge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBnYXA6IDI0cHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAua2ItY2F0ZWdvcmllcyAubGlzdC1ncm91cC0tYm94ZXMgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGhlaWdodDogMTcwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDMzLjMzJSAtIDE2cHgpO1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDE2cHgpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAzMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xMiksIDBweCA4cHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgIGJvcmRlcjogdW5zZXQ7IH1cbiAgICAua2ItY2F0ZWdvcmllcyAubGlzdC1ncm91cC0tYm94ZXMgLmxpc3QtZ3JvdXAtaXRlbS1ib2R5IHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgICAua2ItY2F0ZWdvcmllcyAubGlzdC1ncm91cC0tYm94ZXMgLmxpc3QtZ3JvdXAtaXRlbS1ib2R5IC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cbiAgICAua2ItY2F0ZWdvcmllcyAubGlzdC1ncm91cC0tYm94ZXMgLmxpc3QtZ3JvdXAtaXRlbSBzdmcge1xuICAgICAgbWluLWhlaWdodDogNjRweDtcbiAgICAgIG1pbi13aWR0aDogNjRweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgICAgLmtiLWNhdGVnb3JpZXMgLmxpc3QtZ3JvdXAtLWJveGVzIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgICB3aWR0aDogMjEwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAua2ItY2F0ZWdvcmllcyAubGlzdC1ncm91cC0tYm94ZXMge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvOyB9XG4gICAgICAua2ItY2F0ZWdvcmllcyAubGlzdC1ncm91cC0tYm94ZXMgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgIG1pbi13aWR0aDogMjEwcHg7XG4gICAgICAgIHdpZHRoOiB1bnNldDsgfSB9XG5cbi5rYmFydGljbGVzIC5saXN0LWdyb3VwIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7IH1cbiAgLmtiYXJ0aWNsZXMgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1vZi10eXBlIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7IH1cbiAgLmtiYXJ0aWNsZXMgLmxpc3QtZ3JvdXAtaXRlbSBwIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgfVxuXG4ua2Jkb3dubG9hZHMtcGFuZWxzIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2FyZC1iZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXBhbmVsLWJveC1zaGFkb3cpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jYXJkLWJvcmRlci1yYWRpdXMpOyB9XG5cbi5rYmRvd25sb2Fkcy1wYW5lbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMjRweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTsgfVxuICAua2Jkb3dubG9hZHMtcGFuZWwgaDYge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gIC5rYmRvd25sb2Fkcy1wYW5lbCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG4gIC5rYmRvd25sb2Fkcy1wYW5lbCAuYnRuIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmtiZG93bmxvYWRzLXBhbmVsIC5idG4ge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4OyB9IH1cbiAgICAua2Jkb3dubG9hZHMtcGFuZWwgLmJ0biBpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBMb2dpbiAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmxvZ2luIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogdmFyKC0tbG9naW4td2lkdGgpOyB9XG4gIC5sb2dpbiAubG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiB2YXIoLS1sb2dpbi1sb2dvLWhlaWdodCk7IH1cbiAgICAubG9naW4gLmxvZ28gPiBpbWcge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAubG9naW4taWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5sb2dpbi1oZWFkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1sb2dpbi1oZWFkZXItbWFyZ2luLWJvdHRvbSk7IH1cbiAgLmxvZ2luLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogdmFyKC0tbG9naW4tdGl0bGUtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tbG9naW4tdGl0bGUtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tbG9naW4tdGl0bGUtZm9udC13ZWlnaHQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1sb2dpbi10aXRsZS1saW5lLWhlaWdodCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gIC5sb2dpbi1kZXNjIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IC04cHggMCAyNHB4IDA7XG4gICAgY29sb3I6IHZhcigtLWxvZ2luLWRlc2MtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tbG9naW4tZGVzYy1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1sb2dpbi1kZXNjLWZvbnQtd2VpZ2h0KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxvZ2luLWJvZHkge1xuICAgIHBhZGRpbmc6IHZhcigtLWxvZ2luLXBhZGRpbmcpOyB9XG4gICAgLmxvZ2luLWJvZHkuaW52aXRlIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLWxvZ2luLWludml0ZS1wYWRkaW5nKTsgfVxuICAgIC5sb2dpbi1ib2R5IC5jYXB0Y2hhaW1hZ2UuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpOyB9XG4gICAgLmxvZ2luLWJvZHkgLmNhcHRjaGFpbWFnZS5pbnB1dC1ncm91cCAjaW5wdXRDYXB0Y2hhIHtcbiAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpOyB9XG4gICAgLmxvZ2luLWJvZHkucmVnaXN0ZXIgLmxvZ2luLXNvY2lhbCAuc29jaWFsLXNpZ25pbi1idG5zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxvZ2luLWJvZHkucmVnaXN0ZXIgLmxvZ2luLXNvY2lhbCAuYnRuLmJ0bi1zb2NpYWwge1xuICAgICAgbWluLXdpZHRoOiA0NyU7XG4gICAgICBtYXJnaW46IDAgMCAzJTsgfVxuICAgICAgLmxvZ2luLWJvZHkucmVnaXN0ZXIgLmxvZ2luLXNvY2lhbCAuYnRuLmJ0bi1zb2NpYWw6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMyU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgIC5sb2dpbi1ib2R5LnJlZ2lzdGVyIC5sb2dpbi1zb2NpYWwgLmJ0bi5idG4tc29jaWFsIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgOHB4OyB9XG4gICAgICAgIC5sb2dpbi1ib2R5LnJlZ2lzdGVyIC5sb2dpbi1zb2NpYWwgLmJ0bi5idG4tc29jaWFsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIC5sb2dpbi13cmFwcGVyIHtcbiAgICBib3JkZXI6IHZhcigtLWxvZ2luLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbG9naW4tYm9yZGVyLXJhZGl1cyk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbG9naW4tYmcpO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLWxvZ2luLWJveC1zaGFkb3cpOyB9XG4gIC5sb2dpbi1mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpIDAgdmFyKC0tdWktYmxvY2stcGFkZGluZy14cykgMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1sb2dpbi1mb290ZXItYmcpO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1sb2dpbi1ib3JkZXItcmFkaXVzKSB2YXIoLS1sb2dpbi1ib3JkZXItcmFkaXVzKTsgfVxuICAubG9naW4tc29jaWFsIHtcbiAgICBtYXJnaW46IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTF4KSkgMCBjYWxjKDIgKiB2YXIoLS1zcGFjaW5nLTF4KSk7IH1cbiAgLmxvZ2luLWRpdmlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiBjYWxjKDIgKiB2YXIoLS1zcGFjaW5nLTF4KSkgMDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IH1cbiAgICAubG9naW4tZGl2aWRlciBzcGFuOmZpcnN0LWNoaWxkLFxuICAgIC5sb2dpbi1kaXZpZGVyIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsZXg6IDE7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgLmxvZ2luLWRpdmlkZXIgc3BhbiB7XG4gICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuICAubG9naW4tZm9ybSArIC5sb2dpbi1kaXZpZGVyICsgLmxvZ2luLXNvY2lhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gICAgLmxvZ2luLWZvcm0gKyAubG9naW4tZGl2aWRlciArIC5sb2dpbi1zb2NpYWwgLnNvY2lhbC1zaWduaW4tYnRucyB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gIC5sb2dpbi1jYXB0Y2hhIDpoYXMoZGl2KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7IH1cbiAgLmxvZ2luLWxhbmd1YWdlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sb2dpbi1mb290ZXIgYSxcbiAgLmxvZ2luLWxhbmd1YWdlIGEge1xuICAgIGNvbG9yOiB2YXIoLS1sb2dpbi1saW5rLWNvbG9yKTsgfVxuICAubG9naW4gLmxvZ2luLWZvcm0gPiAuZm9ybS1ncm91cDpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmxvZ2luIC5sb2dpbkZvcm0gW2FsaWduPVwiY2VudGVyXCJdIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmxvZ2luIC5tZXNzYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAubG9naW4gLnNvY2lhbC1zaWduaW4tYnRucyB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygyICogdmFyKC0tc3BhY2luZy0xeCkpOyB9XG5cbi5sb2dpbi1sZyB7XG4gIG1heC13aWR0aDogdmFyKC0tbG9naW4tbGctd2lkdGgpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAubG9naW4tYm9keSB7XG4gICAgcGFkZGluZzogdmFyKC0tbG9naW4tbW9iLXBhZGRpbmcpOyB9XG4gICAgLmxvZ2luLWJvZHkuaW52aXRlIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLWxvZ2luLWludml0ZS1tb2ItcGFkZGluZyk7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBMb2dpbiAtIFBhZ2VcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhZ2UtbG9naW4gLm1haW4tYm9keTpub3QoLm1haW4tYm9keS1oYXMtc2lkZWJhcik6bm90KC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uKTpub3QoLm1haW4tYm9keS1oYXMtYm90dG9tLWlsbHVzdHJhdGlvbiksXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5Om5vdCgubWFpbi1ib2R5LWhhcy1zaWRlYmFyKSAuY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLnBhZ2UtbG9naW4gLmZvcm0tZ3JvdXAgLmNoZWNrYm94LXN0eWxlZCB7XG4gIG1hcmdpbi1yaWdodDogOHB4OyB9XG5cbi5wYWdlLWxvZ2luLXByaW1hcnkgLm1haW4tYm9keSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmcpICFpbXBvcnRhbnQ7IH1cblxuLnBhZ2UtbG9naW4tc2Vjb25kYXJ5IC5tYWluLWJvZHkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stYmcpICFpbXBvcnRhbnQ7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Mb2dpbiBQYWdlIC0gU2lkZWJhclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXIge1xuICB6LWluZGV4OiAxO1xuICBib3gtc2hhZG93OiB2YXIoLS1sb2dpbi1zaWRlYmFyLWJveC1zaGFkb3cpOyB9XG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhciAuc2lkZWJhci1sb2dvIC5sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IHZhcigtLWxvZ2luLWxvZ28taGVpZ2h0KTsgfVxuICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhciAuc2lkZWJhci1sb2dvIC5sb2dvID4gaW1nIHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyIC5zaWRlYmFyLW5ld3MtZGVzYyxcbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyIC5zaWRlYmFyLW5ld3MtZGVzYyBwIHtcbiAgICBmb250LXNpemU6IHZhcigtLWxvZ2luLXNpZGViYXItZGVzYy1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1sb2dpbi1zaWRlYmFyLWRlc2MtZm9udC13ZWlnaHQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1sb2dpbi1zaWRlYmFyLWRlc2MtbGluZS1oZWlnaHQpOyB9XG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhciAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhciAuc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyIC5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItd3JhcHBlciAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1tYWluLWJvZHktc2lkZWJhci1wYWRkaW5nLWgpOyB9XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyIC5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7IH1cbiAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhciAuc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxOHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4tYm9keS1zaWRlYmFyLWNvbnRlbnQtYmcpOyB9XG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktY29udGVudCAubG9naW4ge1xuICAgIG1hcmdpbjogYXV0bzsgfVxuXG4vKiBMb2dpbiBQYWdlIFNpZWJhciAtIFN0eWxlcyAqL1xuLm1haW4tYm9keS1zaWRlYmFyLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKTsgfVxuICAubWFpbi1ib2R5LXNpZGViYXItcHJpbWFyeSAuc2lkZWJhci10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGl0bGUtY29sb3IpOyB9XG4gIC5tYWluLWJvZHktc2lkZWJhci1wcmltYXJ5IC5zaWRlYmFyLW5ld3MtZGF0ZSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgLm1haW4tYm9keS1zaWRlYmFyLXByaW1hcnkgLnNpZGViYXItbmV3cy10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGl0bGUtY29sb3IpOyB9XG4gIC5tYWluLWJvZHktc2lkZWJhci1wcmltYXJ5IC5zaWRlYmFyLW5ld3MtZGVzYyxcbiAgLm1haW4tYm9keS1zaWRlYmFyLXByaW1hcnkgLnNpZGViYXItbmV3cy1kZXNjIHAge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpOyB9XG4gIC5tYWluLWJvZHktc2lkZWJhci1wcmltYXJ5IC5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1iZyk7IH1cbiAgICAubWFpbi1ib2R5LXNpZGViYXItcHJpbWFyeSAuc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0OmFjdGl2ZSwgLm1haW4tYm9keS1zaWRlYmFyLXByaW1hcnkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpob3ZlciwgLm1haW4tYm9keS1zaWRlYmFyLXByaW1hcnkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWRvdC1uYXYtaG92ZXItYmcpOyB9XG4gICAgLm1haW4tYm9keS1zaWRlYmFyLXByaW1hcnkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kb3QtbmF2LWFjdGl2ZS1iZyk7IH1cblxuLm1haW4tYm9keS1zaWRlYmFyLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZyk7IH1cbiAgLm1haW4tYm9keS1zaWRlYmFyLXNlY29uZGFyeSAuc2lkZWJhci10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10aXRsZS1jb2xvcik7IH1cbiAgLm1haW4tYm9keS1zaWRlYmFyLXNlY29uZGFyeSAuc2lkZWJhci1uZXdzLWRhdGUge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgLm1haW4tYm9keS1zaWRlYmFyLXNlY29uZGFyeSAuc2lkZWJhci1uZXdzLXRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTsgfVxuICAubWFpbi1ib2R5LXNpZGViYXItc2Vjb25kYXJ5IC5zaWRlYmFyLW5ld3MtZGVzYyxcbiAgLm1haW4tYm9keS1zaWRlYmFyLXNlY29uZGFyeSAuc2lkZWJhci1uZXdzLWRlc2MgcCB7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuICAubWFpbi1ib2R5LXNpZGViYXItc2Vjb25kYXJ5IC5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1kb3QtbmF2LWJnKTsgfVxuICAgIC5tYWluLWJvZHktc2lkZWJhci1zZWNvbmRhcnkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDphY3RpdmUsIC5tYWluLWJvZHktc2lkZWJhci1zZWNvbmRhcnkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpob3ZlciwgLm1haW4tYm9keS1zaWRlYmFyLXNlY29uZGFyeSAuc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1kb3QtbmF2LWhvdmVyLWJnKTsgfVxuICAgIC5tYWluLWJvZHktc2lkZWJhci1zZWNvbmRhcnkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRvdC1uYXYtYWN0aXZlLWJnKTsgfVxuXG4ucGFnZS1wYXNzd29yZC1yZXNldC1jb250YWluZXIgLm1haW4tYm9keS1oYXMtc2lkZWJhciAubWFpbi1ib2R5LWNvbnRlbnQgLmxvZ2luIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogYXV0bzsgfVxuXG4ucGFnZS1wYXNzd29yZC1yZXNldC1jb250YWluZXIgLmxvZ2luRm9ybSAuZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEzMjBweCkge1xuICAucGFnZS1sb2dpbi5yZWdpc3Rlci1wYWdlIC5tYWluLWJvZHktY29udGVudCAubG9naW4taGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWxvZ2luOm5vdCgucmVnaXN0ZXItcGFnZSkgLm1haW4tYm9keTpub3QoLm1haW4tYm9keS1oYXMtYm90dG9tLWlsbHVzdHJhdGlvbik6bm90KC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uKSAubWFpbi1ib2R5LWNvbnRlbnQgLmxvZ2luLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzE5Ljk4cHgpIHtcbiAgLnBhZ2UtbG9naW4ucmVnaXN0ZXItcGFnZSAubWFpbi1ib2R5LWhhcy1zaWRlYmFyIC5tYWluLWJvZHktc2lkZWJhciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucGFnZS1sb2dpbi5yZWdpc3Rlci1wYWdlIC5tYWluLWJvZHktaGFzLXNpZGViYXIgLm1haW4tYm9keS1jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wYWdlLWxvZ2luLnJlZ2lzdGVyLXBhZ2UgLm1haW4tYm9keS1oYXMtc2lkZWJhciAubWFpbi1ib2R5LWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5wYWdlLWxvZ2luOm5vdCgucmVnaXN0ZXItcGFnZSkgLm1haW4tYm9keS1oYXMtc2lkZWJhciAubWFpbi1ib2R5LXNpZGViYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhZ2UtbG9naW46bm90KC5yZWdpc3Rlci1wYWdlKSAubWFpbi1ib2R5LWhhcy1zaWRlYmFyIC5tYWluLWJvZHktY29udGVudCB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnBhZ2UtbG9naW46bm90KC5yZWdpc3Rlci1wYWdlKSAubWFpbi1ib2R5LWhhcy1zaWRlYmFyIC5tYWluLWJvZHktY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtY2xpZW50cmVnaXN0ZXIgLnNvY2lhbC1zaWduaW4tYnRucyB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLnBhZ2UtbG9naW4gLnNvY2lhbC1zaWduaW4tYnRucyAuYnRuLXNvY2lhbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuLnNvY2lhbC1tZWRpYSAucm93IHtcbiAgdG9wOiA2cHggIWltcG9ydGFudDsgfVxuXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgcGFkZGluZzogMDsgfVxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubWFpbi1ib2R5LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy14bGcpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubWFpbi1ib2R5LWNvbnRlbnQgLmxvZ2luIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBtYXJnaW46IHVuc2V0OyB9XG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktY29udGVudCxcbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uID4gZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24gLnNpZGUtaWxsdXN0cmF0aW9uLWJnIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTMyMHB4KSB7XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keS1jb250ZW50IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb246OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGhlaWdodDogMjQ4cHg7IH1cbiAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb246OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgaGVpZ2h0OiAyNDhweDsgfVxuICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tZGVmYXVsdCB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWdyYWRpZW50LXYpOyB9XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi1wcmltYXJ5IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnktZ3JhZGllbnQtdik7IH1cbiAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tcHJpbWFyeTo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgdmFyKC0tYnJhbmQtcHJpbWFyeS1kYXJrZXIpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTsgfVxuICAgICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi1wcmltYXJ5OjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsIHZhcigtLWJyYW5kLXByaW1hcnktZ3JhZGllbnQtZW5kKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7IH1cbiAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tcHJpbWFyeSAuc2lkZS1pbGx1c3RyYXRpb24tYmcge1xuICAgICAgICBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheTsgfVxuICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tc2Vjb25kYXJ5IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXNlY29uZGFyeS1ncmFkaWVudC12KTsgfVxuICAgICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi1zZWNvbmRhcnk6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHZhcigtLWJyYW5kLXNlY29uZGFyeS1ncmFkaWVudC1zdGFydCkgMCUsIHRyYW5zcGFyZW50IDEwMCUpOyB9XG4gICAgICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLXNlY29uZGFyeTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMzYwZGVnLCB2YXIoLS1icmFuZC1zZWNvbmRhcnktZ3JhZGllbnQtZW5kKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7IH1cbiAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tc2Vjb25kYXJ5IC5zaWRlLWlsbHVzdHJhdGlvbi1iZyB7XG4gICAgICAgIG1peC1ibGVuZC1tb2RlOiBvdmVybGF5OyB9XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLmJvdHRvbS1zaWRlLWlsbHVzdHJhdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLnNpZGUtaWxsdXN0cmF0aW9uLWJnIHtcbiAgICAgIG1peC1ibGVuZC1tb2RlOiBvdmVybGF5OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzMTkuOThweCkge1xuICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uID4gZGl2IHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24gPiBkaXY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBoZWlnaHQ6IDI0OHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsIHZhcigtLS1ncmF5LWdyYWRpZW50LWVuZCkgMCUsIHRyYW5zcGFyZW50IDEwMCUpOyB9XG4gICAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24gPiBkaXYgLnNpZGUtaWxsdXN0cmF0aW9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24gPiBkaXYgLmJvdHRvbS1zaWRlLWlsbHVzdHJhdGlvbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWluLXdpZHRoOiBtYXgtY29udGVudDsgfVxuICAgICAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24gPiBkaXYgLmJvdHRvbS1zaWRlLWlsbHVzdHJhdGlvbi1yaWdodCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24gPiBkaXYgLmJvdHRvbS1zaWRlLWlsbHVzdHJhdGlvbi1sZWZ0IHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHkgLmxvZ2luIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbWF4LWhlaWdodDogbWF4LWNvbnRlbnQ7IH0gfVxuXG4ucGFnZS1sb2dpbjpub3QoLmxhZ29tLWZ1dHVyaXN0aWMpIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tZGVmYXVsdCAuc2lkZS1pbGx1c3RyYXRpb24tYmcge1xuICBtaXgtYmxlbmQtbW9kZTogdW5zZXQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEzMjBweCkge1xuICAucGFnZS1sb2dpbjpub3QoLmxhZ29tLWZ1dHVyaXN0aWMpIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tZGVmYXVsdDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB2YXIoLS1ncmF5LWdyYWRpZW50LWVuZCkgMCUsIHRyYW5zcGFyZW50IDEwMCUpOyB9XG4gIC5wYWdlLWxvZ2luOm5vdCgubGFnb20tZnV0dXJpc3RpYykgLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi1kZWZhdWx0OjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgdmFyKC0tZ3JheS1ncmFkaWVudC1lbmQpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTsgfSB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi1kZWZhdWx0IC5zaWRlLWlsbHVzdHJhdGlvbi1iZyB7XG4gIG9wYWNpdHk6IDAuMzsgfVxuXG4ubGFnb20tZGFyay1tb2RlIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tc2Vjb25kYXJ5IC5zaWRlLWlsbHVzdHJhdGlvbi1iZywgLmxhZ29tLWRhcmstbW9kZSAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLXByaW1hcnkgLnNpZGUtaWxsdXN0cmF0aW9uLWJnIHtcbiAgb3BhY2l0eTogMC43NTsgfVxuXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1ib3R0b20taWxsdXN0cmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWhhcy1ib3R0b20taWxsdXN0cmF0aW9uIC5sb2dpbiB7XG4gICAgei1pbmRleDogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1oYXMtYm90dG9tLWlsbHVzdHJhdGlvbiB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIHBhZGRpbmc6IDY0cHggMCA3MnB4IDA7IH0gfVxuXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uID4gZGl2IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uID4gZGl2OjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGhlaWdodDogMjI3cHg7IH1cbiAgICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb24gPiBkaXYgLmJvdHRvbS1pbGx1c3RyYXRpb24ge1xuICAgICAgbWluLXdpZHRoOiBtYXgtY29udGVudDsgfVxuICAgICAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uID4gZGl2IC5ib3R0b20taWxsdXN0cmF0aW9uLWxlZnQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbiA+IGRpdiAuYm90dG9tLWlsbHVzdHJhdGlvbi1yaWdodCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5wYWdlLWxvZ2luLWRlZmF1bHQgLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uID4gZGl2OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMzYwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7IH1cblxuLnBhZ2UtbG9naW4tcHJpbWFyeSAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb24gPiBkaXY6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsIHZhcigtLWJyYW5kLXByaW1hcnktZ3JhZGllbnQtZW5kKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7IH1cblxuLnBhZ2UtbG9naW4tc2Vjb25kYXJ5IC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbiA+IGRpdjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgdmFyKC0tYnJhbmQtc2Vjb25kYXJ5LWdyYWRpZW50LWVuZCkgMCUsIHRyYW5zcGFyZW50IDEwMCUpOyB9XG5cbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbiBbZGF0YS1hbmltYXRpb24tY3ViZV0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uIFtkYXRhLWFuaW1hdGlvbi1jdWJlXSB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc106bm90KC5pcy1hbmltYXRlZCkgW2RhdGEtYmctZWxlbWVudC1hbmltYXRpb25dLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc106bm90KC5pcy1hbmltYXRlZCkgW2RhdGEtYW5pbWF0aW9uLXBhdGhdLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc106bm90KC5pcy1hbmltYXRlZCkgW2RhdGEtc2VydmVyLWFuaW1hdGlvbi10b3BdLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdOm5vdCguaXMtYW5pbWF0ZWQpIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXSxcbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb25bZGF0YS1hbmltYXRpb24tY3NzXTpub3QoLmlzLWFuaW1hdGVkKSBbZGF0YS1hbmltYXRpb24tcGF0aF0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc106bm90KC5pcy1hbmltYXRlZCkgW2RhdGEtc2VydmVyLWFuaW1hdGlvbi10b3BdIHtcbiAgYW5pbWF0aW9uOiB1bnNldCAhaW1wb3J0YW50OyB9XG5cbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdLmlzLXBhdXNlZCBbZGF0YS1hbmltYXRpb24tY3ViZV0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb25bZGF0YS1hbmltYXRpb24tY3NzXS5pcy1wYXVzZWQgW2RhdGEtYW5pbWF0aW9uLWNvaW5dLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc10uaXMtcGF1c2VkIFtkYXRhLWFuaW1hdGlvbi12ZXJ0aWNhbC1sb29wLXNtXSxcbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdLmlzLXBhdXNlZCBbZGF0YS1hbmltYXRpb24tdmVydGljYWwtbG9vcF0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb25bZGF0YS1hbmltYXRpb24tY3NzXS5pcy1wYXVzZWQgW2RhdGEtYW5pbWF0aW9uLXVwLWRvd25dLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc10uaXMtcGF1c2VkIFtkYXRhLWFuaW1hdGlvbi1kb3duLXVwXSxcbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb25bZGF0YS1hbmltYXRpb24tY3NzXS5pcy1wYXVzZWQgW2RhdGEtYW5pbWF0aW9uLWN1YmVdLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdLmlzLXBhdXNlZCBbZGF0YS1hbmltYXRpb24tY29pbl0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc10uaXMtcGF1c2VkIFtkYXRhLWFuaW1hdGlvbi12ZXJ0aWNhbC1sb29wLXNtXSxcbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb25bZGF0YS1hbmltYXRpb24tY3NzXS5pcy1wYXVzZWQgW2RhdGEtYW5pbWF0aW9uLXZlcnRpY2FsLWxvb3BdLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdLmlzLXBhdXNlZCBbZGF0YS1hbmltYXRpb24tdXAtZG93bl0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc10uaXMtcGF1c2VkIFtkYXRhLWFuaW1hdGlvbi1kb3duLXVwXSB7XG4gIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7IH1cblxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc10gW2RhdGEtYmctZWxlbWVudC1hbmltYXRpb25dLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc10gW2RhdGEtdG9wLWxlZnQtYW5pbWF0aW9uXSxcbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdIFtkYXRhLXRvcC1yaWdodC1hbmltYXRpb25dLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uW2RhdGEtYW5pbWF0aW9uLWNzc10gW2RhdGEtc2VydmVyLWFuaW1hdGlvbi10b3BdLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXSxcbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb25bZGF0YS1hbmltYXRpb24tY3NzXSBbZGF0YS10b3AtbGVmdC1hbmltYXRpb25dLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdIFtkYXRhLXRvcC1yaWdodC1hbmltYXRpb25dLFxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbltkYXRhLWFuaW1hdGlvbi1jc3NdIFtkYXRhLXNlcnZlci1hbmltYXRpb24tdG9wXSB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWFuaW1hdGlvbi1wYXRoXSxcbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtYW5pbWF0aW9uLXBhdGhdIHtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgfVxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtYW5pbWF0aW9uLXBhdGhdW2RhdGEtYW5pbWF0aW9uLXBhdGgtMV0sXG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtYW5pbWF0aW9uLXBhdGhdW2RhdGEtYW5pbWF0aW9uLXBhdGgtMV0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBwYXRoQW5pbWF0aW9uMS1ib3R0b20tbG9naW47XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgICBhbmltYXRpb24tZGVsYXk6IDEuMDhzOyB9XG5cbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbi5pcy1hbmltYXRlZCBbZGF0YS1iZy1lbGVtZW50LWFuaW1hdGlvbl0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzZWN0aW9uQmFja2dyb3VuZEZhZGVUb3AwLWJvdHRvbS1sb2dpbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IH1cbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXVtkYXRhLWFuaW1hdGlvbi10eXBlLTFdLFxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXVtkYXRhLWFuaW1hdGlvbi10eXBlLTFdIHtcbiAgICBhbmltYXRpb24tbmFtZTogc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wMS1ib3R0b20tbG9naW47IH1cbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXVtkYXRhLWFuaW1hdGlvbi10eXBlLTJdLFxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXVtkYXRhLWFuaW1hdGlvbi10eXBlLTJdIHtcbiAgICBhbmltYXRpb24tbmFtZTogc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wMi1ib3R0b20tbG9naW47IH1cbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXVtkYXRhLWFuaW1hdGlvbi10eXBlLTNdLFxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXVtkYXRhLWFuaW1hdGlvbi10eXBlLTNdIHtcbiAgICBhbmltYXRpb24tbmFtZTogc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wMy1ib3R0b20tbG9naW47IH1cblxuLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWFuaW1hdGlvbi1jdWJlXSxcbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtYW5pbWF0aW9uLWN1YmVdIHtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYW5pbWF0aW9uLW5hbWU6IGN1YmVMb29wLWJvdHRvbS1sb2dpbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyLjIwcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjA4cztcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgfVxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtYW5pbWF0aW9uLWN1YmVdOm50aC1jaGlsZCgxKSxcbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi5pcy1hbmltYXRlZCBbZGF0YS1hbmltYXRpb24tY3ViZV06bnRoLWNoaWxkKDEpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMzJzOyB9XG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbi5pcy1hbmltYXRlZCBbZGF0YS1hbmltYXRpb24tY3ViZV06bnRoLWNoaWxkKDIpLFxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWFuaW1hdGlvbi1jdWJlXTpudGgtY2hpbGQoMikge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC45NnM7IH1cbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWFuaW1hdGlvbi1jdWJlXTpudGgtY2hpbGQoMyksXG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtYW5pbWF0aW9uLWN1YmVdOm50aC1jaGlsZCgzKSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxLjI0czsgfVxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtYW5pbWF0aW9uLWN1YmVdW2RhdGEtYW5pbWF0aW9uLWN1YmUtMV0sXG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtYW5pbWF0aW9uLWN1YmVdW2RhdGEtYW5pbWF0aW9uLWN1YmUtMV0ge1xuICAgIC0tY3ViZVN0YXJ0OiA2MHB4O1xuICAgIC0tY3ViZUdhcDogLTUwcHg7IH1cbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWFuaW1hdGlvbi1jdWJlXVtkYXRhLWFuaW1hdGlvbi1jdWJlLTJdLFxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWFuaW1hdGlvbi1jdWJlXVtkYXRhLWFuaW1hdGlvbi1jdWJlLTJdIHtcbiAgICAtLWN1YmVTdGFydDogNDBweDtcbiAgICAtLWN1YmVHYXA6IC03MHB4OyB9XG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbi5pcy1hbmltYXRlZCBbZGF0YS1hbmltYXRpb24tY3ViZV1bZGF0YS1hbmltYXRpb24tY3ViZS0zXSxcbiAgLnBhZ2UtbG9naW4gLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi5pcy1hbmltYXRlZCBbZGF0YS1hbmltYXRpb24tY3ViZV1bZGF0YS1hbmltYXRpb24tY3ViZS0zXSB7XG4gICAgLS1jdWJlU3RhcnQ6IDIwcHg7XG4gICAgLS1jdWJlR2FwOiAtNzBweDsgfVxuXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtc2VydmVyLWFuaW1hdGlvbl0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLXNlcnZlci1hbmltYXRpb25dIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTYsIDAsIDAsIDEpO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgfVxuICAucGFnZS1sb2dpbiAubWFpbi1ib2R5LWJvdHRvbS1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtc2VydmVyLWFuaW1hdGlvbl1bZGF0YS1zZXJ2ZXItYW5pbWF0aW9uLXRvcF0sXG4gIC5wYWdlLWxvZ2luIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24uaXMtYW5pbWF0ZWQgW2RhdGEtc2VydmVyLWFuaW1hdGlvbl1bZGF0YS1zZXJ2ZXItYW5pbWF0aW9uLXRvcF0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBzZXJ2ZXJBbmltYXRpb25Ub3AtYm90dG9tLWxvZ2luOyB9XG5cbi5wYWdlLWxvZ2luIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbi5pcy1hbmltYXRlZCBbZGF0YS1hbmltYXRpb24tdmVydGljYWwtbG9vcF0sXG4ucGFnZS1sb2dpbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLmlzLWFuaW1hdGVkIFtkYXRhLWFuaW1hdGlvbi12ZXJ0aWNhbC1sb29wXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBlbGVtZW50TG9vcFZlcnRpY2FsO1xuICBhbmltYXRpb24tZHVyYXRpb246IDMuNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7IH1cblxuQGtleWZyYW1lcyBwYXRoQW5pbWF0aW9uMS1ib3R0b20tbG9naW4ge1xuICBmcm9tIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogODAwOyB9XG4gIHRvIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDsgfSB9XG5cbkBrZXlmcmFtZXMgc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wMC1ib3R0b20tbG9naW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDBweCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICA0OCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDBweCk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wMS1ib3R0b20tbG9naW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDE2cHgsIDBweCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICA0OCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDBweCk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wMi1ib3R0b20tbG9naW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDMycHgsIDBweCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICA0OCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDBweCk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wMy1ib3R0b20tbG9naW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDQ4cHgsIDBweCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICA0OCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDBweCk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wNC1ib3R0b20tbG9naW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDU2cHgsIDBweCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICA0OCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDBweCk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgY3ViZUxvb3AtYm90dG9tLWxvZ2luIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCB2YXIoLS1jdWJlU3RhcnQpLCAwcHgpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAlLCA2MCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCB2YXIoLS1jdWJlR2FwKSwgMHB4KTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBzZXJ2ZXJBbmltYXRpb25Ub3AtYm90dG9tLWxvZ2luIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAzMnB4LCAwcHgpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgNDglIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwcHgpO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5Aa2V5ZnJhbWVzIGVsZW1lbnRMb29wVmVydGljYWwge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtMTVweCwgMHB4KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpOyB9IH1cblxuLnBhZ2UtbG9naW4ubGFnb20tZnV0dXJpc3RpYyAubWFpbi1ib2R5LWhhcy1ib3R0b20taWxsdXN0cmF0aW9uIC5sb2dpbi13cmFwcGVyLFxuLnBhZ2UtbG9naW4ubGFnb20tZnV0dXJpc3RpYyAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubG9naW4td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucGFnZS1sb2dpbi5sYWdvbS1mdXR1cmlzdGljIC5tYWluLWJvZHktaGFzLWJvdHRvbS1pbGx1c3RyYXRpb24gLmxvZ2luLXdyYXBwZXI6OmJlZm9yZSxcbiAgLnBhZ2UtbG9naW4ubGFnb20tZnV0dXJpc3RpYyAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubG9naW4td3JhcHBlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWxvZ2luLWJnKTtcbiAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgei1pbmRleDogLTE7IH1cblxuLnBhZ2UtbG9naW4tZGVmYXVsdC5sYWdvbS1mdXR1cmlzdGljIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbiA+IGRpdjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgdmFyKC0tYm9keS1iZykgMCUsIHRyYW5zcGFyZW50IDEwMCUpOyB9XG5cbi5wYWdlLWxvZ2luLmxhZ29tLWZ1dHVyaXN0aWMgLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi1kZWZhdWx0IHtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTsgfVxuICAucGFnZS1sb2dpbi5sYWdvbS1mdXR1cmlzdGljIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tZGVmYXVsdCAuc2lkZS1pbGx1c3RyYXRpb24uc2lkZS1pbGx1c3RyYXRpb24tYmcge1xuICAgIG1peC1ibGVuZC1tb2RlOiBjb2xvci1idXJuOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzE5Ljk4cHgpIHtcbiAgLnBhZ2UtbG9naW4ubGFnb20tZnV0dXJpc3RpYyAubWFpbi1ib2R5LWhhcy1zaWRlYmFyLWlsbHVzdHJhdGlvbiAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uID4gZGl2OjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsIHZhcigtLWJvZHktYmcpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIE5ldHdvcmsgU3RhdHVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5uZXR3b3JrLXN0YXR1cyB7XG4gIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpOyB9XG4gIC5uZXR3b3JrLXN0YXR1cy10b3Age1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWhlYWRlci1iZyk7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgIC5uZXR3b3JrLXN0YXR1cy10b3AgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5uZXR3b3JrLXN0YXR1cy10b3AgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5uZXR3b3JrLXN0YXR1cy10b3AgPiAuZC1mbGV4IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLm5ldHdvcmstc3RhdHVzLWJvZHkgPiAucGFuZWw6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDA7IH1cbiAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnBhbmVsIHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnBhbmVsOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wYW5lbC1oZWFkaW5nIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTN4KTsgfVxuICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wYW5lbC10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAubmV0d29yay1zdGF0dXMtYm9keSAucGFuZWwtdGl0bGUgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTsgfVxuICAgICAgICAubmV0d29yay1zdGF0dXMtYm9keSAucGFuZWwtdGl0bGUgc3BhbiBpIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gICAgICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wYW5lbC10aXRsZSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wYW5lbC10aXRsZSBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpOyB9IH1cbiAgICAubmV0d29yay1zdGF0dXMtYm9keSAucGFuZWwtYm9keSB7XG4gICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgICAubmV0d29yay1zdGF0dXMtYm9keSAucGFuZWwtYm9keSA+IHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnBhbmVsLWZvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTN4KTsgfVxuICAgICAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnBhbmVsLWZvb3RlciA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgICAubmV0d29yay1zdGF0dXMtYm9keSAucGFuZWwtZm9vdGVyIGRpdiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gICAgICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wYW5lbC1mb290ZXIgZGl2IGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnBhbmVsLWZvb3RlciB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wYW5lbC1mb290ZXIgZGl2ICsgZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0xeCkgMCAwIDA7IH0gfVxuICAubmV0d29yay1zdGF0dXMtYm9keSAucHJpb3JpdHkge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wcmlvcml0eTpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKTtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTFmXCI7XG4gICAgICB0b3A6IDVweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAubmV0d29yay1zdGF0dXMtYm9keSAucHJpb3JpdHktdGV4dCB7XG4gICAgICBwYWRkaW5nOiAwIDhweCAwIDE4cHg7IH1cbiAgICAubmV0d29yay1zdGF0dXMtYm9keSAucHJpb3JpdHktYWZmZWN0aW5nIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gICAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnByaW9yaXR5LW1lZGl1bTpiZWZvcmUsXG4gICAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnByaW9yaXR5LW1lZGl1bSAucHJpb3JpdHktdGV4dCB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTsgfVxuICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wcmlvcml0eS1oaWdoOmJlZm9yZSxcbiAgICAubmV0d29yay1zdGF0dXMtYm9keSAucHJpb3JpdHktaGlnaCAucHJpb3JpdHktdGV4dCB7XG4gICAgICBjb2xvcjogI2ZmNzg0OTsgfVxuICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wcmlvcml0eS1jcml0aWNhbDpiZWZvcmUsXG4gICAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnByaW9yaXR5LWNyaXRpY2FsIC5wcmlvcml0eS10ZXh0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgIC5uZXR3b3JrLXN0YXR1cy1ib2R5IC5wcmlvcml0eSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpOyB9IH1cbiAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLm1lc3NhZ2Uge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLm5ldHdvcmstc3RhdHVzLWJvZHkgLmFsZXJ0IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5uZXR3b3JrLXN0YXR1cy1wYWdpbmF0aW9uIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci13aWR0aDogMXB4IDAgMDsgfVxuXG4ubGFnb20tZGVmYXVsdCAubmV0d29yay1zdGF0dXMtdG9wIGxhYmVsIHtcbiAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cblxuLmxhZ29tLWRlZmF1bHQgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnBhbmVsIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cbiAgLmxhZ29tLWRlZmF1bHQgLm5ldHdvcmstc3RhdHVzLWJvZHkgLnBhbmVsIC5wYW5lbC1mb290ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFByb2R1Y3QgRGV0YWlscyAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb2R1Y3QtZGV0YWlscyB7XG4gIG1hcmdpbjogMCAwIHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZykgMDsgfVxuICAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDM2NHB4OyB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uOm5vdCgucGFuZWwtZGVmYXVsdCkge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJvZHVjdC1kZXRhaWxzLWJnKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTsgfVxuICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbi5wcm9kdWN0LWljb24tc20ge1xuICAgICAgbWluLWhlaWdodDogMjUwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMiAqIHZhcigtLXNwYWNpbmctMXgpKTsgfSB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uOm5vdCgucGFuZWwtZGVmYXVsdCkgLnByb2R1Y3Qtc3RhdHVzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcm9kdWN0LWRldGFpbHMtdGl0bGUtY29sb3IpOyB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uOm5vdCgucGFuZWwtZGVmYXVsdCkgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBoZWlnaHQ6IDgwcHg7IH1cbiAgICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbjpub3QoLnBhbmVsLWRlZmF1bHQpIC5wcm9kdWN0LWltYWdlOmhhcyguZ3JhcGhpYy1pdGVtKSB7XG4gICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICBoZWlnaHQ6IDQ4cHg7IH1cbiAgICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbjpub3QoLnBhbmVsLWRlZmF1bHQpIC5wcm9kdWN0LWltYWdlIC5ncmFwaGljLWl0ZW0tYmcge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGMzM7IH1cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uOm5vdCgucGFuZWwtZGVmYXVsdCkgLnByb2R1Y3QtaW1hZ2UgLmdyYXBoaWMtaXRlbS1iZyBpIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbjpub3QoLnBhbmVsLWRlZmF1bHQpIC5wcm9kdWN0LW5hbWUge1xuICAgICAgY29sb3I6IHZhcigtLXByb2R1Y3QtZGV0YWlscy10aXRsZS1jb2xvcik7IH1cbiAgICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbjpub3QoLnBhbmVsLWRlZmF1bHQpIC5wcm9kdWN0LW5hbWUgPiBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXByb2R1Y3QtZGV0YWlscy10ZXh0LWNvbG9yKTsgfVxuICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbjpub3QoLnBhbmVsLWRlZmF1bHQpIC5wcm9kdWN0LWZvb3RlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogdmFyKC0tcHJvZHVjdC1kZXRhaWxzLXRpdGxlLWNvbG9yKTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItY29sb3IpOyB9XG4gICAgICAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWljb246bm90KC5wYW5lbC1kZWZhdWx0KSAucHJvZHVjdC1mb290ZXI6aG92ZXIsIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbjpub3QoLnBhbmVsLWRlZmF1bHQpIC5wcm9kdWN0LWZvb3Rlcjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWxpZ2h0ZXItY29sb3IpOyB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uOm5vdCgucGFuZWwtZGVmYXVsdCkgc3Bhbi5wcm9kdWN0LWZvb3Rlcjpob3ZlciwgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uOm5vdCgucGFuZWwtZGVmYXVsdCkgc3Bhbi5wcm9kdWN0LWZvb3Rlcjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1wcm9kdWN0LWRldGFpbHMtdGl0bGUtY29sb3IpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWljb24ucGFuZWwtZGVmYXVsdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbi5wYW5lbC1kZWZhdWx0IC5wcm9kdWN0LWNvbnRlbnQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWljb24ucGFuZWwtZGVmYXVsdCAucHJvZHVjdC1uYW1lIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4bGcpOyB9XG4gICAgICAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWljb24ucGFuZWwtZGVmYXVsdCAucHJvZHVjdC1uYW1lIC5sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbi5wYW5lbC1kZWZhdWx0IC5wcm9kdWN0LWltYWdlIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtZGVmYXVsdC1ib3JkZXIpICFpbXBvcnRhbnQ7IH1cbiAgICAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWljb24ucGFuZWwtZGVmYXVsdCAucHJvZHVjdC1mb290ZXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXBhbmVsLWJvcmRlci1kaXZpZGVyLWNvbG9yKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uLnBhbmVsLWRlZmF1bHQgLnByb2R1Y3QtcHJvZ3Jlc3MgLmJnLXN1Y2Nlc3Mge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyKSAhaW1wb3J0YW50OyB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uLnBhbmVsLWRlZmF1bHQgLnByb2R1Y3QtcHJvZ3Jlc3MgLmJnLWRhbmdlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlcikgIWltcG9ydGFudDsgfVxuICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbi5wYW5lbC1kZWZhdWx0IC5wcm9kdWN0LXByb2dyZXNzLXRleHQge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbi5wYW5lbC1kZWZhdWx0IC5wcm9kdWN0ICNzaXRlamV0RWRpdEJ0biB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uIC5wcm9kdWN0LWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4OiAxO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uIC5wcm9kdWN0LXN0YXR1cyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uIC5wcm9kdWN0LXN0YXR1cyAubGFiZWwge1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWljb24gLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCBhdXRvIGNhbGMoMyAqIHZhcigtLXNwYWNpbmctMXgpKTsgfVxuICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1uYW1lIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1uYW1lICsgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uIC5wcm9kdWN0LWZvb3RlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDRweCBjYWxjKDMgKiB2YXIoLS1zcGFjaW5nLTF4KSk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7IH1cbiAgICAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWljb24gPiBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctbGcpO1xuICAgIG1pbi1oZWlnaHQ6IDM2NHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcbiAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTsgfVxuICAucHJvZHVjdC1kZXRhaWxzLXRhYi1jb250YWluZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXRvcDogMDsgfVxuXG4udGFiLWNvbnRlbnQuZGV0YWlscy1ib3gtaGlkZGVuIC5wcm9kdWN0LWRldGFpbHMgPiAucm93IC5jb2wtbWQtNjpmaXJzdC1jaGlsZCB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnRhYi1jb250ZW50LmRldGFpbHMtYm94LWhpZGRlbiAucHJvZHVjdC1kZXRhaWxzID4gLnJvdyAuY29sLW1kLTY6bnRoLWNoaWxkKDIpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udGFiLWNvbnRlbnQuZG9tYWluLXVybC1yZW1vdmVkIC5wcm9kdWN0LWRldGFpbHMgLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1mb290ZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4udGFiLWNvbnRlbnQucHJvZHVjdC1ncm91cC1oaWRkZW4gLnByb2R1Y3QtZGV0YWlscyAucHJvZHVjdC1pY29uIC5wcm9kdWN0LWdyb3VwLW5hbWUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wYW5lbC1wcm9kdWN0LWRldGFpbHMge1xuICBwb3NpdGlvbjogc3RhdGljOyB9XG5cbi5tb2R1bGUtY2xpZW50LWFyZWEge1xuICBwYWRkaW5nOiAxNXB4OyB9XG4gIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJvcmRlcik7IH1cbiAgICAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbjpmb2N1cywgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b24uZm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKTsgfVxuICAgIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJvcmRlcik7IH1cbiAgICAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgICAub3BlbiA+IC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJvcmRlcik7IH1cbiAgICAgIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b246bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b246bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b246bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAgIC5vcGVuID4gLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b246bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgICAgLm9wZW4gPiAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMsXG4gICAgICAub3BlbiA+IC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgICAgLm9wZW4gPiAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKTsgfVxuICAgIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKS5mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b24uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b24uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b24uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b246YWN0aXZlLCAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbi5hY3RpdmUsXG4gICAgLm9wZW4gPiAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbi5kcm9wZG93bi10b2dnbGUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAgIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbiB7XG4gICAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b24uZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LCAubW9kdWxlLWNsaWVudC1hcmVhIGlucHV0LmJ1dHRvbltkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSAubG9hZGVyIC5zcGlubmVyID4gZGl2LFxuICAgICAgZmllbGRzZXRbZGlzYWJsZWRdIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpOyB9XG4gICAgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b24uZGlzYWJsZWQ6bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCksIC5tb2R1bGUtY2xpZW50LWFyZWEgaW5wdXQuYnV0dG9uW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgb3BhY2l0eTogMC42OyB9XG4gICAgLm1vZHVsZS1jbGllbnQtYXJlYSBpbnB1dC5idXR0b24gLmJhZGdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1jb2xvcik7IH1cblxuI2hvc3RpbmdSZW5ld2FsTGFiZWxTdGF0dXMgaDQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9kdWN0IERldGFpbHMgLSBQcm9kdWN0IFVwZ3JhZGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnVwZ3JhZGUtY29uZmlnLW9wdGlvbiA+IGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cblxuLnVwZ3JhZGUtY29uZmlnLW9wdGlvbiArIC51cGdyYWRlLWNvbmZpZy1vcHRpb24ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuXG4udXBncmFkZS1jb25maWctb3B0aW9uIC5wYW5lbCBoNiB7XG4gIGNvbG9yOiAjYWNiMGI4O1xuICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4OyB9XG5cbi51cGdyYWRlLWNvbmZpZy1vcHRpb24gLnBhbmVsIC5wYW5lbC1ib2R5ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW46IDA7IH1cblxuLnVwZ3JhZGUtY29uZmlnLW9wdGlvbiAudXBncmFkZS1jdXJyZW50IHtcbiAgcGFkZGluZy1yaWdodDogMjRweDsgfVxuICAudXBncmFkZS1jb25maWctb3B0aW9uIC51cGdyYWRlLWN1cnJlbnQ6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLThweDtcbiAgICBib3R0b206IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlxcZTkwOFwiO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCkgIWltcG9ydGFudDtcbiAgICBzcGVhazogbm9uZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IH1cblxuLnVwZ3JhZGUtY29uZmlnLW9wdGlvbiAudXBncmFkZS1uZXcge1xuICBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cblxuLnVwZ3JhZGUtc3VtbWFyeSAudXBncmFkZS1jdXJyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gIC51cGdyYWRlLXN1bW1hcnkgLnVwZ3JhZGUtY3VycmVudDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBib3R0b206IDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKSAhaW1wb3J0YW50O1xuICAgIHNwZWFrOiBub25lO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuXG4udXBncmFkZS1zdW1tYXJ5IC51cGdyYWRlLW5ldyB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9kdWN0IERldGFpbHMgLSBjUGFuZWwgUXVpY2sgU2hvcnRjdXRzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5jcGFuZWwtZmVhdHVyZS1yb3cge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jcGFuZWwtZmVhdHVyZS1yb3cgLmJ0bi1saW5rIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmNwYW5lbC1mZWF0dXJlLXJvdyAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWxpbmstY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmNwYW5lbC1hY3Rpb25zLWJ0biAuYnRuICsgLmJ0biB7XG4gIG1hcmdpbi1sZWZ0OiA2cHg7IH1cblxuLnBhZ2UtY2xpZW50YXJlYXByb2R1Y3RkZXRhaWxzICNPdmVydmlldyAucHJvZHVjdC1kZXRhaWxzIC5wcm9kdWN0LWluZm8gLmxpc3QtaW5mbyBoNCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjRweDsgfVxuXG4uYmlsbGluZ092ZXJ2aWV3IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpOyB9XG4gIC5iaWxsaW5nT3ZlcnZpZXcgW2NsYXNzKj0nY29sLSddID4gLnJvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgLmJpbGxpbmdPdmVydmlldyAucm93ID4gaDQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgaGVpZ2h0OiAyNHB4OyB9XG4gIC5iaWxsaW5nT3ZlcnZpZXcgLnJvdyAjYXV0b19yZW5ld2FsX2NvbmZpZ19vZmYsXG4gIC5iaWxsaW5nT3ZlcnZpZXcgLnJvdyAjYXV0b19yZW5ld2FsX2NvbmZpZ19vbiB7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICBtYXJnaW4tbGVmdDogMTJweDsgfVxuXG4jcGxlc2tXb3JkUHJlc3MgI3dvcmRQcmVzc0luc3RhbGxSZXN1bHRSb3cgLmFsZXJ0LnN1Y2Nlc3MgPiBhIHtcbiAgbWFyZ2luOiAwIDVweDsgfVxuICAjcGxlc2tXb3JkUHJlc3MgI3dvcmRQcmVzc0luc3RhbGxSZXN1bHRSb3cgLmFsZXJ0LnN1Y2Nlc3MgPiBhOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuYmlsbGluZ092ZXJ2aWV3IC5yb3cgI2F1dG9fcmVuZXdhbF9jb25maWdfb2ZmLFxuICAuYmlsbGluZ092ZXJ2aWV3IC5yb3cgI2F1dG9fcmVuZXdhbF9jb25maWdfb24ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUHJvZHVjdCBEZXRhaWxzIC0gS25vYiBEaWFsc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uY3BhbmVsLXVzYWdlLXN0YXRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmctZm9ybSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuY3BhbmVsLXVzYWdlLXN0YXRzIC5wYW5lbC1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleDogMTtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5jcGFuZWwtdXNhZ2Utc3RhdHMgLnBhbmVsLWJvZHkgLnJvdyB7XG4gICAgICBmbGV4OiAxOyB9XG4gIC5jcGFuZWwtdXNhZ2Utc3RhdHMgLnBhbmVsLWZvb3RlciB7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTsgfVxuXG4udXNhZ2Utc3RhdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC51c2FnZS1zdGF0cyA+IGRpdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51c2FnZS1zdGF0cyBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTsgfVxuICAgIC51c2FnZS1zdGF0cyBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgICAudXNhZ2Utc3RhdHMgc3BhbjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfVxuICAudXNhZ2Utc3RhdHMgLmtub2ItZGlhbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDRweDtcbiAgICBoZWlnaHQ6IDgwcHg7IH1cblxuLnVzYWdlLWRpYWwge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1sZWZ0OiAtMzBweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAtOHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMHB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKSAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYmFzZSkgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNCkgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5zZWN0aW9uLWhvb2stb3V0cHV0Lm5vLWZsb2F0LWJhbm5lciAuY2Fyb3VzZWwtaXRlbSB7XG4gIGZsb2F0OiB1bnNldDsgfVxuXG4uc2VjdGlvbi1ob29rLW91dHB1dCAucHJvbW8tYmFubmVyLXNsaW0sXG4uc2VjdGlvbi1ob29rLW91dHB1dCAucHJvbW90aW9ucy1zbGlkZXIge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4uc2VjdGlvbi1ob29rLW91dHB1dCA+IGJyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2VjdGlvbi1ob29rLW91dHB1dCAjcHJvbW90aW9ucy1zbGlkZXIge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3cpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgVGlja2V0IFJlcGx5ICYmIFRhYnMgU3R5bGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS12aWV3dGlja2V0OmhhcygucGFuZWwtdGFicykgLm1haW4tZ3JpZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGNvbHVtbi1nYXA6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpOyB9XG4gIC5wYWdlLXZpZXd0aWNrZXQ6aGFzKC5wYW5lbC10YWJzKSAubWFpbi1zaWRlYmFyIHtcbiAgICBtYXJnaW46IDA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnBhZ2Utdmlld3RpY2tldDpoYXMoLnBhbmVsLXRhYnMpIC5tYWluLWdyaWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAucGFnZS12aWV3dGlja2V0OmhhcygucGFuZWwtdGFicykgLm1haW4tc2lkZWJhciB7XG4gICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi50aWNrZXQtY3JlYXRvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctMngpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgZmxleC1ncm93OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC50aWNrZXQtY3JlYXRvciAuY2xpZW50LWF2YXRhciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnRpY2tldC1jcmVhdG9yIC5jbGllbnQtYXZhdGFyIGltZyB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7IH0gfVxuICAudGlja2V0LWNyZWF0b3IgLmNyZWF0b3ItZGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAgICAgLnRpY2tldC1jcmVhdG9yIC5jcmVhdG9yLWRldGFpbHMge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTsgfSB9XG4gICAgLnRpY2tldC1jcmVhdG9yIC5jcmVhdG9yLWRldGFpbHMtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC50aWNrZXQtY3JlYXRvciAuY3JlYXRvci1kZXRhaWxzLW5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTsgfVxuICAgIC50aWNrZXQtY3JlYXRvciAuY3JlYXRvci1kZXRhaWxzLWVtYWlsIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gIC50aWNrZXQtY3JlYXRvci1ndWVzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgIC50aWNrZXQtY3JlYXRvci1ndWVzdCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuICAgIC50aWNrZXQtY3JlYXRvci1ndWVzdCA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIHJvdy1nYXA6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgZmxleC1ncm93OiAxOyB9XG5cbi5wYW5lbC10aWNrZXQtcmVwbHkgLmNyZWF0b3ItZGV0YWlscyxcbi5wYW5lbC10aWNrZXQtcmVwbHkgLmRlcGFydG1lbnQtZHJvcGRvd24sXG4ub3Blbi10aWNrZXQtaW5mb3JtYXRpb24gLmNyZWF0b3ItZGV0YWlscyxcbi5vcGVuLXRpY2tldC1pbmZvcm1hdGlvbiAuZGVwYXJ0bWVudC1kcm9wZG93biB7XG4gIGZsZXgtZ3JvdzogMTsgfVxuXG4ucGFuZWwtdGlja2V0LXJlcGx5IHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2Etc2VjdGlvbi1zbS1zcGFjaW5nKTsgfVxuICAucGFuZWwtdGlja2V0LXJlcGx5IC5wYW5lbC10YWJzIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgLyogRmlyZWZveCAqL1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMCsgKi8gfVxuICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLnBhbmVsLXRhYnM6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5wYW5lbC10YWJzIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBjb2x1bW4tZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLnBhbmVsLXRpY2tldC1yZXBseSAudGFiLXJlY2lwaWVudHMgLnRhYi1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcm93LWdhcDogOHB4OyB9XG4gIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1yZWNpcGllbnRzIC5jYy1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1yZWNpcGllbnRzIC5jYy1hY3Rpb25zIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC50YWItcmVjaXBpZW50cyAuY2MtYWN0aW9ucyAuYnRuLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLnBhbmVsLXRpY2tldC1yZXBseSAudGFiLXJlY2lwaWVudHMgLmNjLWFjdGlvbnMgLmlucHV0LWdyb3VwLXByZWljb24gaW5wdXQge1xuICAgICAgbWluLXdpZHRoOiAyOTZweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAudGFiLXJlY2lwaWVudHMgLmNjLWFjdGlvbnMgLmlucHV0LWdyb3VwLXByZWljb24ge1xuICAgICAgICBmbGV4LWdyb3c6IDE7IH1cbiAgICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAudGFiLXJlY2lwaWVudHMgLmNjLWFjdGlvbnMgLmlucHV0LWdyb3VwLXByZWljb24gaW5wdXQge1xuICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAudGFiLXJlY2lwaWVudHMgLmNjLWFjdGlvbnMgLmlucHV0LWdyb3VwLXByZWljb24ge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC50YWItcmVjaXBpZW50cyAuY2MtYWN0aW9ucyAuaW5wdXQtZ3JvdXAtcHJlaWNvbiBpbnB1dCB7XG4gICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgbWluLXdpZHRoOiB1bnNldDsgfSB9XG4gIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1yZWNpcGllbnRzOmhhcyguYWxlcnQtZGFuZ2VyKSAuaW5wdXQtZ3JvdXAtcHJlaWNvbiB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXIpICFpbXBvcnRhbnQ7IH1cbiAgICAucGFuZWwtdGlja2V0LXJlcGx5IC50YWItcmVjaXBpZW50czpoYXMoLmFsZXJ0LWRhbmdlcikgLmlucHV0LWdyb3VwLXByZWljb24gaSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyKSAhaW1wb3J0YW50OyB9XG4gIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1hdHRhY2hlbWVudHMgLnRhYi1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgLnBhbmVsLXRpY2tldC1yZXBseSAudGFiLWF0dGFjaGVtZW50cyAuYXR0YWNobWVudC1uYW1lIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuICAucGFuZWwtdGlja2V0LXJlcGx5IC50YWItYWRkaXRpb25hbC1pbmZvcm1hdGlvbiAudGFiLWRldGFpbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAucGFuZWwtdGlja2V0LXJlcGx5IC50YWItYWRkaXRpb25hbC1pbmZvcm1hdGlvbiAuaW5mb3JtYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1hZGRpdGlvbmFsLWluZm9ybWF0aW9uIC5pbmZvcm1hdGlvbi10aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1hZGRpdGlvbmFsLWluZm9ybWF0aW9uIC5pbmZvcm1hdGlvbi12YWx1ZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy0xeCkgMTJweDtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1mYWRlZCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTsgfVxuICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAudGFiLWFkZGl0aW9uYWwtaW5mb3JtYXRpb24gLmluZm9ybWF0aW9uLXZhbHVlIGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAucGFuZWwtdGlja2V0LXJlcGx5IC50YWItc2Vuc2l0aXZlICN1cGRhdGVEYXRhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAucGFuZWwtdGlja2V0LXJlcGx5IC50YWItc2Vuc2l0aXZlICN1cGRhdGVEYXRhIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDQycHg7XG4gICAgICByaWdodDogMTBweDsgfVxuICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1wcmVpY29uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtcHJlaWNvbiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAxMHB4OyB9XG4gICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1wcmVpY29uIC5pbnB1dC1ncm91cC1wcmVwZW5kIGkge1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7IH1cbiAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1wcmVpY29uIGlucHV0IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1wcmVpY29uIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvci1wbGFjZWhvbGRlcik7IH1cbiAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1wcmVpY29uOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1ob3Zlci1jb2xvcik7IH1cbiAgICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLmlucHV0LWdyb3VwLXByZWljb246aG92ZXIgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLXBsYWNlaG9sZGVyLWNvbG9yKTsgfVxuICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLmlucHV0LWdyb3VwLXByZWljb246aGFzKGlucHV0OmZvY3VzLCBpbnB1dDphY3RpdmUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1jb2xvcik7IH1cbiAgICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLmlucHV0LWdyb3VwLXByZWljb246aGFzKGlucHV0OmZvY3VzLCBpbnB1dDphY3RpdmUpIC5pbnB1dC1ncm91cC1wcmVwZW5kIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1wbGFjZWhvbGRlci1jb2xvcik7IH1cbiAgICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLmlucHV0LWdyb3VwLXByZWljb246aGFzKGlucHV0OmZvY3VzLCBpbnB1dDphY3RpdmUpIC5pbnB1dC1ncm91cC1wcmVwZW5kIGkge1xuICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTsgfVxuICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKGJvcmRlci1yYWRpdXMteHMpO1xuICAgIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7IH1cbiAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyAuaW5wdXQtZ3JvdXAtcHJlcGVuZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpOyB9XG4gICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpOyB9XG4gICAgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtaWNvbnMgLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpOyB9XG4gICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyAuaW5wdXQtZ3JvdXAtYXBwZW5kIGJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtaWNvbnMgLmlucHV0LWdyb3VwLWFwcGVuZCBidXR0b24gaSB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7IH1cbiAgICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtaWNvbnMgLmlucHV0LWdyb3VwLWFwcGVuZCBidXR0b246aG92ZXIgaSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlcik7IH1cbiAgICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLmlucHV0LWdyb3VwLWljb25zIC5pbnB1dC1ncm91cC1hcHBlbmQtZGFuZ2VyIGJ1dHRvbiBpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXN0YXRlLWRhbmdlci10ZXh0KTsgfVxuICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtaWNvbnMgLmlucHV0LWdyb3VwLWFwcGVuZC1kYW5nZXIgYnV0dG9uOmhvdmVyIGkge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXIpOyB9XG4gICAgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtaWNvbnMgLmlucHV0LWdyb3VwLWFwcGVuZCxcbiAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyAuaW5wdXQtZ3JvdXAtcHJlcGVuZCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIG1pbi13aWR0aDogMzBweDsgfVxuICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtaWNvbnMgLmlucHV0LWdyb3VwLWFwcGVuZCBhLCAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyAuaW5wdXQtZ3JvdXAtYXBwZW5kIGJ1dHRvbixcbiAgICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLmlucHV0LWdyb3VwLWljb25zIC5pbnB1dC1ncm91cC1wcmVwZW5kIGEsXG4gICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyAuaW5wdXQtZ3JvdXAtYXBwZW5kIGEgaSwgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtaWNvbnMgLmlucHV0LWdyb3VwLWFwcGVuZCBidXR0b24gaSxcbiAgICAgICAgLnBhbmVsLXRpY2tldC1yZXBseSAuaW5wdXQtZ3JvdXAtaWNvbnMgLmlucHV0LWdyb3VwLXByZXBlbmQgYSBpLFxuICAgICAgICAucGFuZWwtdGlja2V0LXJlcGx5IC5pbnB1dC1ncm91cC1pY29ucyAuaW5wdXQtZ3JvdXAtcHJlcGVuZCBidXR0b24gaSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLmlucHV0LWdyb3VwLWljb25zIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktZmFkZWQpOyB9XG4gIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICByb3ctZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgLnBhbmVsLXRpY2tldC1yZXBseSAudGFiLWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1kZXNjIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuICAgIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1kZXNjIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gIC5wYW5lbC10aWNrZXQtcmVwbHkgLnRhYi1uby1kYXRhIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkF0dGFjaGVtZW50cyBTdHlsZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmF0dGFjaGVtZW50cy1jb250YWluZXIgLmFkZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIHBhZGRpbmc6IDExcHggdmFyKC0tc3BhY2luZy0yeCk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XG4gIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuYXR0YWNoZW1lbnRzLWNvbnRhaW5lciAuYWRkIHBhdGgge1xuICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgLmF0dGFjaGVtZW50cy1jb250YWluZXIgLmFkZDpob3ZlciwgLmF0dGFjaGVtZW50cy1jb250YWluZXIgLmFkZDpmb2N1cy12aXNpYmxlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpOyB9XG4gICAgLmF0dGFjaGVtZW50cy1jb250YWluZXIgLmFkZDpob3ZlciBwYXRoLCAuYXR0YWNoZW1lbnRzLWNvbnRhaW5lciAuYWRkOmZvY3VzLXZpc2libGUgcGF0aCB7XG4gICAgICBmaWxsOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxuXG4uYXR0YWNoZW1lbnRzLXVwbG9hZHMge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgcGFkZGluZzogOHB4IHZhcigtLXNwYWNpbmctMngpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1iZyk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiA4cHg7IH1cbiAgLmF0dGFjaGVtZW50cy11cGxvYWRzIGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYXR0YWNoZW1lbnRzLXVwbG9hZHMgPiAuYnRuIHtcbiAgICBvcmRlcjogMjtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBwYWRkaW5nOiA2cHggMTJweDsgfVxuICAuYXR0YWNoZW1lbnRzLXVwbG9hZHMgLmZpbGUtaW5wdXQge1xuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC14cyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1mYWRlZCk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpOyB9XG4gICAgLmF0dGFjaGVtZW50cy11cGxvYWRzIC5maWxlLWlucHV0LXRleHQge1xuICAgICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgLmF0dGFjaGVtZW50cy11cGxvYWRzIC5maWxlLWlucHV0LXJlbW92ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyKTtcbiAgICAgIHdpZHRoOiB2YXIoLS11aS1oZWlnaHQteHMpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQteHMpO1xuICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgICAgLmF0dGFjaGVtZW50cy11cGxvYWRzIC5maWxlLWlucHV0LXJlbW92ZTpob3ZlciwgLmF0dGFjaGVtZW50cy11cGxvYWRzIC5maWxlLWlucHV0LXJlbW92ZTpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyKTtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuXG4udGlja2V0LWF0dGFjaG1lbnRzLW1lc3NhZ2Uge1xuICBtYXJnaW46IHZhcigtLXNwYWNpbmctMXgpIDAgMCAwO1xuICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pOyB9XG5cbi5vcGVuLXRpY2tldC1mb3JtIC50aWNrZXQtYXR0YWNobWVudHMtbWVzc2FnZSxcbi5zZWN0aW9uLWZvcm0gLnRpY2tldC1hdHRhY2htZW50cy1tZXNzYWdlLFxuLnBhbmVsLXRpY2tldC1yZXBseSAudGlja2V0LWF0dGFjaG1lbnRzLW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiA2cHg7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gIC5vcGVuLXRpY2tldC1mb3JtIC50aWNrZXQtYXR0YWNobWVudHMtbWVzc2FnZSBpLFxuICAuc2VjdGlvbi1mb3JtIC50aWNrZXQtYXR0YWNobWVudHMtbWVzc2FnZSBpLFxuICAucGFuZWwtdGlja2V0LXJlcGx5IC50aWNrZXQtYXR0YWNobWVudHMtbWVzc2FnZSBpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgVGlja2V0IEluZm9ybWF0aW9uIFN0eWxlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbCA+IC5saXN0LWdyb3VwIC50aWNrZXQtZGV0YWlscy1jaGlsZHJlbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAucGFuZWwgPiAubGlzdC1ncm91cCAudGlja2V0LWRldGFpbHMtY2hpbGRyZW4gYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhbmVsID4gLmxpc3QtZ3JvdXAgLnRpY2tldC1kZXRhaWxzLWNoaWxkcmVuIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBhbmVsLnBhbmVsLXNpZGViYXIgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uIC5saXN0LWdyb3VwLWl0ZW06bm90KC50aWNrZXQtZGV0YWlscy1jaGlsZHJlbikge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gIC5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLmxpc3QtZ3JvdXAtaXRlbTpub3QoLnRpY2tldC1kZXRhaWxzLWNoaWxkcmVuKSBpOm5vdCgubHMtY2FyZXQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHggIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpOyB9XG5cbi5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLmxpc3QtZ3JvdXAtaXRlbS1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cbiAgLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnQgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnQgLmZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGNvbHVtbi1nYXA6IDRweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuXG4ucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbi1tb2JpbGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uLW1vYmlsZSAubGlzdC1ncm91cC1pdGVtIC5saXN0LWdyb3VwLWl0ZW0tY29udGVudCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbi1tb2JpbGUgLmxpc3QtZ3JvdXAtaXRlbSAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnQgLnRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgfVxuICAucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uLW1vYmlsZSAubGlzdC1ncm91cC1pdGVtOmhhcygubHMtY2FyZXQpIC5scy1jYXJldCB7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbi1tb2JpbGUgLmxpc3QtZ3JvdXAtaXRlbS5jb2xsYXBzZWQ6aGFzKC5scy1jYXJldCkge1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uLW1vYmlsZSAubGlzdC1ncm91cC1pdGVtLmNvbGxhcHNlZDpoYXMoLmxzLWNhcmV0KSAubHMtY2FyZXQge1xuICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbi1tb2JpbGUgLmxpc3QtZ3JvdXAtaXRlbTpub3QoOmZpcnN0LWNoaWxkKSAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnQsXG4gIC5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24tbW9iaWxlIC5saXN0LWdyb3VwLWl0ZW06bm90KDpmaXJzdC1jaGlsZCkgLnRpY2tldC1yZXF1ZXN0b3ItbmFtZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IH1cblxuLnBhbmVsLnBhbmVsLXNpZGViYXIgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5WaWV3IFRpY2tldCBQYWdlIC0gUmVwbHlcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnRpY2tldC1yZXBseSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTMpO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cy1sZyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudGlja2V0LXJlcGx5OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogNHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktbGlnaHRlci0zKTsgfVxuICAudGlja2V0LXJlcGx5Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnRpY2tldC1yZXBseS10b3Age1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2staGVhZGVyLWJnKTtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UtdikgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuICAgIC50aWNrZXQtcmVwbHktdG9wIC5jbGllbnQtYXZhdGFyICsgLnVzZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuICAgIC50aWNrZXQtcmVwbHktdG9wIC51c2VyIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy0xeCk7IH1cbiAgICAgIC50aWNrZXQtcmVwbHktdG9wIC51c2VyLWluZm8ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDsgfVxuICAgICAgLnRpY2tldC1yZXBseS10b3AgLnVzZXIgLnR5cGUtbmFtZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIobGluZS1oZWlnaHQtc20pOyB9XG4gICAgICAudGlja2V0LXJlcGx5LXRvcCAudXNlci1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAycHg7XG4gICAgICAgIHRleHQtYWxpZ246IGVuZDsgfVxuICAgIC50aWNrZXQtcmVwbHktdG9wIC5uYW1lIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7IH1cbiAgICAgIC50aWNrZXQtcmVwbHktdG9wIC5uYW1lID4gaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTsgfVxuICAgIC50aWNrZXQtcmVwbHktdG9wIC5kYXRlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTsgfVxuICAudGlja2V0LXJlcGx5LW1lc3NhZ2Uge1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDsgfVxuICAgIC50aWNrZXQtcmVwbHktbWVzc2FnZSA+ICo6bGFzdC1jaGlsZDpub3QocHJlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAudGlja2V0LXJlcGx5LW1lc3NhZ2UgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTJweCB2YXIoLS1zcGFjaW5nLTN4KSAxOHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1oZWFkZXItYmcpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHN0cm9uZyB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7IH1cbiAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBjb2x1bW4tZ2FwOiAxMnB4O1xuICAgICAgbWFyZ2luOiAxMnB4IDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYW5lbC1iZyk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgIC50aWNrZXQtcmVwbHktYXR0YWNobWVudHMgdWwgbGkgYTpob3ZlciwgLnRpY2tldC1yZXBseS1hdHRhY2htZW50cyB1bCBsaSBhOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7IH1cbiAgICAgICAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGE6aG92ZXIgaSwgLnRpY2tldC1yZXBseS1hdHRhY2htZW50cyB1bCBsaSBhOmZvY3VzLXZpc2libGUgaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAgICAgICAgIC50aWNrZXQtcmVwbHktYXR0YWNobWVudHMgdWwgbGkgYTpob3ZlciAuYXR0YWNobWVudC1jb250YWluZXIsIC50aWNrZXQtcmVwbHktYXR0YWNobWVudHMgdWwgbGkgYTpmb2N1cy12aXNpYmxlIC5hdHRhY2htZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXItNCk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlci0zKTsgfVxuICAgICAgICAgICAgLnRpY2tldC1yZXBseS1hdHRhY2htZW50cyB1bCBsaSBhOmhvdmVyIC5hdHRhY2htZW50LWNvbnRhaW5lciAuYXR0YWNobWVudC1leHRlbnNpb24sXG4gICAgICAgICAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGE6aG92ZXIgLmF0dGFjaG1lbnQtY29udGFpbmVyIC5hdHRhY2htZW50LW5hbWUsIC50aWNrZXQtcmVwbHktYXR0YWNobWVudHMgdWwgbGkgYTpmb2N1cy12aXNpYmxlIC5hdHRhY2htZW50LWNvbnRhaW5lciAuYXR0YWNobWVudC1leHRlbnNpb24sXG4gICAgICAgICAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGE6Zm9jdXMtdmlzaWJsZSAuYXR0YWNobWVudC1jb250YWluZXIgLmF0dGFjaG1lbnQtbmFtZSB7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gICAgICAgIC50aWNrZXQtcmVwbHktYXR0YWNobWVudHMgdWwgbGkgYSBpIHtcbiAgICAgICAgICBwYWRkaW5nLWJsb2NrOiAxMHB4O1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzOyB9XG4gICAgICAgIC50aWNrZXQtcmVwbHktYXR0YWNobWVudHMgdWwgbGkgYSAuYXR0YWNobWVudC1jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWZhZGVkKTtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuM3M7IH1cbiAgICAgICAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGEgLmF0dGFjaG1lbnQtY29udGFpbmVyIC5hdHRhY2htZW50LWV4dGVuc2lvbixcbiAgICAgICAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGEgLmF0dGFjaG1lbnQtY29udGFpbmVyIC5hdHRhY2htZW50LW5hbWUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuM3M7IH1cbiAgICAgICAgICAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGEgLmF0dGFjaG1lbnQtY29udGFpbmVyIC5hdHRhY2htZW50LW5hbWUge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gIC50aWNrZXQtcmVwbHkuc3RhZmYge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWJnKTsgfVxuICAgIC50aWNrZXQtcmVwbHkuc3RhZmY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpOyB9XG4gICAgLnRpY2tldC1yZXBseS5zdGFmZiAudGlja2V0LXJlcGx5LXRvcCAuc3RhZmYtcmVwbHkge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMThweDtcbiAgICAgIGhlaWdodDogMThweDsgfVxuICAgIC50aWNrZXQtcmVwbHkuc3RhZmYgLnRpY2tldC1yZXBseS1hdmF0YXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMik7IH1cbiAgICAgIC50aWNrZXQtcmVwbHkuc3RhZmYgLnRpY2tldC1yZXBseS1hdmF0YXIgaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gIC50aWNrZXQtcmVwbHkgLnJhdGluZyxcbiAgLnRpY2tldC1yZXBseSAucmF0aW5nLWRvbmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGdhcDogM3B4O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDsgfVxuICAgIC50aWNrZXQtcmVwbHkgLnJhdGluZyBzcGFuLnN0YXIsXG4gICAgLnRpY2tldC1yZXBseSAucmF0aW5nLWRvbmUgc3Bhbi5zdGFyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA2IFByb1wiO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLnRpY2tldC1yZXBseSAucmF0aW5nIHNwYW4uc3Rhcjpob3ZlcixcbiAgICAgIC50aWNrZXQtcmVwbHkgLnJhdGluZy1kb25lIHNwYW4uc3Rhcjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICAudGlja2V0LXJlcGx5IC5yYXRpbmcgc3Bhbi5zdGFyOmhvdmVyIH4gc3Bhbi5zdGFyOmJlZm9yZSwgLnRpY2tldC1yZXBseSAucmF0aW5nIHNwYW4uc3Rhcjpob3ZlcjpiZWZvcmUsXG4gICAgICAgIC50aWNrZXQtcmVwbHkgLnJhdGluZy1kb25lIHNwYW4uc3Rhcjpob3ZlciB+IHNwYW4uc3RhcjpiZWZvcmUsXG4gICAgICAgIC50aWNrZXQtcmVwbHkgLnJhdGluZy1kb25lIHNwYW4uc3Rhcjpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgIGNvbG9yOiAjRjlCQjU3O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cbiAgICAgIC50aWNrZXQtcmVwbHkgLnJhdGluZyBzcGFuLnN0YXI6YmVmb3JlLFxuICAgICAgLnRpY2tldC1yZXBseSAucmF0aW5nLWRvbmUgc3Bhbi5zdGFyOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYwMDUnO1xuICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7IH1cbiAgLnRpY2tldC1yZXBseSAucmF0aW5nLWRvbmUgLnJhdGVkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pOyB9XG4gIC50aWNrZXQtcmVwbHkgLnJhdGluZy1kb25lIHNwYW4uc3RhciB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAudGlja2V0LXJlcGx5IC5yYXRpbmctZG9uZSBzcGFuLnN0YXIuYWN0aXZlOmJlZm9yZSB7XG4gICAgICBjb2xvcjogI0Y5QkI1NztcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cblxuI3RpY2tldFJlcGx5Qm94LmNvbGxhcHNlLnNob3csXG4jY3VzdG9tRmllbGRzQm94LmNvbGxhcHNlLnNob3csXG4jc3AtYWRkLWNvbW1lbnQuY29sbGFwc2Uuc2hvdyB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuXG4jdGlja2V0UmVwbHlCb3guY29sbGFwc2luZyxcbiNjdXN0b21GaWVsZHNCb3guY29sbGFwc2luZyxcbiNzcC1hZGQtY29tbWVudC5jb2xsYXBzaW5nIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG5cbiN0aWNrZXRSZXBseSAuY29sbGFwc2UtaWNvbixcbiNjdXN0b21GaWVsZHMgLmNvbGxhcHNlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7IH1cblxuI2N1c3RvbUZpZWxkc0JveCAuZm9ybS1jdXN0b21maWVsZHM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4jY3VzdG9tRmllbGRzQm94IC5mb3JtLWN1c3RvbWZpZWxkcyAuZm9ybS1ncm91cCAucmFkaW8sXG4jY3VzdG9tRmllbGRzQm94IC5mb3JtLWN1c3RvbWZpZWxkcyAuZm9ybS1ncm91cCAuY2hlY2tib3gge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAjY3VzdG9tRmllbGRzQm94IC5mb3JtLWN1c3RvbWZpZWxkcyAuZm9ybS1ncm91cCAucmFkaW86Zmlyc3Qtb2YtdHlwZSxcbiAgI2N1c3RvbUZpZWxkc0JveCAuZm9ybS1jdXN0b21maWVsZHMgLmZvcm0tZ3JvdXAgLmNoZWNrYm94OmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAjY3VzdG9tRmllbGRzQm94IC5mb3JtLWN1c3RvbWZpZWxkcyAuZm9ybS1ncm91cCAucmFkaW8gKyAuaGVscC1ibG9jayxcbiAgI2N1c3RvbUZpZWxkc0JveCAuZm9ybS1jdXN0b21maWVsZHMgLmZvcm0tZ3JvdXAgLmNoZWNrYm94ICsgLmhlbHAtYmxvY2sge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbiNjdXN0b21GaWVsZHNCb3ggLmZvcm0tY3VzdG9tZmllbGRzIC5mb3JtLWdyb3VwIC50aWNrZXQtYXR0YWNobWVudHMtbWVzc2FnZSB7XG4gIGNvbG9yOiB2YXIoLS1ncmF5KTsgfVxuXG4jY3VzdG9tRmllbGRzQm94IC5mb3JtLWN1c3RvbWZpZWxkcyAuZm9ybS1ncm91cCAuaGVscC1ibG9jayB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG5cbiNjdXN0b21GaWVsZHNCb3ggLmZvcm0tY3VzdG9tZmllbGRzIHNlbGVjdC5zZWxlY3RNdWx0aXBsZSB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkludGVncmF0aW9uIC0gUHJlbWl1bSBTdXBwb3J0IFRpY2tldHMgXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1zdXBwb3J0IC5zdXBwb3J0LXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucGFuZWwtc3VwcG9ydCAuc3VwcG9ydC10aXRsZSA+IGksIC5wYW5lbC1zdXBwb3J0IC5zdXBwb3J0LXRpdGxlID4gc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuXG4ucGFuZWwtc3VwcG9ydCAuc3VwcG9ydC1kZXNjIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucGFuZWwtc3VwcG9ydC5wYW5lbC1kZXBhcnRtZW50LWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnBhbmVsLXN1cHBvcnQucGFuZWwtZGVwYXJ0bWVudC1ib3ggPiAucGFuZWwtYm9keSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5wYW5lbC1zdXBwb3J0LnBhbmVsLWRlcGFydG1lbnQtYm94ID4gLnBhbmVsLWZvb3RlciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKSB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuVGlja2V0IFN0ZXAgVHdvIC0gU3VnZ2VzdGVkICBLQiBhcnRpY2xlc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4jYXV0b0Fuc3dlclN1Z2dlc3Rpb25zIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblRpY2tldHMgVGFibGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnRhYmxlIHRib2R5IHRyIHRkIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk9wZW4gVGlja2V0IFN0ZXBUd28gUGFuZWwgU3R5bGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5vcGVuLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtYm9keSAuZGVwYXJ0bWVudC1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7IH1cbiAgLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC5kZXBhcnRtZW50LWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUtY29udGVudCA+IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC5kZXBhcnRtZW50LWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUtY29udGVudCA+IHAge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cblxuLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC5kZXBhcnRtZW50LWRyb3Bkb3duLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTsgfVxuICAub3Blbi10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWJvZHkgLmRlcGFydG1lbnQtZHJvcGRvd24uc2hvdyAuZHJvcGRvd24tdG9nZ2xlIC5kcm9wZG93bi1jYXJldCBpIHtcbiAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucy1ob3Zlcik7IH1cblxuLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC5yZWxhdGVkLXByb2R1Y3QtZHJvcGRvd24gLnJlbGF0ZWQtaXRlbSB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIGZsZXgtZ3JvdzogMTsgfVxuXG4ub3Blbi10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWJvZHkgLnJlbGF0ZWQtcHJvZHVjdC1kcm9wZG93biAuZHJvcGRvd24tY29udGVudCB7XG4gIGZsZXgtZ3JvdzogMTsgfVxuXG4ub3Blbi10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWJvZHkgLnJlbGF0ZWQtcHJvZHVjdC1kcm9wZG93biAuZHJvcGRvd24tbGlzdC1pdGVtIC5yZWxhdGVkLWl0ZW0ge1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7IH1cbiAgLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC5yZWxhdGVkLXByb2R1Y3QtZHJvcGRvd24gLmRyb3Bkb3duLWxpc3QtaXRlbSAucmVsYXRlZC1pdGVtLW5hbWUgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cblxuLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC5yZWxhdGVkLXByb2R1Y3QtZHJvcGRvd24gLmRyb3Bkb3duLWxpc3QtaXRlbTpob3ZlciAucmVsYXRlZC1pdGVtLWdyb3VwLFxuLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC5yZWxhdGVkLXByb2R1Y3QtZHJvcGRvd24gLmRyb3Bkb3duLWxpc3QtaXRlbTpob3ZlciAucmVsYXRlZC1pdGVtLW5hbWUge1xuICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7IH1cblxuLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC50aWNrZXQtcHJpb3JpdHktZHJvcGRvd24ge1xuICBmbGV4LWdyb3c6IDE7IH1cbiAgLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC5wYW5lbC1ib2R5IC50aWNrZXQtcHJpb3JpdHktZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5vcGVuLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtYm9keSAudGlja2V0LXByaW9yaXR5LWRyb3Bkb3duIC5kcm9wZG93bi1saXN0LWl0ZW06aG92ZXIsIC5vcGVuLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtYm9keSAudGlja2V0LXByaW9yaXR5LWRyb3Bkb3duIC5kcm9wZG93bi1saXN0LWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLm9wZW4tdGlja2V0LWluZm9ybWF0aW9uIC50aWNrZXQtcHJpb3JpdHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5vcGVuLXRpY2tldC1mb3JtIC50aWNrZXQtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHJvdy1nYXA6IDEwcHg7IH1cbiAgLm9wZW4tdGlja2V0LWZvcm0gLnRpY2tldC1jb250ZW50IC5uYXYtdGFicyB7XG4gICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgLm9wZW4tdGlja2V0LWZvcm0gLnRpY2tldC1jb250ZW50IC5uYXYtdGFicyBhIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5vcGVuLXRpY2tldC1mb3JtIC50aWNrZXQtY29udGVudCAubmF2LXRhYnMgYTo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDsgfVxuICAub3Blbi10aWNrZXQtZm9ybSAudGlja2V0LWNvbnRlbnQgLnRhYi1tZXNzYWdlIC5hbGVydCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbHVtbi1nYXA6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAub3Blbi10aWNrZXQtZm9ybSAudGlja2V0LWNvbnRlbnQgLnRhYi1tZXNzYWdlLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTsgfVxuXG4ub3Blbi10aWNrZXQtZm9ybSAudGFiLXNlbnNpdGl2ZSAuYWxlcnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBjb2x1bW4tZ2FwOiAxMHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5vcGVuLXRpY2tldC1mb3JtIHRleHRhcmVhIHtcbiAgbWluLWhlaWdodDogMzI4cHg7IH1cblxuLnBhbmVsLWN1c3RvbWZpZWxkIC5oZWxwLWJsb2NrIGkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZWN0aW9uLWN1c3RvbS1maWVsZHMge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5zZWN0aW9uLWN1c3RvbS1maWVsZHM6aGFzKC5mb3JtLWdyb3VwKSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNlY3Rpb24tY3VzdG9tLWZpZWxkcyAucGFuZWwtY3VzdG9tZmllbGQgLmhlbHAtYmxvY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDZweDtcbiAgICBtYXJnaW4tYmxvY2s6IDA7IH1cbiAgICAuc2VjdGlvbi1jdXN0b20tZmllbGRzIC5wYW5lbC1jdXN0b21maWVsZCAuaGVscC1ibG9jayBpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5wYW5lbC1mb3JtLWFjdGlvbiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctbGcpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuS0IgU3VnZ2VzdGlvbiBGb3JtXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5rYi1zdWdnZXN0aW9uLWZvcm0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpc3QtZ3JvdXAtYmcpO1xuICBib3JkZXI6IHZhcigtLXBhbmVsLXNpZGViYXItbGlzdC1ncm91cC1ib3JkZXIpO1xuICBib3gtc2hhZG93OiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpc3QtZ3JvdXAtYm94LXNoYWRvdyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsLXNpZGViYXItbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpOyB9XG4gIC5rYi1zdWdnZXN0aW9uLWZvcm0gLmljb24sIC5rYi1zdWdnZXN0aW9uLWZvcm0gLmRlc2Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAua2Itc3VnZ2VzdGlvbi1mb3JtIC5pY29uIHN2ZyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4OyB9XG4gIC5rYi1zdWdnZXN0aW9uLWZvcm0gLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMTJweCArIDIgKiB2YXIoLS1zcGFjaW5nLTJ4KSk7IH1cbiAgLmtiLXN1Z2dlc3Rpb24tZm9ybSAuc2VhcmNoLWZpZWxkLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC5rYi1zdWdnZXN0aW9uLWZvcm0gLmRyb3Bkb3duLWxpc3QgLmxpc3QtZ3JvdXAtaXRlbSAua2Itc3VnZ2VzdGlvbi1kcm9wZG93bi1oZWFkaW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmtiLXN1Z2dlc3Rpb24tZm9ybSAuZHJvcGRvd24tbGlzdCAubGlzdC1ncm91cC1pdGVtIC5rYi1zdWdnZXN0aW9uLWRyb3Bkb3duLWhlYWRpbmcgcCB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDsgfVxuXG4vKipcclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiBAc2VjdGlvbiBUd28gRmFjdG9yIEF1dGhlbnRpY2F0aW9uXHJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICovXG5kaXYjdHdvZmFhY3RpdmF0aW9uIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgd2lkdGg6IDg1JTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG5kaXYjdHdvZmFhY3RpdmF0aW9uIC5lcnJvcmJveCB7XG4gIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY0RjRGO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICAtby1ib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG5kaXYjdHdvZmFhY3RpdmF0aW9uIHAge1xuICBtYXJnaW46IDE1cHggMDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBQYXltZW50IEdhdGV3YXlzIENoYXJnZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4jbWctY2hhcmdlLXRhYmxlIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTsgfVxuICAjbWctY2hhcmdlLXRhYmxlIC5zdWItaGVhZGluZyB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1jYS1zZWN0aW9uLXRpdGxlLWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWNhLXNlY3Rpb24tdGl0bGUtZm9udC13ZWlnaHQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1jYS1zZWN0aW9uLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oZWFkaW5ncy1tYXJnaW4tYm90dG9tKTsgfVxuICAjbWctY2hhcmdlLXRhYmxlIC50YWJsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tcGFuZWwtYm94LXNoYWRvdyk7XG4gICAgYm9yZGVyOiB2YXIoLS1wYW5lbC1ib3JkZXIpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWJnKTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAjbWctY2hhcmdlLXRhYmxlIC50YWJsZSB0aGVhZCB0ciB0aDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgMCAwIDA7IH1cbiAgICAjbWctY2hhcmdlLXRhYmxlIC50YWJsZSB0aGVhZCB0ciB0aDpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpIDAgMDsgfVxuICAgICNtZy1jaGFyZ2UtdGFibGUgLnRhYmxlIHRib2R5IHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAgICNtZy1jaGFyZ2UtdGFibGUgLnRhYmxlIHRib2R5IHRyOmxhc3Qtb2YtdHlwZSB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTsgfVxuICAgICAgI21nLWNoYXJnZS10YWJsZSAudGFibGUgdGJvZHkgdHI6bGFzdC1vZi10eXBlIHRkOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpIDA7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gU01TIENlbnRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFnZS11c2VyLXNlY3VyaXR5IC5tb2RhbC50d29mYS1zZXR1cCB0YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBhZ2UtdXNlci1zZWN1cml0eSAubW9kYWwudHdvZmEtc2V0dXAgdGFibGUgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpOyB9XG4gIC5wYWdlLXVzZXItc2VjdXJpdHkgLm1vZGFsLnR3b2ZhLXNldHVwIHRhYmxlID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KTsgfVxuICAucGFnZS11c2VyLXNlY3VyaXR5IC5tb2RhbC50d29mYS1zZXR1cCB0YWJsZSB0ciB0ZCArIHRkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLnBhZ2UtdXNlci1zZWN1cml0eSAubW9kYWwudHdvZmEtc2V0dXAgdGFibGUgdHIgdGQgKyB0ZCBpbnB1dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnBhZ2UtdXNlci1zZWN1cml0eSAubW9kYWwudHdvZmEtc2V0dXAgdGFibGUgKyBwW2FsaWduPVwiY2VudGVyXCJdIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYWdlLXVzZXItc2VjdXJpdHkgLm1vZGFsLnR3b2ZhLXNldHVwICNjb3VudHJ5X2NvZGUge1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICB3aWR0aDogNDVweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWJhc2Utdik7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5PcmRlciAtIE1haW4gR3JpZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ubWFpbi1jb250ZW50ICNjcmVkaXRDYXJkSW5wdXRGaWVsZHMgLnBhbmVsLWJvZHkgLmxpc3QtaW5mby5saXN0LWluZm8tdiB7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7IH1cblxuLm1haW4tY29udGVudCAuc3RyaXBlICNjcmVkaXRDYXJkSW5wdXRGaWVsZHMgPiAubmF2LXRhYnMgKyAucGFuZWwtYm9keSB7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfVxuXG4ubWFpbi1jb250ZW50IC5zdHJpcGUgI2NyZWRpdENhcmRJbnB1dEZpZWxkcyAjbmV3Q2FyZEluZm8ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLm1haW4tY29udGVudCAuc3RyaXBlICNjcmVkaXRDYXJkSW5wdXRGaWVsZHMgI3N0cmlwZUVsZW1lbnRzIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubWFpbi1jb250ZW50IC5zdHJpcGUgLnBhbmVsLWNvbGxhcHNlLmluICNjcmVkaXRDYXJkSW5wdXRGaWVsZHMgI3N0cmlwZUVsZW1lbnRzIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubWFpbi1jb250ZW50IC50ZXh0LWRpdmlkZXIgc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLWJsb2NrLWJnLWZvcm0pOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuT3JkZXIgLSBQcm9tb3Rpb24gQ29kZSBCb3hcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb21vLWNvZGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5wcm9tby1jb2RlLWRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pOyB9XG4gICAgLnByb21vLWNvZGUtZGVzY3JpcHRpb24gc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLmJvcmRlci1wcmltYXJ5IHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5PcmRlciAtIFBheW1lbnQgTWV0aG9kXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1wYXltZW50LW1ldGhvZCAucGFuZWwtYm9keSAucmFkaW8sXG4ucGFuZWwtY29sbGFwc2UtY3VzdG9tIC5wYW5lbC1ib2R5IC5yYWRpbyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucGFuZWwtcGF5bWVudC1tZXRob2QgLnBhbmVsLWJvZHkgLnJhZGlvLXN0eWxlZCxcbi5wYW5lbC1jb2xsYXBzZS1jdXN0b20gLnBhbmVsLWJvZHkgLnJhZGlvLXN0eWxlZCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuICAucGFuZWwtcGF5bWVudC1tZXRob2QgLnBhbmVsLWJvZHkgLnJhZGlvLXN0eWxlZC5jaGVja2VkICsgc3BhbixcbiAgLnBhbmVsLWNvbGxhcHNlLWN1c3RvbSAucGFuZWwtYm9keSAucmFkaW8tc3R5bGVkLmNoZWNrZWQgKyBzcGFuIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuXG4ucGFuZWwtcGF5bWVudC1tZXRob2QgLnBhbmVsLWJvZHkgKyAucGFuZWwtYm9keSxcbi5wYW5lbC1jb2xsYXBzZS1jdXN0b20gLnBhbmVsLWJvZHkgKyAucGFuZWwtYm9keSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuW2RhdGEtY29sbGFwc2VdIC5wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU4ZWM7IH1cblxuW2RhdGEtY29sbGFwc2VdIC5wYW5lbC1ib2R5LmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY3Zjg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJ0bi1wcmltYXJ5LWJnKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmNhdGVnb3JpZXMtY29sbGFwc2VkIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ndXR0ZXItYmFzZSk7IH1cbiAgICAuY2F0ZWdvcmllcy1jb2xsYXBzZWQgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgbWF4LWhlaWdodDogMjg4cHg7IH1cbiAgICAuY2F0ZWdvcmllcy1jb2xsYXBzZWQgLmNhdGVnb3JpZXMtc2lkZWJhciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfVxuICAgICAgLmNhdGVnb3JpZXMtY29sbGFwc2VkIC5jYXRlZ29yaWVzLXNpZGViYXIgLmRyb3Bkb3duIC5idG4gaSxcbiAgICAgIC5jYXRlZ29yaWVzLWNvbGxhcHNlZCAuY2F0ZWdvcmllcy1zaWRlYmFyIC5kcm9wZG93biAuYnRuIC5scyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1idG4tYmFzZS1pY29uLXNwYWNpbmcpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLnJvdy5hZGRvbi1wcm9kdWN0cyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnByb21vLWJveC1jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5wcm9tby1ib3gtY29udGVudCAucHJvbW8tYm94LWljb24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLnByb21vLWJveC1jb250ZW50ICsgLnByb21vLWJveC1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgLmNhdGVnb3JpZXMtY29sbGFwc2VkIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5jYXRlZ29yaWVzLWNvbGxhcHNlZCAuY2F0ZWdvcmllcy1zaWRlYmFyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuY2F0ZWdvcmllcy1jb2xsYXBzZWQgLmZvcm0tY29udHJvbCxcbiAgICAuY2F0ZWdvcmllcy1jb2xsYXBzZWQgLmRyb3Bkb3duIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpOyB9XG4gICAgICAuY2F0ZWdvcmllcy1jb2xsYXBzZWQgLmZvcm0tY29udHJvbCAuYnRuLFxuICAgICAgLmNhdGVnb3JpZXMtY29sbGFwc2VkIC5mb3JtLWNvbnRyb2wgLmRyb3Bkb3duLW1lbnUsXG4gICAgICAuY2F0ZWdvcmllcy1jb2xsYXBzZWQgLmRyb3Bkb3duIC5idG4sXG4gICAgICAuY2F0ZWdvcmllcy1jb2xsYXBzZWQgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk9yZGVyIC0gQm90dG9tIEFjdGlvbnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuOnJvb3Qge1xuICAtLWJvdHRvbS1hY3Rpb24tc3RpY2t5LWhlaWdodDogY2FsYyh2YXIoLS11aS1oZWlnaHQtbGcpICsgMiAqIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pKTsgfVxuXG4uYm90dG9tLWFjdGlvbi1zdGlja3kge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xuICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xuICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3cpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLmJvdHRvbS1hY3Rpb24tc3RpY2t5IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfSB9XG4gIC5ib3R0b20tYWN0aW9uLXN0aWNreTpub3QoLmlzLWZpeGVkKSA+IC5jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5ib3R0b20tYWN0aW9uLXN0aWNreS5pcy1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IHZhcigtLXppbmRleC1uYXZiYXItZml4ZWQpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLW92ZXJsYXktYmcpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1vdmVybGF5LXNoYWRvdyk7XG4gICAgaGVpZ2h0OiB2YXIoLS1ib3R0b20tYWN0aW9uLXN0aWNreS1oZWlnaHQpO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIDA7IH1cblxuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgLmJvdHRvbS1hY3Rpb24tc3RpY2t5LmlzLWZpeGVkIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7IH0gfVxuICAuYm90dG9tLWFjdGlvbi1zdGlja3kgPiAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5ib3R0b20tYWN0aW9uLXN0aWNreSAuc3RpY2t5LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYm90dG9tLWFjdGlvbi1zdGlja3kgLnN0aWNreS1kcm9wZG93biB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5ib3R0b20tYWN0aW9uLXN0aWNreSAuc3RpY2t5LWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgIHRvcDogYXV0bzsgfVxuICAuYm90dG9tLWFjdGlvbi1zdGlja3kgLnN0aWNreS1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAuYm90dG9tLWFjdGlvbi1zdGlja3kgLnN0aWNreS1hY3Rpb25zIC5idG4tbGluazpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKSk7IH1cblxuLmJvdHRvbS1hY3Rpb24tYW5jaG9yIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpKi0xKTsgfVxuICAuYm90dG9tLWFjdGlvbi1hbmNob3IgKyAuYm90dG9tLWFjdGlvbi1zdGlja3kge1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKSoyKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhZ2UgVmlldyBDYXJ0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5zb2NpYWwtc2lnbmluLWJ0bnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTJ4KSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gICAgLnNvY2lhbC1zaWduaW4tYnRucyB7XG4gICAgICBtYXJnaW46IDA7IH0gfVxuICAuc29jaWFsLXNpZ25pbi1idG5zIC5idG4tc29jaWFsIHtcbiAgICBtYXgtd2lkdGg6IDM1MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuc29jaWFsLXNpZ25pbi1idG5zIC5idG4tc29jaWFsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgQ2FydFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFuZWwtY2FydCB7XG4gIC8qIE1haW4gVGFibGUgRWxlbWVudHMgKi8gfVxuICAucGFuZWwtY2FydCAuY2FydC1oZWFkaW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XG4gICAgY29sb3I6IHZhcigtLXRhYmxlLXRoLWZvbnQtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdGFibGUtdGgtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tdGFibGUtdGgtZm9udC13ZWlnaHQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgLnBhbmVsLWNhcnQgLnBhbmVsLWJvZHkge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbSB7XG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTsgfVxuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW06aGFzKC5jYXJ0LWl0ZW0tY29uZmlnKSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAucGFuZWwtY2FydCAuY2FydC1pdGVtIC5yZW5ld2FsLFxuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0gLnNldHVwLWZlZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtd3JhcDogbm93cmFwO1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTsgfVxuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0gLnJlbmV3YWwgPiBzcGFuIHtcbiAgICAgIGRpcmVjdGlvbjogbHRyOyB9XG4gIC5wYW5lbC1jYXJ0IC5wYW5lbC1mb290ZXIgLmJ0biB7XG4gICAgZ2FwOiB2YXIoLS1idG4tc20taWNvbi1zcGFjaW5nKTsgfVxuICAgIC5wYW5lbC1jYXJ0IC5wYW5lbC1mb290ZXIgLmJ0biBpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhbmVsIENhcnQgLSBDb2x1bW5zXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1jYXJ0IC5wcm9kLWRlc2Mge1xuICB3aWR0aDogMTAwJTsgfVxuICAucGFuZWwtY2FydCAucHJvZC1kZXNjID4gLmNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5wYW5lbC1jYXJ0IC5wcm9kLWFjdGlvbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgQ2FydCAtIENvbHVtbiBJdGVtc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ucGFuZWwtY2FydCAuY2FydC1pdGVtLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1ncm93OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tdGl0bGUgZGl2Omhhcyg+IC5jYXJ0LWl0ZW0tdGl0bGUtbWFpbikge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tdGl0bGUtbWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDcpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg3KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAucGFuZWwtY2FydCAuY2FydC1pdGVtLXRpdGxlLXNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS10aXRsZTpoYXMoLmdyYXBoaWMtaXRlbSkge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAucGFuZWwtY2FydCAuY2FydC1pdGVtLXRpdGxlOmhhcyguZ3JhcGhpYy1pdGVtKSAuY2FydC1pdGVtLXRpdGxlLW1haW4sXG4gICAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS10aXRsZTpoYXMoLmdyYXBoaWMtaXRlbSkgLmNhcnQtaXRlbS10aXRsZS1zbWFsbCB7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICgzMnB4ICsgdmFyKC0tc3BhY2luZy0yeCkpKTsgfVxuXG4ucGFuZWwtY2FydCAuY2FydC1pdGVtLXF0eSB7XG4gIHdpZHRoOiA2MnB4O1xuICBtaW4td2lkdGg6IDYycHg7IH1cblxuLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljaW5nIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cblxuLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljaW5nLWRyb3Bkb3duIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljaW5nLWRyb3Bkb3duIC5idG4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcHJpY2luZy1kcm9wZG93biAuYnRuIHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgICAucGFuZWwtY2FydCAuY2FydC1pdGVtLXByaWNpbmctZHJvcGRvd24gLmJ0biAuY2FyZXQge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG4gICAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljaW5nLWRyb3Bkb3duIC5idG4gLmRyb3Bkb3duLXByaWNlIHtcbiAgICAgIHdvcmQtYnJlYWs6IG5vcm1hbDsgfVxuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcHJpY2luZy1kcm9wZG93biAuYnRuIC5wcmljZS1zZXR1cC1mZWUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljaW5nLWRyb3Bkb3duIC5kaXNjb3VudF9jZW50ZXItYmFzZV9jYXJ0X29yZGVyX2RvbWFpbl9wcmljZSxcbiAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljaW5nLWRyb3Bkb3duIC5kaXNjb3VudF9jZW50ZXItYmFzZV9jYXJ0X29yZGVyX3Byb2R1Y3RfcHJpY2Uge1xuICAgIGNvbG9yOiB2YXIoLS1wcmljZS1zYXZpbmdzLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2Utc2F2aW5ncy1mb250LXNpemUpICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLXNhdmluZ3MtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtd2VpZ2h0KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcHJpY2Uge1xuICB3aWR0aDogMTQwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcHJpY2UtZHJvcGRvd24ge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljZSBbc3R5bGUqPVwiZm9udC1zaXplOiAxLjJlbTsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XCJdIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNikgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpICFpbXBvcnRhbnQ7IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljZSAuZGlzY291bnRfY2VudGVyLWJhc2VfY2FydF9vcmRlcl9hZGRvbl9wcmljZSB7XG4gICAgY29sb3I6IHZhcigtLXByaWNlLXNhdmluZ3MtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtc2l6ZSkgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2Utc2F2aW5ncy1saW5lLWhlaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLXNhdmluZ3MtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IH1cblxuLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1xdHktcGxhY2Vob2xkZXIge1xuICBwYWRkaW5nOiB2YXIoLS11aS1oZWlnaHQtYmFzZSktdmFyKC0tbGluZS1oZWlnaHQtYmFzZSkvMiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcXR5LXBsYWNlaG9sZGVyIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDM0cHggMCAwIDE2cHg7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpOyB9IH1cblxuLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgZmxleC13cmFwOiBub3dyYXA7IH1cblxuLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1jb25maWcge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tY29sbGFwc2UtYmcpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtLXYpIDA7XG4gIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgQ2FydCAtIENvbmZpZyBPcHRpb25zXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XG4gIHBhZGRpbmc6IDJweCAwOyB9XG4gIC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLXRpdGxlIHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTsgfVxuICAgIC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLXRpdGxlIC5pdGVtLW5hbWUge1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAgIC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLXRpdGxlIC5pdGVtLXZhbHVlIHtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgfVxuICAuY2FydC1pdGVtLWNvbmZpZyAuY29uZmlnLW9wdGlvbi1xdHkge1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG4gIC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLXByaWNlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTsgfVxuICAuY2FydC1pdGVtLWNvbmZpZyAuY29uZmlnLW9wdGlvbi1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7IH1cbiAgICAuY2FydC1pdGVtLWNvbmZpZyAuY29uZmlnLW9wdGlvbi1hY3Rpb25zID4gYnV0dG9uIHtcbiAgICAgIGhlaWdodDogMjBweDsgfVxuICAuY2FydC1pdGVtLWNvbmZpZyAuY29uZmlnLW9wdGlvbi5ob3ZlcmFibGUgLmNvbmZpZy1vcHRpb24tcHJpY2Uge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gIC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLmhvdmVyYWJsZTpob3ZlciAuY29uZmlnLW9wdGlvbi10aXRsZSAuaXRlbS1uYW1lLFxuICAuY2FydC1pdGVtLWNvbmZpZyAuY29uZmlnLW9wdGlvbi5ob3ZlcmFibGU6aG92ZXIgLmNvbmZpZy1vcHRpb24tdGl0bGUgLml0ZW0tdmFsdWUge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gIC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLmhvdmVyYWJsZTpob3ZlciAuY29uZmlnLW9wdGlvbi1wcmljZSB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhbmVsIENhcnQgLSBDb2x1bW5zIFdpZHRoIERlc2t0b3BcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWhlYWRpbmcgLnRpdGxlLWNvbCB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1pbi13aWR0aDogMjIwcHg7IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaGVhZGluZyAucXR5LWNvbCB7XG4gICAgd2lkdGg6IDYycHg7XG4gICAgbWluLXdpZHRoOiA2MnB4OyB9XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWhlYWRpbmcgLnByaWNlLWNvbCB7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIG1pbi13aWR0aDogMTQwcHg7IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaGVhZGluZyAuYWN0aW9ucy1jb2wge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBtaW4td2lkdGg6IDEwMHB4OyB9XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcXR5IHtcbiAgICB3aWR0aDogNjJweDtcbiAgICBtaW4td2lkdGg6IDYycHg7IH1cbiAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1hY3Rpb25zIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgbWluLXdpZHRoOiAxMDBweDsgfVxuICAucGFuZWwtY2FydCAuY2FydC1pdGVtLXByaWNpbmcge1xuICAgIHdpZHRoOiAxNDBweDtcbiAgICBtaW4td2lkdGg6IDE0MHB4OyB9XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLXF0eSB7XG4gICAgd2lkdGg6IDYycHg7XG4gICAgbWluLXdpZHRoOiA2MnB4OyB9XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLXByaWNlIHtcbiAgICB3aWR0aDogMTQwcHg7XG4gICAgbWluLXdpZHRoOiAxNDBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tY29uZmlnIC5jb25maWctb3B0aW9uLWFjdGlvbnMge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBtaW4td2lkdGg6IDEwMHB4OyB9IH1cblxuLyogQ2FydCBRVFkgRmllbGQgKi9cbi5pbnB1dC1udW1iZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcbiAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNHMgZWFzZSwgYm94LXNoYWRvdyAwLjI0cyBlYXNlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGluZS1oZWlnaHQpO1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTsgfVxuICAuaW5wdXQtbnVtYmVyLWFjdGlvbnMge1xuICAgIG1pbi13aWR0aDogMjJweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpOyB9XG4gICAgLmlucHV0LW51bWJlci1hY3Rpb25zIC5wbHVzIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAuaW5wdXQtbnVtYmVyLWFjdGlvbnMgLnBsdXMsIC5pbnB1dC1udW1iZXItYWN0aW9ucyAubWludXMge1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgY29sb3I6IHZhcigtLWRlY29yYXRpb24taWNvbnMpOyB9XG4gICAgICAuaW5wdXQtbnVtYmVyLWFjdGlvbnMgLnBsdXM6aG92ZXIsIC5pbnB1dC1udW1iZXItYWN0aW9ucyAubWludXM6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KTsgfVxuICAuaW5wdXQtbnVtYmVyOmhhcyhpbnB1dDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTsgfVxuICAgIC5pbnB1dC1udW1iZXI6aGFzKGlucHV0OmZvY3VzKSAuaW5wdXQtbnVtYmVyLWFjdGlvbnMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpOyB9XG4gIC5pbnB1dC1udW1iZXI6aG92ZXI6bm90KC5kaXNhYmxlZCkge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTsgfVxuICAgIC5pbnB1dC1udW1iZXI6aG92ZXI6bm90KC5kaXNhYmxlZCkgLmlucHV0LW51bWJlci1hY3Rpb25zIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTsgfVxuICAuaW5wdXQtbnVtYmVyLmRpc2FibGVkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtZGlzYWJsZWQtYmcpOyB9XG4gICAgLmlucHV0LW51bWJlci5kaXNhYmxlZCBpbnB1dCB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIC5pbnB1dC1udW1iZXIuZGlzYWJsZWQgLmlucHV0LW51bWJlci1hY3Rpb25zIC5wbHVzOmhvdmVyLFxuICAgIC5pbnB1dC1udW1iZXIuZGlzYWJsZWQgLmlucHV0LW51bWJlci1hY3Rpb25zIC5taW51czpob3ZlciB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAuaW5wdXQtbnVtYmVyIGlucHV0IHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSAycHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDQ0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IH1cbiAgICAuaW5wdXQtbnVtYmVyIGlucHV0OmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgLmlucHV0LW51bWJlcmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sIC5pbnB1dC1udW1iZXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDsgfVxuICAuaW5wdXQtbnVtYmVyaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IH1cbiAgLmlucHV0LW51bWJlci1zbSB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1zbS1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbnB1dC1zbS1saW5lLWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtc20pOyB9XG4gICAgLmlucHV0LW51bWJlci1zbSBpbnB1dCB7XG4gICAgICBtYXgtd2lkdGg6IDQwcHg7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCBDYXJ0IC0gTW9iaWxlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucGFuZWwtY2FydCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWhlYWRpbmcge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xuICAgICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tdGl0bGUge1xuICAgICAgICBtYXgtd2lkdGg6IDgwJTsgfVxuICAgICAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1hY3Rpb25zIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAgICAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbS1wcmljaW5nIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNXgpOyB9XG4gICAgICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcHJpY2luZzo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICAgIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpKTtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKSAqIDIpO1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcHJpY2luZyA+IGJ1dHRvbiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcXR5IHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNXgpOyB9XG4gICAgICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcXR5OjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogLTIwcHg7XG4gICAgICAgICAgbGVmdDogY2FsYygtMSAqIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkpO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpICogMik7XG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0tcXR5LWVtcHR5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnBhbmVsLWNhcnQgLmNhcnQtaXRlbSAuY29uZmlnLW9wdGlvbi1wcmljZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC5wYW5lbC1jYXJ0IC5wYW5lbC1ib2R5IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTsgfVxuICAgIC5wYW5lbC1jYXJ0IC5jYXJ0LWl0ZW0sXG4gICAgLnBhbmVsLWNhcnQgLnBhbmVsLWZvb3RlciB7XG4gICAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTsgfVxuICAgIC5wYW5lbC1jYXJ0IC5wYW5lbC1mb290ZXIge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcGFuZWwtZGVmYXVsdC1ib3JkZXIpOyB9XG4gICAgICAucGFuZWwtY2FydCAucGFuZWwtZm9vdGVyIC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLnBhbmVsLWNhcnQgLnBhbmVsLWZvb3RlciAuY29udGVudCAuYnRuIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgICB3aWR0aDogNTAlOyB9XG4gICAgICAgICAgLnBhbmVsLWNhcnQgLnBhbmVsLWZvb3RlciAuY29udGVudCAuYnRuOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxuICAgICAgICAucGFuZWwtY2FydCAucGFuZWwtZm9vdGVyIC5jb250ZW50Omxhc3QtY2hpbGQgLmJ0biB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk90aGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuc3BvdGxpZ2h0LXRsZHMtY29udGFpbmVyIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNwb3RsaWdodC10bGQtY29udGFpbmVyIHtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtaW4td2lkdGg6IDUwJTsgfVxuICAgIC5zcG90bGlnaHQtdGxkLWNvbnRhaW5lciAuc3BvdGxpZ2h0LXRsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfVxuICAucHJvbW8tYm94LWNvbnRlbnQtYmV0d2VlbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAucHJvbW8tYm94LWNvbnRlbnQgLnByb21vLWRlc2NyaXB0aW9uIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wcm9tby1ib3gtY29udGVudCAucHJvbW8tZGVzY3JpcHRpb24gKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfSB9XG5cbi5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYWRkcmVzcy1oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfVxuXG4uY3JlZGl0LWJhbGFuY2Uge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDMpOyB9XG4gIC5jcmVkaXQtYmFsYW5jZS10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgLmNyZWRpdC1iYWxhbmNlIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oMik7IH1cblxuLmFwcGx5LWNyZWRpdC1jb250YWluZXIgc3BhbiA+IHNwYW4ge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gU2VhcmNoIElucHV0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5kb21haW4tc2VhcmNoLWlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogdmFyKC0tc2VhcmNoLWdyb3VwLW1heC13aWR0aCk7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5kb21haW4tc2VhcmNoLWlucHV0LnNlYXJjaC1ncm91cC1jb21iaW5lZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGcpOyB9XG4gIC5kb21haW4tc2VhcmNoLWlucHV0IC50b29sdGlwLmxlZnQgLnRvb2x0aXAtaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTsgfVxuICAuZG9tYWluLXNlYXJjaC1pbnB1dCAudG9vbHRpcC5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7IH1cblxuLmRvbWFpbi1zZWFyY2gtYXV0aCB7XG4gIG1heC13aWR0aDogdmFyKC0tc2VhcmNoLWdyb3VwLW1heC13aWR0aCk7XG4gIG1hcmdpbjogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykgYXV0byAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRvbWFpbi1zZWFyY2gtYXV0aCAjdHJhbnNmZXJVbmF2YWlsYWJsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiBjYWxjKDEwMCUgKyB2YXIoLS1zcGFjaW5nLTN4KSk7IH1cblxuI2RlZmF1bHQtY2FwdGNoYS1kb21haW5jaGVja2VyIC5jYXB0Y2hhaW1hZ2UgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gU2VhcmNoIENhcHRjaGFcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmRvbWFpbi1zZWFyY2gtY2FwdGNoYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXgtd2lkdGg6IHZhcigtLXNlYXJjaC1ncm91cC1tYXgtd2lkdGgpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XG4gIG1hcmdpbjogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSkgYXV0byAwO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTsgfVxuICAuZG9tYWluLXNlYXJjaC1jYXB0Y2hhOm5vdCgucnNwYWdlLW1vZGVybikgLmNhcHRjaGF0ZXh0IHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY0KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgICAuZG9tYWluLXNlYXJjaC1jYXB0Y2hhOm5vdCgucnNwYWdlLW1vZGVybikgLmlucHV0LWdyb3VwIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgIC5kb21haW4tc2VhcmNoLWNhcHRjaGE6bm90KC5yc3BhZ2UtbW9kZXJuKSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSkgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSkgMCAwOyB9XG4gICAgICAuZG9tYWluLXNlYXJjaC1jYXB0Y2hhOm5vdCgucnNwYWdlLW1vZGVybikgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSkgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIC5kb21haW4tc2VhcmNoLWNhcHRjaGEgLmNhcHRjaGEge1xuICAgIG1hcmdpbjogMDsgfVxuICAuZG9tYWluLXNlYXJjaC1jYXB0Y2hhIC5jYXB0Y2hhdGV4dCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IC0ycHggMCAxNnB4OyB9XG4gIC5kb21haW4tc2VhcmNoLWNhcHRjaGEgLnRvb2x0aXAgLnRvb2x0aXAtaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTsgfVxuICAuZG9tYWluLXNlYXJjaC1jYXB0Y2hhIC50b29sdGlwIC50b29sdGlwLWFycm93IHtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG5cbi5iYW5uZXItc2Vjb25kYXJ5IC5kb21haW4tc2VhcmNoLWNhcHRjaGEsXG4uc2VhcmNoLWJveC1wcmltYXJ5IC5kb21haW4tc2VhcmNoLWNhcHRjaGEge1xuICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cblxuLmJhbm5lci1wcmltYXJ5IC5kb21haW4tc2VhcmNoLWNhcHRjaGEsXG4uc2VhcmNoLWJveC1zZWNvbmRhcnkgLmRvbWFpbi1zZWFyY2gtY2FwdGNoYSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRG9tYWluIFNlYXJjaCAtIERvbWFpbiBPcHRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAucGFuZWwtZG9tYWluLW9wdGlvbiB7XG4gIHBhZGRpbmc6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgdmFyKC0tdWktYmxvY2stcGFkZGluZy14bGcpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5wYW5lbC1kb21haW4tb3B0aW9uID4gLmNvbnRlbnQge1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLWxnKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5wYW5lbC1kb21haW4tb3B0aW9uIGxhYmVsLnJhZGlvIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7IH1cbiAgLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAucGFuZWwtZG9tYWluLW9wdGlvbiAucmFkaW8gKyAucmFkaW8ge1xuICAgIG1hcmdpbi10b3A6IC01cHg7IH1cbiAgLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAucGFuZWwtZG9tYWluLW9wdGlvbiAucmFkaW8gLnJhZGlvLXN0eWxlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBsZWZ0OiAwOyB9XG4gIC5wYW5lbC1jaG9vc2UtZG9tYWluOm5vdCgucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCkgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvID4gW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAucGFuZWwtZG9tYWluLW9wdGlvbiAucmFkaW8gc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctNHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5yZWNhcHRjaGEtY29udGFpbmVyID4gLnRvb2x0aXAgLnRvb2x0aXAtaW5uZXIsXG4ucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5pbmxpbmUtZm9ybS1lbGVtZW50ID4gLnRvb2x0aXAgLnRvb2x0aXAtaW5uZXIsXG4ucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5jYXB0Y2hhaW1hZ2UgPiAudG9vbHRpcCAudG9vbHRpcC1pbm5lcixcbi5wYW5lbC1jaG9vc2UtZG9tYWluOm5vdCgucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCkgLmZvcm0tZ3JvdXAgPiAudG9vbHRpcCAudG9vbHRpcC1pbm5lciB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG5cbi5wYW5lbC1jaG9vc2UtZG9tYWluOm5vdCgucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCkgLnJlY2FwdGNoYS1jb250YWluZXIgPiAudG9vbHRpcCAudG9vbHRpcC1hcnJvdyxcbi5wYW5lbC1jaG9vc2UtZG9tYWluOm5vdCgucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCkgLmlubGluZS1mb3JtLWVsZW1lbnQgPiAudG9vbHRpcCAudG9vbHRpcC1hcnJvdyxcbi5wYW5lbC1jaG9vc2UtZG9tYWluOm5vdCgucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCkgLmNhcHRjaGFpbWFnZSA+IC50b29sdGlwIC50b29sdGlwLWFycm93LFxuLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAuZm9ybS1ncm91cCA+IC50b29sdGlwIC50b29sdGlwLWFycm93IHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG5cbi5wYW5lbC1jaG9vc2UtZG9tYWluOm5vdCgucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCkgLnJlY2FwdGNoYS1jb250YWluZXIgPiAudG9vbHRpcC50b3AgLnRvb2x0aXAtYXJyb3csXG4ucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5pbmxpbmUtZm9ybS1lbGVtZW50ID4gLnRvb2x0aXAudG9wIC50b29sdGlwLWFycm93LFxuLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAuY2FwdGNoYWltYWdlID4gLnRvb2x0aXAudG9wIC50b29sdGlwLWFycm93LFxuLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAuZm9ybS1ncm91cCA+IC50b29sdGlwLnRvcCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAucmVjYXB0Y2hhLWNvbnRhaW5lciA+IC50b29sdGlwLmJvdHRvbSAudG9vbHRpcC1hcnJvdyxcbi5wYW5lbC1jaG9vc2UtZG9tYWluOm5vdCgucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCkgLmlubGluZS1mb3JtLWVsZW1lbnQgPiAudG9vbHRpcC5ib3R0b20gLnRvb2x0aXAtYXJyb3csXG4ucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5jYXB0Y2hhaW1hZ2UgPiAudG9vbHRpcC5ib3R0b20gLnRvb2x0aXAtYXJyb3csXG4ucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5mb3JtLWdyb3VwID4gLnRvb2x0aXAuYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICBtYXJnaW4tbGVmdDogLTRweDsgfVxuXG4ucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5mb3JtLXRvb2x0aXAgLmZvcm0tY29udHJvbCArIC50b29sdGlwIC50b29sdGlwLWlubmVyIHtcbiAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7IH1cblxuLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSAuZm9ybS10b29sdGlwIC5mb3JtLWNvbnRyb2wgKyAudG9vbHRpcCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTsgfVxuXG4ucGFuZWwtY2hvb3NlLWRvbWFpbjpub3QoLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQpIC5pbmxpbmUtZm9ybSAuaW5saW5lLWZvcm0tZWxlbWVudDpudGgtY2hpbGQoMikge1xuICBtaW4td2lkdGg6IGF1dG87IH1cblxuLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24ge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTR4KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC0xIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLmNvbnRlbnQtMiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLmNvbnRlbnQtMyB7XG4gICAgICB3aWR0aDogMzMuMyU7IH1cbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC00IHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC01IHtcbiAgICAgIHdpZHRoOiAyMCU7IH1cbiAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvIHtcbiAgICBtYXJnaW4tYmxvY2s6IDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pOyB9XG4gICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvIC5yYWRpby1zdHlsZWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAucmFkaW8gLnJhZGlvLXN0eWxlZC5jaGVja2VkICsgZGl2IHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7IH1cbiAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIC5yYWRpbyAucmFkaW8tc3R5bGVkLmNoZWNrZWQgKyBkaXY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IC4zcztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0yNnB4O1xuICAgICAgICByaWdodDogLTZweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIC5yYWRpbyAucmFkaW8tc3R5bGVkLmNoZWNrZWQgKyBkaXY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTVweC8xIGxhZ29tLXNtYWxsLWljb25zO1xuICAgICAgICBjb250ZW50OiBcIlxcZTkxMVwiO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIC5yYWRpbyAuYm94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0zeCkgdmFyKC0tc3BhY2luZy0yeCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIC5yYWRpbyAuYm94OmhvdmVyLCAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAucmFkaW8gLmJveDpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnJhbmQtcHJpbWFyeSk7XG4gICAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvIC5ib3gtdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvIC5ib3gtdGV4dC10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgICAgICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTJ4KSA2cHg7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7IH1cbiAgICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvIC5ib3gtdGV4dC1zdWJ0aXRsZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAucmFkaW8gLmJveC10ZXh0LXN1YnRpdGxlLCAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAucmFkaW8gLmJveC10ZXh0LXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvIC5ib3gtaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogNjRweDtcbiAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICBtaW4td2lkdGg6IDY0cHg7IH1cbiAgICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvIC5ib3gtaWNvbiBzdmcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAucmFkaW8gLmJveC1pY29uIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIC5yYWRpbyAuYm94LWljb24gLnByb2R1Y3QtZ3JhcGhpYy1iZyB7XG4gICAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgICAgaGVpZ2h0OiA2NHB4OyB9XG4gICAgICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLnJhZGlvIC5ib3gtaWNvbiAucHJvZHVjdC1ncmFwaGljLWJnIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4OyB9XG5cbi5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5yZWNhcHRjaGEtY29udGFpbmVyID4gLnRvb2x0aXAgLnRvb2x0aXAtaW5uZXIsXG4ucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAuaW5saW5lLWZvcm0tZWxlbWVudCA+IC50b29sdGlwIC50b29sdGlwLWlubmVyLFxuLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLmNhcHRjaGFpbWFnZSA+IC50b29sdGlwIC50b29sdGlwLWlubmVyLFxuLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLmZvcm0tZ3JvdXAgPiAudG9vbHRpcCAudG9vbHRpcC1pbm5lciB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG5cbi5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5yZWNhcHRjaGEtY29udGFpbmVyID4gLnRvb2x0aXAgLnRvb2x0aXAtYXJyb3csXG4ucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAuaW5saW5lLWZvcm0tZWxlbWVudCA+IC50b29sdGlwIC50b29sdGlwLWFycm93LFxuLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLmNhcHRjaGFpbWFnZSA+IC50b29sdGlwIC50b29sdGlwLWFycm93LFxuLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLmZvcm0tZ3JvdXAgPiAudG9vbHRpcCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTsgfVxuXG4ucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucmVjYXB0Y2hhLWNvbnRhaW5lciA+IC50b29sdGlwLnRvcCAudG9vbHRpcC1hcnJvdyxcbi5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5pbmxpbmUtZm9ybS1lbGVtZW50ID4gLnRvb2x0aXAudG9wIC50b29sdGlwLWFycm93LFxuLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLmNhcHRjaGFpbWFnZSA+IC50b29sdGlwLnRvcCAudG9vbHRpcC1hcnJvdyxcbi5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5mb3JtLWdyb3VwID4gLnRvb2x0aXAudG9wIC50b29sdGlwLWFycm93IHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucmVjYXB0Y2hhLWNvbnRhaW5lciA+IC50b29sdGlwLmJvdHRvbSAudG9vbHRpcC1hcnJvdyxcbi5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5pbmxpbmUtZm9ybS1lbGVtZW50ID4gLnRvb2x0aXAuYm90dG9tIC50b29sdGlwLWFycm93LFxuLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLmNhcHRjaGFpbWFnZSA+IC50b29sdGlwLmJvdHRvbSAudG9vbHRpcC1hcnJvdyxcbi5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5mb3JtLWdyb3VwID4gLnRvb2x0aXAuYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICBtYXJnaW4tbGVmdDogLTRweDsgfVxuXG4ucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAuZm9ybS10b29sdGlwIC5mb3JtLWNvbnRyb2wgKyAudG9vbHRpcCAudG9vbHRpcC1pbm5lciB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG5cbi5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5mb3JtLXRvb2x0aXAgLmZvcm0tY29udHJvbCArIC50b29sdGlwIC50b29sdGlwLWFycm93IHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyB9XG5cbi5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5pbmxpbmUtZm9ybSAuaW5saW5lLWZvcm0tZWxlbWVudDpudGgtY2hpbGQoMikge1xuICBtaW4td2lkdGg6IGF1dG87IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpOyB9XG4gICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLmNvbnRlbnQtd3JhcCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudCB7XG4gICAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLmNvbnRlbnQtNCB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC01IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIC5jb250ZW50IC5ib3gge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy0zeCk7IH1cbiAgICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLmNvbnRlbnQgLmJveC1pY29uIC5zdmctaWNvbiB7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MHB4OyB9XG4gICAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIC5jb250ZW50IC5ib3gtdGV4dCB7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAgICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudCAuYm94LXRleHQtdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiAwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAgICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLmNvbnRlbnQgLmJveC10ZXh0LXN1YnRpdGxlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWQgLnBhbmVsLWRvbWFpbi1vcHRpb24gLmNvbnRlbnQtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkIC5wYW5lbC1kb21haW4tb3B0aW9uIC5jb250ZW50IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC0xLCAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC0yLCAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC0zLCAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC00LCAucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCAucGFuZWwtZG9tYWluLW9wdGlvbiAuY29udGVudC01IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gU2VhcmNoIC0gSW5wdXQgQm94XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1kb21haW4tc2VhcmNoIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpIHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpO1xuICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMiAqIHZhcigtLXVpLWJsb2NrLXBhZGRpbmcteGxnKSArIHZhcigtLXVpLWhlaWdodC1sZykpO1xuICAvKiNkb21haW5pbmNhcnQge1xyXG4gICAgICAgICNpbmNhcnRzbGQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDExcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfSovIH1cbiAgLnBhbmVsLWRvbWFpbi1zZWFyY2g6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpOyB9XG4gIC5wYW5lbC1kb21haW4tc2VhcmNoIGZvcm0sXG4gIC5wYW5lbC1kb21haW4tc2VhcmNoIC5pbmxpbmUtZm9ybSB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtbGcpO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggZm9ybSAuaW5saW5lLWZvcm0tZWxlbWVudCAuYnRuLFxuICAgIC5wYW5lbC1kb21haW4tc2VhcmNoIC5pbmxpbmUtZm9ybSAuaW5saW5lLWZvcm0tZWxlbWVudCAuYnRuIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wYW5lbC1kb21haW4tc2VhcmNoIC5kcm9wZG93bjpub3QoLmRyb3Bkb3duLW11bHRpLWxldmVsKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmRyb3Bkb3duOm5vdCguZHJvcGRvd24tbXVsdGktbGV2ZWwpIC50bGQtc2VsZWN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xuICAgICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1sZy12KSB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xuICAgICAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQtbGctZm9udC1zaXplKTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcbiAgICAgIGJvcmRlcjogdmFyKC0taW5wdXQtYm9yZGVyKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpO1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpOyB9XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICAucGFuZWwtZG9tYWluLXNlYXJjaCAuZHJvcGRvd246bm90KC5kcm9wZG93bi1tdWx0aS1sZXZlbCkgLnRsZC1zZWxlY3Qge1xuICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7IH0gfVxuICAgICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmRyb3Bkb3duOm5vdCguZHJvcGRvd24tbXVsdGktbGV2ZWwpIC50bGQtc2VsZWN0OmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYmcpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1ob3Zlci1jb2xvcik7IH1cbiAgICAucGFuZWwtZG9tYWluLXNlYXJjaCAuZHJvcGRvd246bm90KC5kcm9wZG93bi1tdWx0aS1sZXZlbCkgLnRsZC1zZWxlY3Q6Zm9jdXMsIC5wYW5lbC1kb21haW4tc2VhcmNoIC5kcm9wZG93bjpub3QoLmRyb3Bkb3duLW11bHRpLWxldmVsKTpmb2N1cy12aXNpYmxlLCAucGFuZWwtZG9tYWluLXNlYXJjaCAuZHJvcGRvd246bm90KC5kcm9wZG93bi1tdWx0aS1sZXZlbCk6aG92ZXIsXG4gICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmRyb3Bkb3duOm5vdCguZHJvcGRvd24tbXVsdGktbGV2ZWwpLnNob3cgLnRsZC1zZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYmcpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpO1xuICAgICAgY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWNvbG9yKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpOyB9XG4gICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmRyb3Bkb3duOm5vdCguZHJvcGRvd24tbXVsdGktbGV2ZWwpIC5jYXJldCB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9XG4gICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmRyb3Bkb3duOm5vdCguZHJvcGRvd24tbXVsdGktbGV2ZWwpIC5kcm9wZG93bi1tZW51LXNlYXJjaCB7XG4gICAgICBtaW4td2lkdGg6IDE5MnB4O1xuICAgICAgbWFyZ2luLXRvcDogNnB4OyB9XG4gIC5wYW5lbC1kb21haW4tc2VhcmNoIC5kZWZhdWx0LWNhcHRjaGEgcCB7XG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yLWZhZGVkKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4OyB9XG4gIC5wYW5lbC1kb21haW4tc2VhcmNoIC5jYXB0Y2hhaW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wYW5lbC1kb21haW4tc2VhcmNoIC5jYXB0Y2hhaW1hZ2UgI2lucHV0Q2FwdGNoYSB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAucGFuZWwtZG9tYWluLXNlYXJjaCAuY2FwdGNoYS1jb250YWluZXIgKyAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmNhcHRjaGEtY29udGFpbmVyICsgLmJ0biBpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNnB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5wYW5lbC1kb21haW4tc2VhcmNoIHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgICAgIC5wYW5lbC1kb21haW4tc2VhcmNoIC5jYXB0Y2hhLWNvbnRhaW5lciAuY2FwdGNoYWltYWdlLCAucGFuZWwtZG9tYWluLXNlYXJjaCAuY2FwdGNoYS1jb250YWluZXIgI2lucHV0Q2FwdGNoYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAucGFuZWwtZG9tYWluLXNlYXJjaCAuY2FwdGNoYS1jb250YWluZXIgKyAuYnRuIHtcbiAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH0gfVxuXG4uaW5saW5lLWZvcm0tcHJlZml4IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICBjb2xvcjogdmFyKC0tZ3JheS1saWdodGVyKTtcbiAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1sZy1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGctbGluZS1oZWlnaHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0taW5wdXQtbGctYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpOyB9XG4gIC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuZm9ybS1jb250cm9sLFxuICAuaW5saW5lLWZvcm0tcHJlZml4ICsgLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7IH1cbiAgICAuaW5saW5lLWZvcm0tcHJlZml4ICsgLmZvcm0tY29udHJvbDpob3ZlcixcbiAgICAuaW5saW5lLWZvcm0tcHJlZml4ICsgLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTsgfVxuICAgIC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuZm9ybS1jb250cm9sOmFjdGl2ZSwgLmlubGluZS1mb3JtLXByZWZpeCArIC5mb3JtLWNvbnRyb2w6Zm9jdXMsIC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuZm9ybS1jb250cm9sOmFjdGl2ZTpmb2N1cyxcbiAgICAuaW5saW5lLWZvcm0tcHJlZml4ICsgLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sOmFjdGl2ZSxcbiAgICAuaW5saW5lLWZvcm0tcHJlZml4ICsgLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sOmZvY3VzLFxuICAgIC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuc2VhcmNoLWZpZWxkIC5mb3JtLWNvbnRyb2w6YWN0aXZlOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTsgfVxuXG4ucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWluIFtkb21haW4tc2VhcmNoLXN0YW5kYXJkXSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLnBhZ2UtY29uZmlndXJlcHJvZHVjdGRvbWFpbiBbZG9tYWluLXNlYXJjaC1zdGFuZGFyZF0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbi5wYWdlLWNvbmZpZ3VyZXByb2R1Y3Rkb21haW4gLmlubGluZS1mb3JtOmhhcyguZG9tYWluLXNlYXJjaC1hZHZhbmNlZCkge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5wYWdlLWRvbWFpbnJlZ2lzdGVyIC5iYW5uZXItcHJpbWFyeTpoYXMoLmRyb3Bkb3duLW11bHRpLWxldmVsKSxcbi5wYWdlLWRvbWFpbnJlZ2lzdGVyIC5iYW5uZXItc2Vjb25kYXJ5OmhhcyguZHJvcGRvd24tbXVsdGktbGV2ZWwpIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLmRvbWFpbi1zZWFyY2gtdGFicyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmRvbWFpbi1zZWFyY2gtdGFicyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgLmRvbWFpbi1zZWFyY2gtdGFicyBoMyB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSkgIWltcG9ydGFudDsgfVxuICAuZG9tYWluLXNlYXJjaC10YWJzLWJvdHRvbSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpOyB9XG4gIC5kb21haW4tc2VhcmNoLXRhYnMgLmJ0bi10YWItZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTMpO1xuICAgIHBhZGRpbmc6IDZweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBnYXA6IDRweDsgfVxuICAgIC5kb21haW4tc2VhcmNoLXRhYnMgLmJ0bi10YWItZ3JvdXAgLmJ0biB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgLmRvbWFpbi1zZWFyY2gtdGFicyAuYnRuLXRhYi1ncm91cCAuYnRuOm5vdCguYWN0aXZlKTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gICAgICAuZG9tYWluLXNlYXJjaC10YWJzIC5idG4tdGFiLWdyb3VwIC5idG4uYWN0aXZlOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7IH1cbiAgICAgIC5kb21haW4tc2VhcmNoLXRhYnMgLmJ0bi10YWItZ3JvdXAgLmJ0bi5hY3RpdmU6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpOyB9XG5cbi5wYWdlLWRvbWFpbnJlZ2lzdGVyIC5kb21haW4tc2VhcmNoLXRhYnMge1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICBtYXgtd2lkdGg6IHZhcigtLXNlYXJjaC1ncm91cC1tYXgtd2lkdGgpOyB9XG5cbi5kb21haW4tc2VhcmNoLWFkdmFuY2VkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkLnNlYXJjaC1ncm91cC1sZyAuc2VhcmNoLWZpZWxkIC5mb3JtLWNvbnRyb2wge1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkLnNlYXJjaC1ncm91cC1jb21iaW5lZCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gICAgICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZC5zZWFyY2gtZ3JvdXAtY29tYmluZWQgPiAuc2VhcmNoLWZpZWxkLCAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZC5zZWFyY2gtZ3JvdXAtY29tYmluZWQgPiAuZHJvcGRvd24ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTsgfVxuICAgICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQuc2VhcmNoLWdyb3VwLWNvbWJpbmVkIC5kcm9wZG93bixcbiAgICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkLnNlYXJjaC1ncm91cC1jb21iaW5lZCAuc2VhcmNoLWdyb3VwLWJ0biB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIHJvdy1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7IH1cbiAgICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkICoge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkIC5zZWFyY2gtZmllbGQtaWNvbiBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7IH1cbiAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQgLmRyb3Bkb3duLW11bHRpLWxldmVsIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkIC5kcm9wZG93bi1tdWx0aS1sZXZlbDpoYXMoLnNob3cpID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkIC5kcm9wZG93bi1tdWx0aS1sZXZlbCA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDEwcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZCAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLCAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZCAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSwgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQgLmRyb3Bkb3duLW11bHRpLWxldmVsID4gLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWJnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XG4gICAgICAgIGJvcmRlcjogdmFyKC0taW5wdXQtYm9yZGVyKTsgfVxuICAgICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQgLmRyb3Bkb3duLW11bHRpLWxldmVsID4gLmRyb3Bkb3duLXRvZ2dsZSBzcGFuIHtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkIC5kcm9wZG93bi1tdWx0aS1sZXZlbCA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOyB9IH1cbiAgICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZCAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQgLmRyb3Bkb3duLW11bHRpLWxldmVsIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkIC5kcm9wZG93bi1tdWx0aS1sZXZlbCAuZHJvcGRvd24gLmxzLWRvd24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQgLmRyb3Bkb3duLW11bHRpLWxldmVsIC5kcm9wZG93biAubHMtZG93biB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZCAuZHJvcGRvd24tbXVsdGktbGV2ZWwgLmRyb3Bkb3duIC5scy1yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQgLmRyb3Bkb3duLW11bHRpLWxldmVsIC5kcm9wZG93biA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDRweCk7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQgLmRyb3Bkb3duLW11bHRpLWxldmVsIC5kcm9wZG93bjpub3QoLmRyb3B1cCkgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHRvcDogMDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkIC5zZWFyY2gtZ3JvdXAtYnRuIC5idG4ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZDpoYXMoI21lc3NhZ2U6aG92ZXIpIC5kcm9wZG93bi1tdWx0aS1sZXZlbCA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJvcmRlci1jb2xvcik7IH1cbiAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQ6aGFzKCNtZXNzYWdlOmZvY3VzKSAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpOyB9XG4gIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkOmhhcyguaW5saW5lLWZvcm0tcHJlZml4KTpoYXMoI21lc3NhZ2U6aG92ZXIpIC5kcm9wZG93bi1tdWx0aS1sZXZlbCA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJnKTsgfVxuICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZDpoYXMoLmlubGluZS1mb3JtLXByZWZpeCk6aGFzKCNtZXNzYWdlOmZvY3VzKSAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1iZyk7IH1cblxuLmRvbWFpbi1sb29rdXAtbWVzc2FnZSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZyk7IH1cbiAgLmRvbWFpbi1sb29rdXAtbWVzc2FnZSAucGFuZWwtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpOyB9XG4gICAgLmRvbWFpbi1sb29rdXAtbWVzc2FnZSAucGFuZWwtYm9keSBoNiB7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmRvbWFpbi1sb29rdXAtbWVzc2FnZSAucGFuZWwtYm9keSBwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG4gICAgLmRvbWFpbi1sb29rdXAtbWVzc2FnZSAucGFuZWwtYm9keSBzdmcge1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBjb2xvcjogdmFyKC0tZGVjb3JhdGlvbi1pY29ucyk7IH1cblxuLnNlYXJjaC1ncm91cCAuaW5saW5lLWZvcm0tcHJlZml4ICsgLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpOyB9XG5cbi5zZWFyY2gtZ3JvdXAgLmlubGluZS1mb3JtLXByZWZpeCArIC5mb3JtLWNvbnRyb2wgKyAuc2VhcmNoLWZpZWxkLWljb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZWFyY2gtZ3JvdXAtY29tYmluZWQgLnNlYXJjaC1maWVsZCAuaW5saW5lLWZvcm0tcHJlZml4ICsgLnNlYXJjaC1maWVsZC1pY29uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuc2VhcmNoLWdyb3VwLWNvbWJpbmVkIC5zZWFyY2gtZmllbGQgLmlubGluZS1mb3JtLXByZWZpeCArIC5zZWFyY2gtZmllbGQtaWNvbiArIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpOyB9XG4gICAgLnNlYXJjaC1ncm91cC1jb21iaW5lZCAuc2VhcmNoLWZpZWxkIC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuc2VhcmNoLWZpZWxkLWljb24gKyAuZm9ybS1jb250cm9sOmhvdmVyIHtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgIC5zZWFyY2gtZ3JvdXAtY29tYmluZWQgLnNlYXJjaC1maWVsZCAuaW5saW5lLWZvcm0tcHJlZml4ICsgLnNlYXJjaC1maWVsZC1pY29uICsgLmZvcm0tY29udHJvbDphY3RpdmUsIC5zZWFyY2gtZ3JvdXAtY29tYmluZWQgLnNlYXJjaC1maWVsZCAuaW5saW5lLWZvcm0tcHJlZml4ICsgLnNlYXJjaC1maWVsZC1pY29uICsgLmZvcm0tY29udHJvbDpmb2N1cywgLnNlYXJjaC1ncm91cC1jb21iaW5lZCAuc2VhcmNoLWZpZWxkIC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuc2VhcmNoLWZpZWxkLWljb24gKyAuZm9ybS1jb250cm9sOmFjdGl2ZTpmb2N1cyB7XG4gICAgICBib3JkZXI6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5zZWFyY2gtZ3JvdXAtY29tYmluZWQ6bm90KC5kb21haW4tc2VhcmNoLWFkdmFuY2VkKSAuc2VhcmNoLWZpZWxkIC5pbmxpbmUtZm9ybS1wcmVmaXgge1xuICAgIG1hcmdpbjogY2FsYyh2YXIoLS1zcGFjaW5nLTF4KSAqIC0xKSAwO1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS11aS1oZWlnaHQtbGcpICsgdmFyKC0tc3BhY2luZy0xeCkgKyB2YXIoLS1zcGFjaW5nLTF4KSk7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNlYXJjaC1ncm91cC1jb21iaW5lZC5kb21haW4tc2VhcmNoLWFkdmFuY2VkIC5zZWFyY2gtZmllbGQgLmlubGluZS1mb3JtLXByZWZpeCB7XG4gICAgbWFyZ2luOiBjYWxjKHZhcigtLXNwYWNpbmctMXgpICogLTEpIDA7XG4gICAgaGVpZ2h0OiBjYWxjKHZhcigtLXVpLWhlaWdodC1sZykgKyB2YXIoLS1zcGFjaW5nLTF4KSArIHZhcigtLXNwYWNpbmctMXgpKTsgfSB9XG5cbi5zZWFyY2gtYm94LXNlY29uZGFyeSAuaW5saW5lLWZvcm0tcHJlZml4ICsgLmZvcm0tY29udHJvbDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7IH1cblxuLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuZm9ybS1jb250cm9sOmFjdGl2ZSwgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuZm9ybS1jb250cm9sOmZvY3VzLCAuc2VhcmNoLWJveC1zZWNvbmRhcnkgLmlubGluZS1mb3JtLXByZWZpeCArIC5mb3JtLWNvbnRyb2w6YWN0aXZlOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtYm9yZGVyKTsgfVxuXG4uc2VhcmNoLWJveC1wcmltYXJ5IC5pbmxpbmUtZm9ybS1wcmVmaXggKyAuZm9ybS1jb250cm9sOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7IH1cblxuLnNlYXJjaC1ib3gtcHJpbWFyeSAuaW5saW5lLWZvcm0tcHJlZml4ICsgLmZvcm0tY29udHJvbDphY3RpdmUsIC5zZWFyY2gtYm94LXByaW1hcnkgLmlubGluZS1mb3JtLXByZWZpeCArIC5mb3JtLWNvbnRyb2w6Zm9jdXMsIC5zZWFyY2gtYm94LXByaW1hcnkgLmlubGluZS1mb3JtLXByZWZpeCArIC5mb3JtLWNvbnRyb2w6YWN0aXZlOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLm1haW4tYmFubmVyIC5zZWFyY2gtZ3JvdXAtY29tYmluZWQgLmlubGluZS1mb3JtLXByZWZpeCB7XG4gIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtY29sb3IpO1xuICBvcGFjaXR5OiAwLjQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0yKTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRvbWFpbiBTZWFyY2ggLSBJbnB1dCBCb3ggU3R5bGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wYW5lbC1kb21haW4tc2VhcmNoLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnLWgpOyB9XG5cbi5wYW5lbC1kb21haW4tc2VhcmNoLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZy1oKTsgfVxuXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5pbmxpbmUtZm9ybS1lbGVtZW50ID4gLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcik7IH1cblxuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLnBhbmVsLWRvbWFpbi1zZWFyY2gtcHJpbWFyeSAuZHJvcGRvd24taGVhZGVyIC5mb3JtLWNvbnRyb2wge1xuICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3IpOyB9XG5cbmh0bWw6bm90KC5sYWdvbS1kYXJrLW1vZGUpIC5wYW5lbC1kb21haW4tc2VhcmNoLXByaW1hcnkgLmRyb3Bkb3duIC50bGQtc2VsZWN0LCBodG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5kcm9wZG93biAudGxkLXNlbGVjdDpob3ZlciwgaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLnBhbmVsLWRvbWFpbi1zZWFyY2gtcHJpbWFyeSAuZHJvcGRvd24gLnRsZC1zZWxlY3Q6Zm9jdXMsXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5kcm9wZG93bi5zaG93IC50bGQtc2VsZWN0LFxuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLnBhbmVsLWRvbWFpbi1zZWFyY2gtcHJpbWFyeSAuZHJvcGRvd24uc2hvdyAudGxkLXNlbGVjdDpob3Zlcixcbmh0bWw6bm90KC5sYWdvbS1kYXJrLW1vZGUpIC5wYW5lbC1kb21haW4tc2VhcmNoLXByaW1hcnkgLmRyb3Bkb3duLnNob3cgLnRsZC1zZWxlY3Q6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtYm9yZGVyKTsgfVxuXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5kcm9wZG93biAudGxkLXNlbGVjdCAuY2FyZXQsXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5kcm9wZG93bi5zaG93IC50bGQtc2VsZWN0IC5jYXJldCB7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWNhcmV0LWNvbG9yKTsgfVxuXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKTsgfVxuXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmRyb3Bkb3duLWhlYWRlciAuZm9ybS1jb250cm9sIHtcbiAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yKTsgfVxuXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmRyb3Bkb3duIC50bGQtc2VsZWN0LCBodG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmRyb3Bkb3duIC50bGQtc2VsZWN0OmhvdmVyLCBodG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmRyb3Bkb3duIC50bGQtc2VsZWN0OmZvY3VzLFxuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLnBhbmVsLWRvbWFpbi1zZWFyY2gtc2Vjb25kYXJ5IC5kcm9wZG93bi5zaG93IC50bGQtc2VsZWN0LFxuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLnBhbmVsLWRvbWFpbi1zZWFyY2gtc2Vjb25kYXJ5IC5kcm9wZG93bi5zaG93IC50bGQtc2VsZWN0OmhvdmVyLFxuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLnBhbmVsLWRvbWFpbi1zZWFyY2gtc2Vjb25kYXJ5IC5kcm9wZG93bi5zaG93IC50bGQtc2VsZWN0OmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7IH1cblxuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSkgLnBhbmVsLWRvbWFpbi1zZWFyY2gtc2Vjb25kYXJ5IC5kcm9wZG93biAudGxkLXNlbGVjdCAuY2FyZXQsXG5odG1sOm5vdCgubGFnb20tZGFyay1tb2RlKSAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmRyb3Bkb3duLnNob3cgLnRsZC1zZWxlY3QgLmNhcmV0IHtcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1jYXJldC1jb2xvcik7IH1cblxuLnBhbmVsLWRvbWFpbi1zZWFyY2gtcHJpbWFyeSAuZG9tYWluLXNlYXJjaC10YWJzIGgzLCAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmRvbWFpbi1zZWFyY2gtdGFicyBoMyxcbi5zZWFyY2gtYm94LXByaW1hcnkgLmRvbWFpbi1zZWFyY2gtdGFicyBoMyxcbi5zZWFyY2gtYm94LXNlY29uZGFyeSAuZG9tYWluLXNlYXJjaC10YWJzIGgzIHtcbiAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUtY29sb3IpOyB9XG5cbi5wYW5lbC1kb21haW4tc2VhcmNoLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAsIC5wYW5lbC1kb21haW4tc2VhcmNoLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCxcbi5zZWFyY2gtYm94LXByaW1hcnkgLmJ0bi10YWItZ3JvdXAsXG4uc2VhcmNoLWJveC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAsXG4uYmFubmVyLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAsXG4uYmFubmVyLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCxcbi5zZWN0aW9uLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAsXG4uc2VjdGlvbi1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGMEY7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tdWktYmxvY2stc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyLWNvbG9yKTsgfVxuICAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtLCAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuLCAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc20sIC5wYW5lbC1kb21haW4tc2VhcmNoLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bixcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbSxcbiAgLnNlYXJjaC1ib3gtcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bixcbiAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtLFxuICAuc2VhcmNoLWJveC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG4sXG4gIC5iYW5uZXItcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbSxcbiAgLmJhbm5lci1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuLFxuICAuYmFubmVyLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbSxcbiAgLmJhbm5lci1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG4sXG4gIC5zZWN0aW9uLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc20sXG4gIC5zZWN0aW9uLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG4sXG4gIC5zZWN0aW9uLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbSxcbiAgLnNlY3Rpb24tc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZS1jb2xvcik7IH1cbiAgICAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtOmhvdmVyLCAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuOmhvdmVyLCAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc206aG92ZXIsIC5wYW5lbC1kb21haW4tc2VhcmNoLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bjpob3ZlcixcbiAgICAuc2VhcmNoLWJveC1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtOmhvdmVyLFxuICAgIC5zZWFyY2gtYm94LXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG46aG92ZXIsXG4gICAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtOmhvdmVyLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bjpob3ZlcixcbiAgICAuYmFubmVyLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc206aG92ZXIsXG4gICAgLmJhbm5lci1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuOmhvdmVyLFxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtOmhvdmVyLFxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuOmhvdmVyLFxuICAgIC5zZWN0aW9uLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc206aG92ZXIsXG4gICAgLnNlY3Rpb24tcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bjpob3ZlcixcbiAgICAuc2VjdGlvbi1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc206aG92ZXIsXG4gICAgLnNlY3Rpb24tc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlLWNvbG9yKTsgfVxuICAgIC5wYW5lbC1kb21haW4tc2VhcmNoLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc20uYWN0aXZlLCAucGFuZWwtZG9tYWluLXNlYXJjaC1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuLmFjdGl2ZSwgLnBhbmVsLWRvbWFpbi1zZWFyY2gtcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbTphY3RpdmUsIC5wYW5lbC1kb21haW4tc2VhcmNoLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG46YWN0aXZlLCAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc20uYWN0aXZlLCAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG4uYWN0aXZlLCAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc206YWN0aXZlLCAucGFuZWwtZG9tYWluLXNlYXJjaC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG46YWN0aXZlLFxuICAgIC5zZWFyY2gtYm94LXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc20uYWN0aXZlLFxuICAgIC5zZWFyY2gtYm94LXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG4uYWN0aXZlLFxuICAgIC5zZWFyY2gtYm94LXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc206YWN0aXZlLFxuICAgIC5zZWFyY2gtYm94LXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG46YWN0aXZlLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbS5hY3RpdmUsXG4gICAgLnNlYXJjaC1ib3gtc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuLmFjdGl2ZSxcbiAgICAuc2VhcmNoLWJveC1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi5idG4tc206YWN0aXZlLFxuICAgIC5zZWFyY2gtYm94LXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bjphY3RpdmUsXG4gICAgLmJhbm5lci1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtLmFjdGl2ZSxcbiAgICAuYmFubmVyLXByaW1hcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG4uYWN0aXZlLFxuICAgIC5iYW5uZXItcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbTphY3RpdmUsXG4gICAgLmJhbm5lci1wcmltYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuOmFjdGl2ZSxcbiAgICAuYmFubmVyLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbS5hY3RpdmUsXG4gICAgLmJhbm5lci1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG4uYWN0aXZlLFxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtOmFjdGl2ZSxcbiAgICAuYmFubmVyLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bjphY3RpdmUsXG4gICAgLnNlY3Rpb24tcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbS5hY3RpdmUsXG4gICAgLnNlY3Rpb24tcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bi5hY3RpdmUsXG4gICAgLnNlY3Rpb24tcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbTphY3RpdmUsXG4gICAgLnNlY3Rpb24tcHJpbWFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLWdyb3VwLXNtID4gLmJ0bjphY3RpdmUsXG4gICAgLnNlY3Rpb24tc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4uYnRuLXNtLmFjdGl2ZSxcbiAgICAuc2VjdGlvbi1zZWNvbmRhcnkgLmJ0bi10YWItZ3JvdXAgLmJ0bi1ncm91cC1zbSA+IC5idG4uYWN0aXZlLFxuICAgIC5zZWN0aW9uLXNlY29uZGFyeSAuYnRuLXRhYi1ncm91cCAuYnRuLmJ0bi1zbTphY3RpdmUsXG4gICAgLnNlY3Rpb24tc2Vjb25kYXJ5IC5idG4tdGFiLWdyb3VwIC5idG4tZ3JvdXAtc20gPiAuYnRuOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAucGFuZWwtY2hvb3NlLWRvbWFpbiAucmVjYXB0Y2hhLWNvbnRhaW5lcixcbiAgLnBhbmVsLWNob29zZS1kb21haW4gLmlubGluZS1mb3JtLWVsZW1lbnQsXG4gIC5wYW5lbC1jaG9vc2UtZG9tYWluIC5mb3JtLWdyb3VwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAucmVjYXB0Y2hhLWNvbnRhaW5lciA+IC50b29sdGlwOm5vdCguYm90dG9tKSxcbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAuaW5saW5lLWZvcm0tZWxlbWVudCA+IC50b29sdGlwOm5vdCguYm90dG9tKSxcbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAuZm9ybS1ncm91cCA+IC50b29sdGlwOm5vdCguYm90dG9tKSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHJpZ2h0OiAtNXB4ICFpbXBvcnRhbnQ7XG4gICAgICB0b3A6IC02cHggIWltcG9ydGFudDsgfVxuICAgICAgLnBhbmVsLWNob29zZS1kb21haW4gLnJlY2FwdGNoYS1jb250YWluZXIgPiAudG9vbHRpcDpub3QoLmJvdHRvbSkgLnRvb2x0aXAtYXJyb3csXG4gICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAuaW5saW5lLWZvcm0tZWxlbWVudCA+IC50b29sdGlwOm5vdCguYm90dG9tKSAudG9vbHRpcC1hcnJvdyxcbiAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluIC5mb3JtLWdyb3VwID4gLnRvb2x0aXA6bm90KC5ib3R0b20pIC50b29sdGlwLWFycm93IHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgYm90dG9tOiAtN3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50OyB9XG4gICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAucmVjYXB0Y2hhLWNvbnRhaW5lciA+IC50b29sdGlwOm5vdCguYm90dG9tKS50b3AsXG4gICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAuaW5saW5lLWZvcm0tZWxlbWVudCA+IC50b29sdGlwOm5vdCguYm90dG9tKS50b3AsXG4gICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAuZm9ybS1ncm91cCA+IC50b29sdGlwOm5vdCguYm90dG9tKS50b3Age1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAucmVjYXB0Y2hhLWNvbnRhaW5lciA+IC50b29sdGlwOm5vdCguYm90dG9tKS50b3AgLnRvb2x0aXAtYXJyb3csXG4gICAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluIC5pbmxpbmUtZm9ybS1lbGVtZW50ID4gLnRvb2x0aXA6bm90KC5ib3R0b20pLnRvcCAudG9vbHRpcC1hcnJvdyxcbiAgICAgICAgLnBhbmVsLWNob29zZS1kb21haW4gLmZvcm0tZ3JvdXAgPiAudG9vbHRpcDpub3QoLmJvdHRvbSkudG9wIC50b29sdGlwLWFycm93IHtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDVweCAwIDVweCA1cHg7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluIC5yZWNhcHRjaGEtY29udGFpbmVyID4gLnRvb2x0aXA6bm90KC5ib3R0b20pLnJpZ2h0IC50b29sdGlwLWFycm93LFxuICAgICAgLnBhbmVsLWNob29zZS1kb21haW4gLmlubGluZS1mb3JtLWVsZW1lbnQgPiAudG9vbHRpcDpub3QoLmJvdHRvbSkucmlnaHQgLnRvb2x0aXAtYXJyb3csXG4gICAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiAuZm9ybS1ncm91cCA+IC50b29sdGlwOm5vdCguYm90dG9tKS5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IH1cbiAgLnBhbmVsLWNob29zZS1kb21haW4gLmlubGluZS1mb3JtLWVsZW1lbnQgPiAudG9vbHRpcCB7XG4gICAgdG9wOiAtMzBweCAhaW1wb3J0YW50OyB9XG4gIC5wYW5lbC1jaG9vc2UtZG9tYWluIC5mb3JtLXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluIC5mb3JtLXRvb2x0aXAgLmZvcm0tY29udHJvbCArIC50b29sdGlwIHtcbiAgICAgIHRvcDogLTZweCAhaW1wb3J0YW50O1xuICAgICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcmlnaHQ6IC01cHggIWltcG9ydGFudDsgfVxuICAgICAgLnBhbmVsLWNob29zZS1kb21haW4gLmZvcm0tdG9vbHRpcCAuZm9ybS1jb250cm9sICsgLnRvb2x0aXAgLnRvb2x0aXAtYXJyb3cge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBib3R0b206IDdweC0haW1wb3J0YW50O1xuICAgICAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucGFuZWwtZG9tYWluLXNlYXJjaCBmb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAucGFuZWwtZG9tYWluLXNlYXJjaCBmb3JtLWVsZW1lbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgICAgIC5wYW5lbC1kb21haW4tc2VhcmNoIGZvcm0tZWxlbWVudDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggZm9ybS1lbGVtZW50IC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAucGFuZWwtZG9tYWluLXNlYXJjaCAuc2VhcmNoLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAucGFuZWwtZG9tYWluLXNlYXJjaCAuc2VhcmNoLWdyb3VwIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cbiAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmlubGluZS1mb3JtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmlubGluZS1mb3JtLWVsZW1lbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnBhbmVsLWRvbWFpbi1zZWFyY2ggLmlubGluZS1mb3JtLWVsZW1lbnQgPiAqIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5wYW5lbC1kb21haW4tc2VhcmNoIC5pbmxpbmUtZm9ybS1lbGVtZW50ICsgLmlubGluZS1mb3JtLWVsZW1lbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9XG4gICAgICAucGFuZWwtZG9tYWluLXNlYXJjaCAuaW5saW5lLWZvcm0tZWxlbWVudCAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wYW5lbC1kb21haW4tc2VhcmNoIHNlbGVjdCNzdWJkb21haW50bGQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLmNhcHRjaGFpbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNhcHRjaGFpbWFnZSA+IC50b29sdGlwIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcmlnaHQ6IC01cHggIWltcG9ydGFudDtcbiAgICAgIHRvcDogLTMwcHggIWltcG9ydGFudDsgfVxuICAgICAgLmNhcHRjaGFpbWFnZSA+IC50b29sdGlwIC50b29sdGlwLWFycm93IHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgYm90dG9tOiAtN3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50OyB9XG4gICAgICAuY2FwdGNoYWltYWdlID4gLnRvb2x0aXAucmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9IH1cblxuI2dvb2dsZS1yZWNhcHRjaGEtZG9tYWluY2hlY2tlciB7XG4gIHdpZHRoOiAzMDRweDtcbiAgaGVpZ2h0OiA3OHB4O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAjZ29vZ2xlLXJlY2FwdGNoYS1kb21haW5jaGVja2VyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNSU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzM2cHgpIHtcbiAgI2dvb2dsZS1yZWNhcHRjaGEtZG9tYWluY2hlY2tlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkzNSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkzNSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzg0cHgpIHtcbiAgI2dvb2dsZS1yZWNhcHRjaGEtZG9tYWluY2hlY2tlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk2KTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgI2dvb2dsZS1yZWNhcHRjaGEtZG9tYWluY2hlY2tlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjg5KTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgI2dvb2dsZS1yZWNhcHRjaGEtZG9tYWluY2hlY2tlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMy41JTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODMpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43ODUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gLSBMb29rdXBcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmRvbWFpbi1sb29rdXAtcmVzdWx0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4OyB9XG4gIC5kb21haW4tbG9va3VwLXJlc3VsdC5saXN0LWdyb3VwIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmRvbWFpbi1sb29rdXAtcmVzdWx0Lmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtYmcpOyB9XG4gICAgICAuZG9tYWluLWxvb2t1cC1yZXN1bHQubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tZm9udC1zaXplLWg1KTsgfVxuICAgICAgICAuZG9tYWluLWxvb2t1cC1yZXN1bHQubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5jb250ZW50IC5sYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweCAhaW1wb3J0YW50OyB9XG4gICAgICAuZG9tYWluLWxvb2t1cC1yZXN1bHQubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5kb21haW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTsgfVxuICAgICAgLmRvbWFpbi1sb29rdXAtcmVzdWx0Lmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAuZXh0ZW5zaW9uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pOyB9XG4gICAgICAuZG9tYWluLWxvb2t1cC1yZXN1bHQubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICAuZG9tYWluLWxvb2t1cC1yZXN1bHQubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5hY3Rpb25zIC5mb3JtLWNvbnRyb2wsXG4gICAgICAgIC5kb21haW4tbG9va3VwLXJlc3VsdC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLmFjdGlvbnMgLnByaWNlIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gIC5kb21haW4tbG9va3VwLXJlc3VsdCAuYWN0aW9ucyA+IC5idG4tZ3JvdXAsXG4gIC5kb21haW4tbG9va3VwLXJlc3VsdCAuYWN0aW9ucyA+IC5idG4tYWRkLXRvLWNhcnQge1xuICAgIG1pbi13aWR0aDogMTM2cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmRvbWFpbi1sb29rdXAtcmVzdWx0LWV4dGVuZGVkLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAuYWN0aW9ucyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmRvbWFpbi1sb29rdXAtcmVzdWx0LWV4dGVuZGVkLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSAuYWN0aW9ucyAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTJ4KSAwOyB9XG4gICAgICAuZG9tYWluLWxvb2t1cC1yZXN1bHQtZXh0ZW5kZWQubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIC5hY3Rpb25zID4gLmJ0bi1ncm91cCxcbiAgICAgIC5kb21haW4tbG9va3VwLXJlc3VsdC1leHRlbmRlZC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0gLmFjdGlvbnMgLmJ0biB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmJ0bi1ncm91cC1yZW1vdmUge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tc20tYm9yZGVyLXJhZGl1cyk7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmJ0bi1ncm91cC1yZW1vdmUgLmJ0bi1yZW1vdmUtZG9tYWluIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIC5idG4tZ3JvdXAtcmVtb3ZlIC5idG4tcmVtb3ZlLWRvbWFpbiA+IGkge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgLmJ0bi1ncm91cC1yZW1vdmUgLmJ0bi1yZW1vdmUtZG9tYWluLmJ0bi1zbSwgLmJ0bi1ncm91cC1yZW1vdmUgLmJ0bi1ncm91cC1zbSA+IC5idG4tcmVtb3ZlLWRvbWFpbi5idG4ge1xuICAgICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodC1zbSk7IH1cbiAgICAuYnRuLWdyb3VwLXJlbW92ZSAuYnRuLXJlbW92ZS1kb21haW4uYnRuLWxnLCAuYnRuLWdyb3VwLXJlbW92ZSAuYnRuLWdyb3VwLWxnID4gLmJ0bi1yZW1vdmUtZG9tYWluLmJ0biB7XG4gICAgICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0LWxnKTsgfVxuXG4uYnRuLWdyb3VwLWxvYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYnRuLWdyb3VwLXJlbW92ZS5sb2FkaW5nIC5idG4tZ3JvdXAtbG9hZGVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uYnRuLWdyb3VwLXJlbW92ZS5sb2FkaW5nIC5idG4gPiBzcGFuLCAuYnRuLWdyb3VwLXJlbW92ZS5sb2FkaW5nIC5idG4gaSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRvbWFpbiAtIFRMRHMgU3VnZ2VzdGlvbnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmRvbWFpbi1zdWdnZXN0aW9uLXdhcm5pbmcge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmRvbWFpbi1zdWdnZXN0aW9uLmFkZGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktYmxvY2stYWN0aXZlLWJnKTsgfVxuXG4uZG9tYWluLXN1Z2dlc3Rpb24gLmFjdGlvbnMtY29udHJvbCB7XG4gIHBhZGRpbmc6IDAgdmFyKC0tdWktcGFkZGluZy1zbS1oKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LXNtLWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1kaXNhYmxlZC1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAubW9yZS1zdWdnZXN0aW9ucyB7XG4gIGNsaXAtcGF0aDogaW5zZXQoMXB4IC0yOHB4IC0yOXB4IC0yOXB4KTsgfVxuXG4ubW9yZS1zdWdnZXN0aW9ucyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxpc3QtZ3JvdXAtYmcpO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLWxpc3QtZ3JvdXAtYm94LXNoYWRvdyk7XG4gIGJvcmRlcjogdmFyKC0tbGlzdC1ncm91cC1ib3JkZXIpO1xuICBib3JkZXItdG9wOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGhlaWdodDogMzhweDsgfVxuICAubW9yZS1zdWdnZXN0aW9ucyBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpOyB9XG4gICAgLm1vcmUtc3VnZ2VzdGlvbnMgYTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tbGluay1ob3Zlci1jb2xvcik7IH1cbiAgICAubW9yZS1zdWdnZXN0aW9ucyBhIGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtNHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAubW9yZS1zdWdnZXN0aW9ucyAuYnRuIHtcbiAgICBtaW4td2lkdGg6IDI1NnB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuZG9tYWluLWxvb2t1cC1yZXN1bHQgLmRvbWFpbi1zdWdnZXN0aW9uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmRvbWFpbi1sb29rdXAtcmVzdWx0IC5kb21haW4tc3VnZ2VzdGlvbiAuYWN0aW9ucyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5kb21haW4tbG9va3VwLXJlc3VsdCAuZG9tYWluLXN1Z2dlc3Rpb24gLmFjdGlvbnMgLnByaWNlIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLmRvbWFpbi1sb29rdXAtcmVzdWx0IC5kb21haW4tc3VnZ2VzdGlvbiAuYWN0aW9ucyB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAuZG9tYWluLWxvb2t1cC1yZXN1bHQgLmRvbWFpbi1zdWdnZXN0aW9uIC5hY3Rpb25zIC5wcmljZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRG9tYWluIC0gU2VhcmNoIFJlc3VsdCBCb3hcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZyk7IH1cbiAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7IH1cbiAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZSB7XG4gICAgbWluLWhlaWdodDogdW5zZXQ7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7IH1cbiAgICAuZG9tYWluLWNoZWNrZXItcmVzdWx0LWhlYWRsaW5lIC5tZXNzYWdlOmhhcygubGFiZWwtY29ybmVyKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUgLm1lc3NhZ2U6aGFzKC5sYWJlbC1jb3JuZXIpIC5wcmltYXJ5LWRvbWFpbi1oZWFkZXIge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZTpoYXMoLmxhYmVsLWNvcm5lcikgLmxhYmVsLWNvcm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMTVweDtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUtY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1LjQ2ZGVnLCB2YXIoLS1icmFuZC1wcmltYXJ5LWdyYWRpZW50LXN0YXJ0KSA4LjYlLCB2YXIoLS1icmFuZC1wcmltYXJ5LWdyYWRpZW50LWVuZCkgOTEuOTQlKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiA0cHg7IH1cbiAgICAgICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZTpoYXMoLmxhYmVsLWNvcm5lcikgLmxhYmVsLWNvcm5lciBzdmcge1xuICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgIGhlaWdodDogMTJweDsgfVxuICAgIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUgLm1lc3NhZ2UgLm1lc3NhZ2UtaWNvbiB7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICB3aWR0aDogODBweDtcbiAgICAgIG1pbi13aWR0aDogODBweDtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZSAubWVzc2FnZS1pY29uIGkge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eGxnKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpOyB9XG4gICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZSAubWVzc2FnZS10aXRsZSBzdHJvbmcge1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDsgfVxuICAgIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUgLm1lc3NhZ2UgLm1lc3NhZ2UtdGV4dCB7XG4gICAgICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjaW5nLTF4KSAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNCk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpOyB9XG4gICAgICAuZG9tYWluLWNoZWNrZXItcmVzdWx0LWhlYWRsaW5lIC5tZXNzYWdlIC5tZXNzYWdlLXRleHQgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpOyB9XG4gICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZSAubWVzc2FnZS10aXRsZSArIC5kb21haW4tcHJpY2Uge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqICh2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSAvIDIpKTsgfVxuICAgIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUgLm1lc3NhZ2UgLmRvbWFpbi1wcmljZSAuYnRuLXByaWNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUgLm1lc3NhZ2UgLmRvbWFpbi1wcmljZSAuYnRuLXByaWNlOm5vdCguYnRuLXJlYWRvbmx5KSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LXNpemUtaDUpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTsgfVxuICAgICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZSAuZG9tYWluLXByaWNlIC5idG4tcHJpY2UgLmJ0bi1pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXVpLW5hdi1saW5rLWljb24tY29sb3IpO1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cbiAgICAgIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUgLm1lc3NhZ2UgLmRvbWFpbi1wcmljZSAuYnRuLXByaWNlLmJ0bi1yZWFkb25seSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXNtLWZvbnQtc2l6ZSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1zbS1saW5lLWhlaWdodCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1zbS1mb250LXdlaWdodCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmljZS1jb2xvcik7IH1cbiAgICAgICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZSAuZG9tYWluLXByaWNlIC5idG4tcHJpY2UuYnRuLXJlYWRvbmx5IC5idG4taWNvbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZSAuZG9tYWluLXByaWNlIC5idG4tcHJpY2Ugc21hbGwge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpOyB9XG4gICAgICAuZG9tYWluLWNoZWNrZXItcmVzdWx0LWhlYWRsaW5lIC5tZXNzYWdlIC5kb21haW4tcHJpY2UgLmJ0bi1wcmljZTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJnKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtaG92ZXItY29sb3IpOyB9XG4gICAgICAuZG9tYWluLWNoZWNrZXItcmVzdWx0LWhlYWRsaW5lIC5tZXNzYWdlIC5kb21haW4tcHJpY2UgLmJ0bi1wcmljZTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJnKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpO1xuICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtY29sb3IpOyB9XG4gICAgLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSAubWVzc2FnZSAuZG9tYWluLXByaWNlIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHRvcDogY2FsYygxMDAlICsgdmFyKC0tc3BhY2luZy0yeCkpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAucGFnZS1kb21haW5yZWdpc3RlciAubWFpbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAuZG9tYWluLWNoZWNrZXItcmVzdWx0LWhlYWRsaW5lIC5tZXNzYWdlIC5tZXNzYWdlLXRleHQsXG4gIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUgLmRvbWFpbi1wcmljZSAucHJpY2Uge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUgLm1lc3NhZ2UgLm1lc3NhZ2UtaWNvbiB7XG4gICAgbWFyZ2luOiAwIGF1dG8gdmFyKC0tc3BhY2luZy00eCk7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRvbWFpbiAtIFByb21vdGVkIFByb2R1Y3QgQm94ZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmRvbWFpbi1wcm9tby1ib3gge1xuICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctNXgpIHZhcigtLXNwYWNpbmctM3gpIHZhcigtLXNwYWNpbmctM3gpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuICAuZG9tYWluLXByb21vLWJveCAucHJvbW8tYm94LWJvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5kb21haW4tcHJvbW8tYm94IC5wcm9tby1ib3gtaWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNHB4OyB9XG4gICAgLmRvbWFpbi1wcm9tby1ib3ggLnByb21vLWJveC1pY29uIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogODBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDgwcHg7IH1cbiAgLmRvbWFpbi1wcm9tby1ib3ggLnByb21vLWJveC1oZWFkZXIgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDYpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7IH1cbiAgLmRvbWFpbi1wcm9tby1ib3ggLnByb21vLWJveC1oZWFkZXIgLmRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG4gIC5kb21haW4tcHJvbW8tYm94IC5wcm9tby1ib3gtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB0ZXh0LWFsaWduOiB1bnNldDsgfVxuICAgIC5kb21haW4tcHJvbW8tYm94IC5wcm9tby1ib3gtY29udGVudDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAuZG9tYWluLXByb21vLWJveCAucHJvbW8tYm94LWNvbnRlbnQtYmV0d2VlbiB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAuZG9tYWluLXByb21vLWJveCAucHJvbW8tYm94LWNvbnRlbnQgLnByb21vLWRlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsZXgtYmFzaXM6IDUwJTsgfVxuICAgICAgLmRvbWFpbi1wcm9tby1ib3ggLnByb21vLWJveC1jb250ZW50IC5wcm9tby1kZXNjcmlwdGlvbiArIC5idG4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgIC5kb21haW4tcHJvbW8tYm94IC5wcm9tby1ib3gtY29udGVudCArIC5wcm9tby1ib3gtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiA0OHB4OyB9XG4gICAgLmRvbWFpbi1wcm9tby1ib3ggLnByb21vLWJveC1jb250ZW50IC5wcm9tby1ib3gtaWNvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctM3gpOyB9XG4gICAgLmRvbWFpbi1wcm9tby1ib3ggLnByb21vLWJveC1jb250ZW50IC5wcm9tby1ib3gtaGVhZGVyIGg1LCAuZG9tYWluLXByb21vLWJveCAucHJvbW8tYm94LWNvbnRlbnQgLnByb21vLWJveC1oZWFkZXIgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5kb21haW4tcHJvbW8tYm94IC5wcm9tby1ib3gtY29udGVudCAucHJvbW8tZGVzY3JpcHRpb24ge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5kb21haW4tcHJvbW8tYm94IC5wcm9tby1ib3gtY29udGVudCAucHJvbW8tZGVzY3JpcHRpb24gKyAuYnRuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5wYWdlLWRvbWFpbi1yZW5ld2FscyAubWFpbi1ncmlkIC5tYWluLXNpZGViYXIubWFpbi1zaWRlYmFyLXN1bW1hcnksXG4gIC5wYWdlLXNlcnZpY2UtcmVuZXdhbHMgLm1haW4tZ3JpZCAubWFpbi1zaWRlYmFyLm1haW4tc2lkZWJhci1zdW1tYXJ5IHtcbiAgICBvcmRlcjogMTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfSB9XG5cbi5zdWJoZWFkZXItY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAuc3ViaGVhZGVyLWNvbnRhaW5lciA+IGRpdixcbiAgLnN1YmhlYWRlci1jb250YWluZXIgPiBsYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4ICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gICAgLnN1YmhlYWRlci1jb250YWluZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAuc3ViaGVhZGVyLWNvbnRhaW5lciA+IGRpdiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpICFpbXBvcnRhbnQ7IH0gfVxuXG4ucGFuZWwucGFuZWwtc3dpdGNoLXNob3ctcmVuZXdhYmxlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5wYW5lbC5wYW5lbC1zd2l0Y2gtc2hvdy1yZW5ld2FibGUgLnBhbmVsLWJvZHkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgd2lkdGg6IG1heC1jb250ZW50OyB9XG4gICAgLnBhbmVsLnBhbmVsLXN3aXRjaC1zaG93LXJlbmV3YWJsZSAucGFuZWwtYm9keSAuc3dpdGNoIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAgIC5wYW5lbC5wYW5lbC1zd2l0Y2gtc2hvdy1yZW5ld2FibGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IDBweDsgfSB9XG5cbi5zZXJ2aWNlLXJlbmV3YWxzIC5zZXJ2aWNlLXJlbmV3YWw6bm90KC5kb21haW4tcmVuZXdhbC1hZGRlZCkgPiAucGFuZWwtYm9keSAuYnRuLXJlbW92ZS1yZW5ld2FsIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5zZXJ2aWNlLXJlbmV3YWxzIC5wYW5lbC5kb21haW4tcmVuZXdhbC1hZGRlZCAuZG9tYWluLXJlbmV3YWwtYWN0aW9ucyB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7IH1cbiAgLnNlcnZpY2UtcmVuZXdhbHMgLnBhbmVsLmRvbWFpbi1yZW5ld2FsLWFkZGVkIC5kb21haW4tcmVuZXdhbC1hY3Rpb25zIC5idG4tYWRkLXJlbmV3YWwtdG8tY2FydCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCkge1xuICAuc2VydmljZS1yZW5ld2FscyAucGFuZWwgLnBhbmVsLWJvZHkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuICAgIC5zZXJ2aWNlLXJlbmV3YWxzIC5wYW5lbCAucGFuZWwtYm9keSAuZG9tYWluLXJlbmV3YWwtZm9ybSB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuXG4uc2VydmljZS1yZW5ld2FscyAucGFuZWwtYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLnNlcnZpY2UtcmVuZXdhbHMgLmRvbWFpbi1yZW5ld2FsLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhsZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14bGcpOyB9XG4gIC5zZXJ2aWNlLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC10aXRsZS1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLnNlcnZpY2UtcmVuZXdhbHMgLmRvbWFpbi1yZW5ld2FsLXRpdGxlLXJpZ2h0ID4gZGl2IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5zZXJ2aWNlLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC10aXRsZSBpW2RhdGEtdG9nZ2xlPVwidG9vbHRpcFwiXSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgIC5zZXJ2aWNlLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC10aXRsZSBpW2RhdGEtdG9nZ2xlPVwidG9vbHRpcFwiXTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuXG4uc2VydmljZS1yZW5ld2FscyAuZG9tYWluLXJlbmV3YWwtdXJsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTsgfVxuXG4uc2VydmljZS1yZW5ld2FscyAuZG9tYWluLXJlbmV3YWwtc3RhdHVzIHtcbiAgbWFyZ2luLWxlZnQ6IHVuc2V0OyB9XG4gIC5zZXJ2aWNlLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC1zdGF0dXMgLmxhYmVsIHtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi5zZXJ2aWNlLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC1wZXJpb2RzIHtcbiAgbWFyZ2luLXRvcDogMTJweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcbiAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7IH1cblxuLnNlcnZpY2UtcmVuZXdhbHMgLmRvbWFpbi1yZW5ld2FsLW5leHQtZHVlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIC5zZXJ2aWNlLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC1uZXh0LWR1ZSAuZG9tYWluLXJlbmV3YWwtc3RhdHVzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5zZXJ2aWNlLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC1hY3Rpb25zID4gYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnNlcnZpY2UtcmVuZXdhbHMgLmRvbWFpbi1yZW5ld2FsLWZvcm0ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAuc2VydmljZS1yZW5ld2FscyAuZG9tYWluLXJlbmV3YWwtZm9ybSAuYnRuLXJlbW92ZS1yZW5ld2FsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIHVzZXItc2VsZWN0OiBhdXRvOyB9XG4gICAgLnNlcnZpY2UtcmVuZXdhbHMgLmRvbWFpbi1yZW5ld2FsLWZvcm0gLmJ0bi1yZW1vdmUtcmVuZXdhbCA+IGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnNlcnZpY2UtcmVuZXdhbHMgLmRvbWFpbi1yZW5ld2FsLWZvcm0gLmJ0bi1hZGQtcmVuZXdhbC10by1jYXJ0IHtcbiAgICBtaW4td2lkdGg6IDEwNXB4OyB9XG4gICAgLnNlcnZpY2UtcmVuZXdhbHMgLmRvbWFpbi1yZW5ld2FsLWZvcm0gLmJ0bi1hZGQtcmVuZXdhbC10by1jYXJ0LmJ0bi1wcmltYXJ5OmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJvcmRlcik7IH1cbiAgICAuc2VydmljZS1yZW5ld2FscyAuZG9tYWluLXJlbmV3YWwtZm9ybSAuYnRuLWFkZC1yZW5ld2FsLXRvLWNhcnQuYnRuLXByaW1hcnktZmFkZWQ6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYm9yZGVyKTsgfVxuXG4uc2VydmljZS1yZW5ld2FscyAuYWRkb24tcmVuZXdhbHMgLnNlcnZpY2UtcmVuZXdhbHM6bm90KC5kb21haW4tcmVuZXdhbC1hZGRlZCkgPiAucGFuZWwtYm9keSAuYnRuLXJlbW92ZS1yZW5ld2FsIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5zZXJ2aWNlLXJlbmV3YWxzIC5hZGRvbi1yZW5ld2Fscy1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMngpO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5zZXJ2aWNlLXJlbmV3YWxzIC5hZGRvbi1yZW5ld2FscyAucGFuZWwge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnNlcnZpY2UtcmVuZXdhbHMgLmFkZG9uLXJlbmV3YWxzIC5wYW5lbCAucGFuZWwtYm9keSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAuc2VydmljZS1yZW5ld2FscyAuYWRkb24tcmVuZXdhbHMgLnBhbmVsW3N0eWxlPVwiZGlzcGxheTogbm9uZTtcIl0gKyAucGFuZWwgLmFkZG9uLXJlbmV3YWxzLWRpdmlkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNlcnZpY2UtcmVuZXdhbHMgLmFkZG9uLXJlbmV3YWxzIC5wYW5lbDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy10b3A6IDRweDsgfVxuICAgIC5zZXJ2aWNlLXJlbmV3YWxzIC5hZGRvbi1yZW5ld2FscyAucGFuZWw6Zmlyc3QtY2hpbGQgLmFkZG9uLXJlbmV3YWxzLWRpdmlkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2VydmljZS1yZW5ld2FscyAuYWRkb24tcmVuZXdhbHMtY29udGVudCB7XG4gIHBhZGRpbmc6IDAgdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKSB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpIHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7IH1cblxuLnNlcnZpY2UtcmVuZXdhbHMgLmFkZG9uLXJlbmV3YWxzLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcbiAgcGFkZGluZzogMCB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xuICB3aWR0aDogMTAwJTsgfVxuICAuc2VydmljZS1yZW5ld2FscyAuYWRkb24tcmVuZXdhbHMtdGl0bGUtbGluZSB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG5cbi5zZXJ2aWNlLXJlbmV3YWxzIC5hZGRvbi1yZW5ld2FscyAuZG9tYWluLXJlbmV3YWwtdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7IH1cbiAgLnNlcnZpY2UtcmVuZXdhbHMgLmFkZG9uLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC10aXRsZSBpW2RhdGEtdG9nZ2xlPVwidG9vbHRpcFwiXSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpOyB9XG5cbi5zZXJ2aWNlLXJlbmV3YWxzIC5hZGRvbi1yZW5ld2FscyAuZG9tYWluLXJlbmV3YWwtcGVyaW9kcyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLnNlcnZpY2UtcmVuZXdhbHMgLmFkZG9uLXJlbmV3YWxzIC5kb21haW4tcmVuZXdhbC1mb3JtIC5idG4tYWRkLXJlbmV3YWwtdG8tY2FydCB7XG4gIG1pbi13aWR0aDogODNweDsgfVxuXG4uZG9tYWluLXJlbmV3YWwtY29udGVudCxcbi5zZXJ2aWNlLXJlbmV3YWwtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuZG9tYWluLXJlbmV3YWwtY29udGVudCBwLFxuICAuc2VydmljZS1yZW5ld2FsLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cblxuLmRvbWFpbi1yZW5ld2FsLXRvb2x0aXAsXG4uc2VydmljZS1yZW5ld2FsLXRvb2x0aXAge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmRvbWFpbi1yZW5ld2FsLXRpdGxlLFxuLnNlcnZpY2UtcmVuZXdhbC10aXRsZSB7XG4gIG1hcmdpbjogLThweCAwIDAgMDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpOyB9XG5cbi5kb21haW4tcmVuZXdhbC1zdGF0dXMsXG4uc2VydmljZS1yZW5ld2FsLXN0YXR1cyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5kb21haW4tcmVuZXdhbC1mb3JtLFxuLnNlcnZpY2UtcmVuZXdhbC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLmRvbWFpbi1yZW5ld2FsLWZvcm0gLmJ0bixcbiAgLnNlcnZpY2UtcmVuZXdhbC1mb3JtIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuXG4uZG9tYWluLXJlbmV3YWwtcGVyaW9kLFxuLnNlcnZpY2UtcmVuZXdhbC1wZXJpb2Qge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZG9tYWluLXJlbmV3YWwtcGVyaW9kLCAuZG9tYWluLXJlbmV3YWwtYWN0aW9ucyxcbi5zZXJ2aWNlLXJlbmV3YWwtcGVyaW9kLFxuLnNlcnZpY2UtcmVuZXdhbC1hY3Rpb25zIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7IH1cblxuLmRvbWFpbi1yZW5ld2FsIC5idG4gPiAqLFxuLnNlcnZpY2UtcmVuZXdhbCAuYnRuID4gKiB7XG4gIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7IH1cblxuLmRvbWFpbi1yZW5ld2FsIC5idG4gLmFkZGVkLFxuLnNlcnZpY2UtcmVuZXdhbCAuYnRuIC5hZGRlZCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRvbWFpbi1yZW5ld2FsIC5idG4gLmxvYWRlcixcbi5zZXJ2aWNlLXJlbmV3YWwgLmJ0biAubG9hZGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZG9tYWluLXJlbmV3YWwtYWRkZWQgPiAucGFuZWwtYm9keSA+IC5kb21haW4tcmVuZXdhbC1mb3JtID4gLmRvbWFpbi1yZW5ld2FsLWFjdGlvbnMgLmJ0bixcbi5zZXJ2aWNlLXJlbmV3YWwtYWRkZWQgPiAucGFuZWwtYm9keSA+IC5kb21haW4tcmVuZXdhbC1mb3JtID4gLmRvbWFpbi1yZW5ld2FsLWFjdGlvbnMgLmJ0biB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRvbWFpbiAtIEZlYXR1cmVkIFRMRHMgQm94ZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLmZlYXR1cmVkLXRsZHMge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykpICFpbXBvcnRhbnQ7IH1cbiAgLmZlYXR1cmVkLXRsZHMtY29udGFpbmVyIC5mZWF0dXJlZC10bGQgLmltZy1jb250YWluZXIge1xuICAgIGhlaWdodDogMTIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLmZlYXR1cmVkLXRsZHMtY29udGFpbmVyIC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAuZmVhdHVyZWQtdGxkcyAuc3dpcGVyLXNsaWRlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pOyB9IH1cblxuLmZlYXR1cmVkLXRsZCB7XG4gIG1hcmdpbjogMCAwIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpIDA7XG4gIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xuICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3cpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuZmVhdHVyZWQtdGxkIC5pbWctY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xuICAgIGhlaWdodDogMTYwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5mZWF0dXJlZC10bGQgLmltZy1jb250YWluZXIgaW1nIHtcbiAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgICBtYXgtd2lkdGg6IDgwJTsgfVxuICAuZmVhdHVyZWQtdGxkLXByaWNlIHtcbiAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5mZWF0dXJlZC10bGQtcHJpY2UgPiBkaXYge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuZmVhdHVyZWQtdGxkIC5pbWctY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDgwcHg7IH1cbiAgICAuZmVhdHVyZWQtdGxkIC5pbWctY29udGFpbmVyIGltZyB7XG4gICAgICBoZWlnaHQ6IDQwcHg7IH0gfVxuXG4udGxkLXNhbGUtZ3JvdXAge1xuICBwYWRkaW5nOiAxcHggM3B4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC50bGQtc2FsZS1ncm91cC1ob3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOTYxNWE7IH1cbiAgLnRsZC1zYWxlLWdyb3VwLXNhbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Q0NTg7IH1cbiAgLnRsZC1zYWxlLWdyb3VwLW5ldyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJhZDU4ODsgfVxuXG4udGxkLW1vYi12YWx1ZSB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblRMRCBQcmljaW5nIC0gVGFibGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnRsZC10YWJsZSAudGxkLW5hbWUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bGcpOyB9XG4gIC50bGQtdGFibGUgLnRsZC1uYW1lIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG5cbi50bGQtdGFibGUgLnRsZC1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpOyB9XG5cbi50bGQtdGFibGUgLnRsZC1yZWdpc3RlciB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGxkLXRhYmxlIC50bGQtbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnRsZC10YWJsZSBzbWFsbCB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnRsZC10YWJsZSAudGFibGUgPiB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAudGxkLXRhYmxlIC50YWJsZSA+IHRib2R5ID4gdHIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKSAtIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKSAtIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pKTsgfVxuICAgIC50bGQtdGFibGUgLnRhYmxlID4gdGJvZHkgPiB0cjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS10YWJsZS1ib3JkZXItY29sb3IpOyB9XG4gICAgLnRsZC10YWJsZSAudGFibGUgPiB0Ym9keSA+IHRyIHRkIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi13aWR0aDogODBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuICAgICAgLnRsZC10YWJsZSAudGFibGUgPiB0Ym9keSA+IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcjsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGxkLXRhYmxlIC50YWJsZSA+IHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50bGQtdGFibGUgLnRhYmxlID4gdGJvZHkgPiB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgLnRsZC10YWJsZSAudGFibGUgPiB0Ym9keSA+IHRyIHRkLnRsZC1yZWdpc3RlciB7XG4gICAgZmxleDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgIC50bGQtdGFibGUgLnRhYmxlID4gdGJvZHkgPiB0ciB0ZC50bGQtcmVnaXN0ZXIgLmJ0biB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuVExEIFByaWNpbmcgLSBUb29sYmFyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi50bGQtdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG4gIC50bGQtdG9vbGJhciA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7IH1cbiAgLnRsZC10b29sYmFyIC50bGQtY2F0ZWdvcmllcyB7XG4gICAgZmxleDogMTsgfVxuICAgIC50bGQtdG9vbGJhciAudGxkLWNhdGVnb3JpZXMgc2VsZWN0IHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnRsZC10b29sYmFyIC5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50bGQtdG9vbGJhciAuc2VhcmNoLWdyb3VwIGlucHV0IHtcbiAgICBtaW4td2lkdGg6IDIyMHB4OyB9XG5cbi50bGQtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG4gIC50bGQtaGVhZGVyIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAudGxkLWhlYWRlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC50bGQtaGVhZGVyIC50bGQtc2VhcmNoIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50bGQtdG9vbGJhciB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC50bGQtdG9vbGJhciAudGxkLWNhdGVnb3JpZXMsXG4gICAgLnRsZC10b29sYmFyIC50bGQtc2VhcmNoIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnRsZC10b29sYmFyIC50bGQtY2F0ZWdvcmllcyArIC50bGQtc2VhcmNoIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gLSBUTERzIFNwb3RsaWdodCBCb3hlc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uc3BvdGxpZ2h0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gIG1hcmdpbi1yaWdodDogLThweDtcbiAgbWFyZ2luLWJvdHRvbTogLTE2cHg7IH1cbiAgLnNwb3RsaWdodHMgLnNwb3RsaWdodC1jb2wge1xuICAgIG1pbi13aWR0aDogMTU2cHg7XG4gICAgcGFkZGluZzogMCA4cHggIWltcG9ydGFudDsgfVxuICAuc3BvdGxpZ2h0cy0xIC5zcG90bGlnaHQtY29sIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc3BvdGxpZ2h0cy0yIC5zcG90bGlnaHQtY29sIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5zcG90bGlnaHRzLTMgLnNwb3RsaWdodC1jb2wge1xuICAgIHdpZHRoOiAzMy4zJTsgfVxuICAuc3BvdGxpZ2h0cy00IC5zcG90bGlnaHQtY29sIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5zcG90bGlnaHRzLTUgLnNwb3RsaWdodC1jb2wge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLnNwb3RsaWdodHMtNiAuc3BvdGxpZ2h0LWNvbCB7XG4gICAgd2lkdGg6IDE2LjYlOyB9XG4gIC5zcG90bGlnaHRzLTcgLnNwb3RsaWdodC1jb2wge1xuICAgIHdpZHRoOiAxNC4yOCU7IH1cbiAgLnNwb3RsaWdodHMtOCAuc3BvdGxpZ2h0LWNvbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9XG5cbi5zcG90bGlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xuICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuICAuc3BvdGxpZ2h0LWxvYWRlciB7XG4gICAgaGVpZ2h0OiAxMzJweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnNwb3RsaWdodC1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBwYWRkaW5nOiAzMnB4IDA7IH1cbiAgICAuc3BvdGxpZ2h0LWNvbnRlbnQgLmV4dGVuc2lvbiB7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5zcG90bGlnaHQtY29udGVudCAuZXh0ZW5zaW9uIHNwYW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTsgfVxuICAuc3BvdGxpZ2h0LWZvb3RlciB7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTF4KTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zcG90bGlnaHQtZm9vdGVyX3ByaWNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ibG9jazogMTFweDsgfVxuICAgICAgLnNwb3RsaWdodC1mb290ZXJfcHJpY2UtYm9yZGVyZWQge1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMXB4O1xuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXVpLXBhZGRpbmctc20taCk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXNtKTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1zbS1mb250LXNpemUpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXNtKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWRpc2FibGVkLWJnKTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAuc3BvdGxpZ2h0LWZvb3Rlcl9ib3JkZXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpOyB9XG4gICAgLnNwb3RsaWdodC1mb290ZXIgLmJ0biB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAuc3BvdGxpZ2h0LWZvb3RlciAuYnRuLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuc3BvdGxpZ2h0IC50bGQtbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDhweDtcbiAgICBsZWZ0OiAtNXB4O1xuICAgIG1heC13aWR0aDogMTU2cHg7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zcG90bGlnaHQudW5hdmFpbGFibGUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLnNwb3RsaWdodC51bmF2YWlsYWJsZSAubGFiZWwubGFiZWwtY29ybmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktbGlnaHRlci00KTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAgIC5zcG90bGlnaHQudW5hdmFpbGFibGUgLnNwb3RsaWdodC1jb250ZW50IC5leHRlbnNpb24ge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtZmFkZWQtY29sb3IpOyB9XG4gICAgICAuc3BvdGxpZ2h0LnVuYXZhaWxhYmxlIC5zcG90bGlnaHQtY29udGVudCAuZXh0ZW5zaW9uIHNwYW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7IH1cbiAgICAuc3BvdGxpZ2h0LnVuYXZhaWxhYmxlIC5zcG90bGlnaHQtcHJpY2Uge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtZmFkZWQtY29sb3IpOyB9XG4gICAgLnNwb3RsaWdodC51bmF2YWlsYWJsZSAuc3BvdGxpZ2h0LWZvb3RlciAuZm9ybS1jb250cm9sIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTsgfVxuICAgIC5zcG90bGlnaHQudW5hdmFpbGFibGUgLnNwb3RsaWdodC1mb290ZXIgLmJ0bi11bmF2YWlsYWJsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHk6IDE7IH1cblxuLnNwb3RsaWdodC10bGQgLnJlc3VsdHMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuc3BvdGxpZ2h0cy0xLCAuc3BvdGxpZ2h0cy0yLCAuc3BvdGxpZ2h0cy0zLCAuc3BvdGxpZ2h0cy00LCAuc3BvdGxpZ2h0cy01IHtcbiAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTJweDsgfVxuICAgIC5zcG90bGlnaHRzLTEgLnNwb3RsaWdodC1jb2wsIC5zcG90bGlnaHRzLTIgLnNwb3RsaWdodC1jb2wsIC5zcG90bGlnaHRzLTMgLnNwb3RsaWdodC1jb2wsIC5zcG90bGlnaHRzLTQgLnNwb3RsaWdodC1jb2wsIC5zcG90bGlnaHRzLTUgLnNwb3RsaWdodC1jb2wge1xuICAgICAgcGFkZGluZzogMCAxMnB4ICFpbXBvcnRhbnQ7IH1cbiAgICAuc3BvdGxpZ2h0cy0xIC5zcG90bGlnaHQtZm9vdGVyLCAuc3BvdGxpZ2h0cy0yIC5zcG90bGlnaHQtZm9vdGVyLCAuc3BvdGxpZ2h0cy0zIC5zcG90bGlnaHQtZm9vdGVyLCAuc3BvdGxpZ2h0cy00IC5zcG90bGlnaHQtZm9vdGVyLCAuc3BvdGxpZ2h0cy01IC5zcG90bGlnaHQtZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy0yeCk7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLnNwb3RsaWdodHMge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5zcG90bGlnaHRzIC5zcG90bGlnaHQtY29sIHtcbiAgICAgIHdpZHRoOiAyNSU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnNwb3RsaWdodHMge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5zcG90bGlnaHRzIC5zcG90bGlnaHQtY29sIHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLnNwb3RsaWdodHMge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5zcG90bGlnaHRzIC5zcG90bGlnaHQtY29sIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLnNwb3RsaWdodC10bGRzIC53b3JsZC1sb2FkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDsgfVxuXG4uc3BvdGxpZ2h0LXRsZHMgLnNlY3Rpb24tYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubWVzc2FnZS1mcmVlLWRvbWFpbiB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KTsgfVxuICAubWVzc2FnZS1mcmVlLWRvbWFpbiAubWVzc2FnZS10aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tc3BhY2luZy0zeCkvMik7IH1cbiAgICAubWVzc2FnZS1mcmVlLWRvbWFpbiAubWVzc2FnZS10aXRsZSA+IGkge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cbiAgLm1lc3NhZ2UtZnJlZS1kb21haW4gLm1lc3NhZ2UtZGVzYyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAubWVzc2FnZS1mcmVlLWRvbWFpbiAubWVzc2FnZS1kZXNjIGxpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpOyB9XG4gICAgICAubWVzc2FnZS1mcmVlLWRvbWFpbiAubWVzc2FnZS1kZXNjIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTsgfVxuICAgICAgLm1lc3NhZ2UtZnJlZS1kb21haW4gLm1lc3NhZ2UtZGVzYyBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgbWluLXdpZHRoOiA3cHg7XG4gICAgICAgIGhlaWdodDogN3B4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWxpZ2h0ZXItMyk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7IH1cblxuLmxhZ29tLWRlZmF1bHQgLm1lc3NhZ2UtZnJlZS1kb21haW4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTsgfVxuICAubGFnb20tZGVmYXVsdCAubWVzc2FnZS1mcmVlLWRvbWFpbiAubWVzc2FnZS1kZXNjIC5sYWJlbC1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7IH1cblxuLnBhZ2UtY29uZmlndXJlcHJvZHVjdGRvbWFpbi5sYWdvbS1mdXR1cmlzdGljIC5wb3BvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpOyB9XG5cbi5wYWdlLWNvbmZpZ3VyZXByb2R1Y3Rkb21haW4gLm1vcmUtdGxkIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5wYWdlLWNvbmZpZ3VyZXByb2R1Y3Rkb21haW4gLnBvcG92ZXIge1xuICBtYXgtd2lkdGg6IDM4MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5wYWdlLWNvbmZpZ3VyZXByb2R1Y3Rkb21haW4gLnBvcG92ZXIge1xuICAgICAgbWF4LXdpZHRoOiAyNTBweDsgfSB9XG4gIC5wYWdlLWNvbmZpZ3VyZXByb2R1Y3Rkb21haW4gLnBvcG92ZXItYm9keSB7XG4gICAgcGFkZGluZzogMTJweDsgfVxuICAucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWluIC5wb3BvdmVyLXRsZC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA4cHg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICBtYXgtd2lkdGg6IDM4MHB4O1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cbiAgICAucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWluIC5wb3BvdmVyLXRsZC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1zY3JvbGxiYXItd2lkdGgpOyB9XG4gICAgLnBhZ2UtY29uZmlndXJlcHJvZHVjdGRvbWFpbiAucG9wb3Zlci10bGQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItdHJhY2stYmcpO1xuICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1zY3JvbGxiYXItd2lkdGgpIC8yKTsgfVxuICAgIC5wYWdlLWNvbmZpZ3VyZXByb2R1Y3Rkb21haW4gLnBvcG92ZXItdGxkLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tc2Nyb2xsYmFyLXdpZHRoKSAvMik7IH1cbiAgICAucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWluIC5wb3BvdmVyLXRsZC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhci10aHVtYi1ob3Zlci1iZyk7IH1cbiAgLnBhZ2UtY29uZmlndXJlcHJvZHVjdGRvbWFpbiAucG9wb3Zlci10bGQtdGl0bGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tc3BhY2luZy0xeCkgLyAyKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRG9hbWluIENvbmZpZ3VyYXRpb24gLSBJbmZvIEJveFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4uZG9tYWluLWluZm8ge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5kb21haW4taW5mbzpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTsgfVxuICAuZG9tYWluLWluZm8taWNvbiBzdmcge1xuICAgIGhlaWdodDogNDhweDtcbiAgICB3aWR0aDogNDhweDsgfVxuICAuZG9tYWluLWluZm8taWNvbiB7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7IH1cbiAgLmRvbWFpbi1pbmZvLWJvZHkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5kb21haW4taW5mby10b3Age1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmRvbWFpbi1pbmZvLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5kb21haW4taW5mbyAuZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTU2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5kb21haW4taW5mbyAuYnRuIHtcbiAgICBtaW4td2lkdGg6IDEwNnB4OyB9XG4gIC5kb21haW4taW5mby1ib3R0b20ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5kb21haW4taW5mby1ob3N0aW5nIGkge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7IH1cbiAgLmRvbWFpbi1pbmZvLXBlcmlvZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgICAuZG9tYWluLWluZm8tcGVyaW9kIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTsgfVxuICAuZG9tYWluLWluZm8tYWRkb25zIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSkpOyB9XG4gICAgLmRvbWFpbi1pbmZvLWFkZG9ucyAucGFuZWwtY2hlY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH1cbiAgICAgIC5kb21haW4taW5mby1hZGRvbnMgLnBhbmVsLWNoZWNrIC5scy1pbmZvLWNpcmNsZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAuZG9tYWluLWluZm8tYWRkaXRpb25hbCAuZm9ybS1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5kb21haW4taW5mby1hZGRpdGlvbmFsIC5jb2wtZm9ybS1sYWJlbCBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDhweDsgfVxuICAuZG9tYWluLWluZm8tYWRkaXRpb25hbCAuY29sLWZvcm0tbGFiZWwgLmZvcm0tY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG5cbi5wYW5lbC1sZyAuZG9tYWluLWluZm8tYWRkb25zIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5wYW5lbC1sZyAuZG9tYWluLWluZm8tYWRkb25zIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9IH1cblxuLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCAucGFuZWwgLmNoZWNrYm94LXN0eWxlZCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCAucGFuZWwgLmNoZWNrLWNvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uZG9tYWluLWluZm8tYWRkb25zLWV4dGVuZGVkIC5wYW5lbCAuY2hlY2sgPiBsYWJlbCB7XG4gIHBhZGRpbmc6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5kb21haW4taW5mby1hZGRvbnMtZXh0ZW5kZWQgLnBhbmVsIC5jaGVjay1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14bGcpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXBhcmFncmFwaC1tYXJnaW4tYm90dG9tKTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCAucGFuZWwgLmNoZWNrLXN1YnRpdGxlIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7IH1cblxuLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCAucGFuZWwgLmNoZWNrLWRlc2Mge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTsgfVxuXG4uZG9tYWluLWluZm8tYWRkb25zLWV4dGVuZGVkIC5wYW5lbCAuY2hlY2stdGl0bGUgLmxzLWluZm8tY2lyY2xlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZG9tYWluLWluZm8tYWRkb25zLWV4dGVuZGVkIC5wYW5lbCAuYnRuIHtcbiAgbWFyZ2luLXRvcDogYXV0bzsgfVxuICAuZG9tYWluLWluZm8tYWRkb25zLWV4dGVuZGVkIC5wYW5lbCAuYnRuIHNwYW46bm90KC50by1hZGQpIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5kb21haW4taW5mby1hZGRvbnMtZXh0ZW5kZWQgLnBhbmVsIC5idG4gaS5scy10cmFzaCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IHZhcigtLXVpLXBhZGRpbmctc20taCk7IH1cblxuLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCAucGFuZWwuY2hlY2tlZCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtZGVmYXVsdC1ib3JkZXIpICFpbXBvcnRhbnQ7IH1cbiAgLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCAucGFuZWwuY2hlY2tlZCAuYnRuIHtcbiAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJvcmRlcik7IH1cbiAgICAuZG9tYWluLWluZm8tYWRkb25zLWV4dGVuZGVkIC5wYW5lbC5jaGVja2VkIC5idG46aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKTsgfVxuICAgIC5kb21haW4taW5mby1hZGRvbnMtZXh0ZW5kZWQgLnBhbmVsLmNoZWNrZWQgLmJ0biBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuZG9tYWluLWluZm8tYWRkb25zLWV4dGVuZGVkIC5wYW5lbC5jaGVja2VkIC5idG4gc3Bhbi50by1hZGQge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCAucGFuZWwuY2hlY2tlZCAuYnRuIGkubHMtdHJhc2gge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCAucGFuZWw6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5kb21haW4taW5mby1hZGRvbnM6bm90KC5kb21haW4taW5mby1hZGRvbnMtZXh0ZW5kZWQpIGxhYmVsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uZG9tYWluLWluZm8tYWRkb25zOm5vdCguZG9tYWluLWluZm8tYWRkb25zLWV4dGVuZGVkKSAuY2hlY2stc3VidGl0bGUge1xuICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1pY2hlY2stc2l6ZSkgKyB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKSk7IH1cblxuLmRvbWFpbi1pbmZvLWFkZG9uczpub3QoLmRvbWFpbi1pbmZvLWFkZG9ucy1leHRlbmRlZCkgLmRvbWFpbi1hZGRvbnMtdGl0bGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFuZWwtZG9tYWluLWluZm86aGFzKC5kb21haW4taW5mby1pY29uKSAuZG9tYWluLWluZm8tYWRkb25zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoNDhweCArIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpKTsgfVxuICAuZG9tYWluLWluZm8tYWRkaXRpb25hbCB7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgKyA0OHB4ICsgdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykpOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5kb21haW4taW5mby1pY29uIHN2ZyB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4OyB9XG4gIC5kb21haW4taW5mby10aXRsZSB7XG4gICAgb3JkZXI6IDA7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzNnB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5kb21haW4taW5mby10b3Age1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5kb21haW4taW5mby10b3AgLmJ0biB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS11aS1wYWRkaW5nLXNtLXYpKTtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLXVpLXBhZGRpbmctc20taCkpOyB9XG4gICAgICAuZG9tYWluLWluZm8tdG9wIC5idG4gPiBpIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuZG9tYWluLWluZm8tdG9wIC5idG4gLmJ0bi10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5kb21haW4taW5mby10b3AgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXNwYWNpbmctMXgpKTtcbiAgICAgIG9yZGVyOiAzO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDEgYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0zMnB4IC0gdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykpOyB9XG4gICAgICAuZG9tYWluLWluZm8tdG9wIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiB1bnNldDsgfVxuICAuZG9tYWluLWluZm8tYm90dG9tIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi10b3A6IDRweDsgfVxuICAgIC5kb21haW4taW5mby1ib3R0b20gLmRvbWFpbi1pbmZvLXBlcmlvZCB7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIC5kb21haW4taW5mby1ib3R0b20gLmRvbWFpbi1pbmZvLWhvc3Rpbmcge1xuICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgb3JkZXI6IDI7IH1cbiAgICAgIC5kb21haW4taW5mby1ib3R0b20gLmRvbWFpbi1pbmZvLWhvc3RpbmcgLmxhYmVsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5kb21haW4taW5mby1hZGRpdGlvbmFsIC5jb2wtZm9ybS1sYWJlbCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLnBhbmVsLWRvbWFpbi1pbmZvOmhhcyguZG9tYWluLWluZm8taWNvbikgLmRvbWFpbi1pbmZvLWJvdHRvbSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAoMzJweCArIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpKSk7IH0gfVxuXG4vKi0tLS0tLS0tLS0tLSBDb25maWd1cmUgUHJvZHVjdCAtLS0tLS0tLS0tLS0tLSovXG4ucHJvZHVjdC1pbmZvIHtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ucGFuZWwtcmFuZ2Utc2xpZGVyIC5pcnMsXG4uc2xpZGVyLXNsaWRlIC5pcnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhlaWdodCk7IH1cbiAgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLW1pbiwgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLW1heCwgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLWZyb20sIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy10bywgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLWVkZ2UsIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1saW5lLWxlZnQsIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1saW5lLXJpZ2h0LCAucGFuZWwtcmFuZ2Utc2xpZGVyIC5pcnMtbGluZS1taWQsIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1iYXItZWRnZSxcbiAgLnNsaWRlci1zbGlkZSAuaXJzLW1pbixcbiAgLnNsaWRlci1zbGlkZSAuaXJzLW1heCxcbiAgLnNsaWRlci1zbGlkZSAuaXJzLWZyb20sXG4gIC5zbGlkZXItc2xpZGUgLmlycy10byxcbiAgLnNsaWRlci1zbGlkZSAuaXJzLWVkZ2UsXG4gIC5zbGlkZXItc2xpZGUgLmlycy1saW5lLWxlZnQsXG4gIC5zbGlkZXItc2xpZGUgLmlycy1saW5lLXJpZ2h0LFxuICAuc2xpZGVyLXNsaWRlIC5pcnMtbGluZS1taWQsXG4gIC5zbGlkZXItc2xpZGUgLmlycy1iYXItZWRnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1saW5lLFxuICAuc2xpZGVyLXNsaWRlIC5pcnMtbGluZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogdmFyKC0tc3BhY2luZy0xeCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1yYW5nZS1zbGlkZXItaGVpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yYW5nZS1zbGlkZXItYmcpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhbmdlLXNsaWRlci1ib3JkZXItcmFkaXVzKTtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1iYXIsXG4gIC5zbGlkZXItc2xpZGUgLmlycy1iYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IHZhcigtLXNwYWNpbmctMXgpO1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IHZhcigtLXJhbmdlLXNsaWRlci1oZWlnaHQpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXJhbmdlLXNsaWRlci1maWxsLWJnKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYW5nZS1zbGlkZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cbiAgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLXNsaWRlcixcbiAgLnNsaWRlci1zbGlkZSAuaXJzLXNsaWRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogdmFyKC0tcmFuZ2Utc2xpZGVyLWhhbmRsZS1oZWlnaHQpO1xuICAgIHdpZHRoOiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLXdpZHRoKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWJveC1zaGFkb3cpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXJhbmdlLXNsaWRlci1oYW5kbGUtYmcpO1xuICAgIGJvcmRlcjogdmFyKC0tcmFuZ2Utc2xpZGVyLWhhbmRsZS1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhbmdlLXNsaWRlci1oYW5kbGUtYm9yZGVyLXJhZGl1cyk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTsgfVxuICAgIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1zbGlkZXIgLmFjdGl2ZSwgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLXNsaWRlcjphY3RpdmUsIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1zbGlkZXI6Zm9jdXMsIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1zbGlkZXI6aG92ZXIsXG4gICAgLnNsaWRlci1zbGlkZSAuaXJzLXNsaWRlciAuYWN0aXZlLFxuICAgIC5zbGlkZXItc2xpZGUgLmlycy1zbGlkZXI6YWN0aXZlLFxuICAgIC5zbGlkZXItc2xpZGUgLmlycy1zbGlkZXI6Zm9jdXMsXG4gICAgLnNsaWRlci1zbGlkZSAuaXJzLXNsaWRlcjpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhvdmVyLXNoYWRvdyk7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhvdmVyLWJnKTtcbiAgICAgIGJvcmRlcjogdmFyKC0tcmFuZ2Utc2xpZGVyLWhhbmRsZS1ob3Zlci1ib3JkZXIpOyB9XG4gICAgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLXNsaWRlcjpiZWZvcmUsXG4gICAgLnNsaWRlci1zbGlkZSAuaXJzLXNsaWRlcjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDYwJTtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDQ1JTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1zbGlkZXI6YWZ0ZXIsXG4gICAgLnNsaWRlci1zbGlkZSAuaXJzLXNsaWRlcjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogNjAlO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIHRvcDogNDklO1xuICAgICAgbGVmdDogNTUlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1ncmlkLXBvbCxcbiAgLnNsaWRlci1zbGlkZSAuaXJzLWdyaWQtcG9sIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTsgfVxuICAgIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1ncmlkLXBvbC5zbWFsbCxcbiAgICAuc2xpZGVyLXNsaWRlIC5pcnMtZ3JpZC1wb2wuc21hbGwge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1ncmlkLXRleHQsXG4gIC5zbGlkZXItc2xpZGUgLmlycy1ncmlkLXRleHQge1xuICAgIGJvdHRvbTogMDtcbiAgICBjb2xvcjogdmFyKC0tcmFuZ2Utc2xpZGVyLXZhbHVlLXNtLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLXJhbmdlLXNsaWRlci12YWx1ZS1zbS1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1yYW5nZS1zbGlkZXItdmFsdWUtc20tbGluZS1oZWlnaHQpOyB9XG4gIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1mcm9tLCAucGFuZWwtcmFuZ2Utc2xpZGVyIC5pcnMtdG8sIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy1zaW5nbGUsXG4gIC5zbGlkZXItc2xpZGUgLmlycy1mcm9tLFxuICAuc2xpZGVyLXNsaWRlIC5pcnMtdG8sXG4gIC5zbGlkZXItc2xpZGUgLmlycy1zaW5nbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoLTEgKiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhlaWdodCkgLSA4cHgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IHZhcigtLXJhbmdlLXNsaWRlci1oYW5kbGUtaGVpZ2h0KTtcbiAgICBtaW4td2lkdGg6IHZhcigtLXJhbmdlLXNsaWRlci1oYW5kbGUtd2lkdGgpO1xuICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXJhbmdlLXNsaWRlci12YWx1ZS1iZyk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFuZ2Utc2xpZGVyLWhhbmRsZS1ib3JkZXItcmFkaXVzKTtcbiAgICBjb2xvcjogdmFyKC0tcmFuZ2Utc2xpZGVyLXZhbHVlLWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLXJhbmdlLXNsaWRlci12YWx1ZS1mb250LXNpemUpOyB9XG4gICAgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLWZyb206YWZ0ZXIsIC5wYW5lbC1yYW5nZS1zbGlkZXIgLmlycy10bzphZnRlciwgLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLXNpbmdsZTphZnRlcixcbiAgICAuc2xpZGVyLXNsaWRlIC5pcnMtZnJvbTphZnRlcixcbiAgICAuc2xpZGVyLXNsaWRlIC5pcnMtdG86YWZ0ZXIsXG4gICAgLnNsaWRlci1zbGlkZSAuaXJzLXNpbmdsZTphZnRlciB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1yYW5nZS1zbGlkZXItdmFsdWUtYmcpOyB9XG5cbi5vdmVybGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDEwMDE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4ucHJvZHVjdC1jb25maWctaW5mbyAucGFuZWwtYm9keSBoMiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4bGcpOyB9XG5cbi5wcm9kdWN0LWNvbmZpZ3VyYWJsZS1vcHRpb25zIC5saWNlbnNlT3B0aW9uSW5mbyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5wcm9kdWN0LWNvbmZpZ3VyYWJsZS1vcHRpb25zIC5saWNlbnNlT3B0aW9uSW5mbzpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWxpbmstaG92ZXItY29sb3IpOyB9XG5cbi8qIDpyb290e1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAubW9kYWwge1xyXG4gICAgICAgICAgICAmLXVybCxcclxuICAgICAgICAgICAgJi1sb2NhdGlvbiB7XHJcbiAgICAgICAgICAgICAgICAtLWZvbnQtc2l6ZS1oNTogICAgICAgdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgLS1saW5lLWhlaWdodC1oNTogICAgIHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiAqL1xuOnJvb3Qge1xuICAtLW1vZGFsLXNjYWxlOiAgICAgICAgICAgICAgICAgIDEuMDg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgLS1tb2RhbC1zY2FsZTogICAgICAgICAgICAgIDEuMDQ7IH0gfVxuXG4uc3RvcmUtY2hvb3NlLWRvbWFpbiB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteGxnKTsgfVxuICAuc3RvcmUtY2hvb3NlLWRvbWFpbiAuZG9tYWluLXZhbGlkYXRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcGFkZGluZzogMTJweCAwIDEycHggMzJweDsgfVxuICAgIC5zdG9yZS1jaG9vc2UtZG9tYWluIC5kb21haW4tdmFsaWRhdGlvbiA+IGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTsgfVxuICAuc3RvcmUtY2hvb3NlLWRvbWFpbiAuc3RvcmUtZG9tYWluLWZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnN0b3JlLWNob29zZS1kb21haW4gI3N1Yi1kb21haW4gLnN0b3JlLWRvbWFpbi1mb3JtID4gZGl2IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuc3RvcmUtY2hvb3NlLWRvbWFpbiAjc3ViLWRvbWFpbiAuc3RvcmUtZG9tYWluLWZvcm0gPiBkaXYgZGl2OmZpcnN0LWNoaWxkLCAuc3RvcmUtY2hvb3NlLWRvbWFpbiAjc3ViLWRvbWFpbiAuc3RvcmUtZG9tYWluLWZvcm0gPiBkaXYgZGl2Omxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDQ5JTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuc3RvcmUtY2hvb3NlLWRvbWFpbiAjc3ViLWRvbWFpbiAuc3RvcmUtZG9tYWluLWZvcm0gPiBkaXYge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgLnN0b3JlLWNob29zZS1kb21haW4gI3N1Yi1kb21haW4gLnN0b3JlLWRvbWFpbi1mb3JtID4gZGl2ID4gZGl2OmZpcnN0LWNoaWxkLCAuc3RvcmUtY2hvb3NlLWRvbWFpbiAjc3ViLWRvbWFpbiAuc3RvcmUtZG9tYWluLWZvcm0gPiBkaXYgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuc3RvcmUtY2hvb3NlLWRvbWFpbiAjc3ViLWRvbWFpbiAuc3RvcmUtZG9tYWluLWZvcm0gPiBkaXYgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTN4KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDsgfSB9XG5cbi5zdG9yZS1hY3Rpb25zIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTsgfVxuICAuc3RvcmUtYWN0aW9ucyAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OS45OHB4KSB7XG4gIC5zdG9yZS1hY3Rpb25zIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7IH0gfVxuXG4uc3RvcmUtb3JkZXItY29udGFpbmVyIC5wcm9tby1zbGlkZXItYWN0aW9ucyBmb3JtIC5idG4ge1xuICBoZWlnaHQ6IHVuc2V0O1xuICBtaW4taGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpOyB9XG4gIC5zdG9yZS1vcmRlci1jb250YWluZXIgLnByb21vLXNsaWRlci1hY3Rpb25zIGZvcm0gLmJ0biAuc3Bhbi11cHNlbGwge1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxuLnN0b3JlLW9yZGVyLWNvbnRhaW5lciAucGF5bWVudC10ZXJtIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy00eCk7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNtb2RhbFRlc3RSZXN1bHRzIHtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctNHgpICFpbXBvcnRhbnQ7IH0gfVxuXG4jbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtZGlhbG9nIHtcbiAgd2lkdGg6IDExMDBweDsgfVxuXG4jbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLWhlYWRlciBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpOyB9XG4gICAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLWhlYWRlciBpLmxtLWNsb3NlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTsgfVxuXG4jbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtdXJsLCAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtbG9jYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNSk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC11cmwsICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1sb2NhdGlvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtdXJsLCAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtbG9jYXRpb24ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7IH0gfVxuXG4jbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctNXgpIHZhcigtLXNwYWNpbmctNngpIHZhcigtLXNwYWNpbmctNXgpIHZhcigtLXNwYWNpbmctNngpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMngpIHZhcigtLXNwYWNpbmctMngpIHZhcigtLXNwYWNpbmctM3gpIHZhcigtLXNwYWNpbmctMngpOyB9IH1cbiAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLWJvZHktaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTZweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLWJvZHktaGVhZGVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMge1xuICAgIHBhZGRpbmc6IDM2cHggMDsgfSB9XG5cbiNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzIC5jb2wtc20tMTIge1xuICBwYWRkaW5nOiAxMnB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzIC5jb2wtc20tMTIge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCkgMTJweDsgfSB9XG5cbiNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTZ4KSB2YXIoLS1zcGFjaW5nLTN4KTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveCB7XG4gICAgICBwYWRkaW5nOiAxOHB4IHZhcigtLXNwYWNpbmctMngpOyB9IH1cbiAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94LS1wb3NpdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTQpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJyYW5kLXN1Y2Nlc3MtbGlnaHRlci0yKTsgfVxuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveC0tcG9zaXRpdmUgLm1ldHJpYy1pY29uIC5scyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94LS1wb3NpdGl2ZSAubWV0cmljLWljb24gLmxzLmxzLWV4Y2xhbWF0aW9uLWNpcmNsZSwgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94LS1wb3NpdGl2ZSAubWV0cmljLWljb24gLmxzLmxzLWluZm8tY2lyY2xlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtcmVzdWx0cy1ib3gtLWluZm8ge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci00KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItMik7IH1cbiAgICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtcmVzdWx0cy1ib3gtLWluZm8gLm1ldHJpYy1pY29uIGltZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94LS1pbmZvIC5tZXRyaWMtaWNvbiAubHMge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtd2FybmluZy1jb2xvcik7IH1cbiAgICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveC0taW5mbyAubWV0cmljLWljb24gLmxzLmxzLWV4Y2xhbWF0aW9uLWNpcmNsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94LS1wb3NpdGl2ZSAucHVsc2UtdGV4dCwgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94LS1pbmZvIC5wdWxzZS10ZXh0IHtcbiAgICBhbmltYXRpb246IHVuc2V0OyB9XG4gICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveC0tbmVnYXRpdmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveC0tbmVnYXRpdmU6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgaW5zZXQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMik7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTsgfVxuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveC0tbmVnYXRpdmUgLm1ldHJpYy1pY29uIGltZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94LS1uZWdhdGl2ZSAubWV0cmljLWljb24gLmxzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cbiAgICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveC0tbmVnYXRpdmUgLm1ldHJpYy1pY29uIC5scy5scy1pbmZvLWNpcmNsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtcmVzdWx0cy1ib3gtLW5lZ2F0aXZlID4gKiB7XG4gICAgICB6LWluZGV4OiAxMDsgfVxuICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtcmVzdWx0cy1ib3ggLm1ldHJpYy1pY29uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxMnB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtcmVzdWx0cy1ib3ggLm1ldHJpYy1pY29uIHtcbiAgICAgICAgZ2FwOiA4cHg7IH0gfVxuICAgICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1yZXN1bHRzLWJveCAubWV0cmljLWljb24gaSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94IHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg1KTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpOyB9IH1cbiAgICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtcmVzdWx0cy1ib3ggc3Bhbi5tZXRyaWMtdmFsdWUge1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgzKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICAgI21vZGFsVGVzdFJlc3VsdHMgLm1vZGFsLXJlc3VsdHMtYm94IHNwYW4ubWV0cmljLXZhbHVlIHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eGxnKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhsZyk7IH0gfVxuICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtcmVzdWx0cy1ib3ggaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAjbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtcmVzdWx0cy1ib3ggaDMge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7IH0gfVxuXG4jbW9kYWxUZXN0UmVzdWx0cyAubW9kYWwtYWN0aW9ucyBpIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICNtb2RhbFRlc3RSZXN1bHRzIC5tb2RhbC1hY3Rpb25zIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDEycHg7IH0gfVxuXG4ubG9hZGVyLWNpcmNsZS52aXNpYmxlIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlOyB9XG5cbi5wdWxzZS10ZXh0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlLXRleHQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogM3M7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7IH1cblxuQGtleWZyYW1lcyBwdWxzZS10ZXh0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTsgfVxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblByb21vXHJcbjEuIEJhbm5lciBEZWZhdWx0XHJcbjIuIEJhbm5lciBTbGltXHJcbjMuIENhcnRcclxuNC4gT3RoZXJzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuMS4gUHJvbW8gLSBCYW5uZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb21vLWJhbm5lciB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nOiAxNXB4IDEwcHggMjBweCAxMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XG4gIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG4gIC5wcm9tby1iYW5uZXItcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC5wcm9tby1iYW5uZXIgLmljb24ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMCAyMHB4IDAgMDsgfVxuICAgIC5wcm9tby1iYW5uZXIgLmljb24tbGVmdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wcm9tby1iYW5uZXIgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4OyB9XG4gIC5wcm9tby1iYW5uZXIgaDMge1xuICAgIG1hcmdpbjogMDsgfVxuICAucHJvbW8tYmFubmVyIHAge1xuICAgIG1hcmdpbjogNXB4IDA7IH1cbiAgLnByb21vLWJhbm5lciB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmb250LXNpemU6IDAuOTJlbTsgfVxuICAgIC5wcm9tby1iYW5uZXIgdWwgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gIC5wcm9tby1iYW5uZXIgLmZhOm5vdCguZmEtc3Bpbm5lcikge1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgY29sb3I6ICM5MWM1OTA7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnByb21vLWJhbm5lciB1bCBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvbW8tYmFubmVyIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLnByb21vLWJhbm5lciAuaWNvbi1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDE1NXB4OyB9XG4gIC5wcm9tby1iYW5uZXIgLmNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAxODVweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucHJvbW8tYmFubmVyIGZvcm0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xuICAucHJvbW8tYmFubmVyIC5pY29uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4yLiBQcm9tbyAtIEJhbm5lciBTbGltXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5wcm9tby1iYW5uZXItc2xpbSB7XG4gIHBhZGRpbmc6IDEwcHg7IH1cbiAgLnByb21vLWJhbm5lci1zbGltIC5pY29uLWxlZnQge1xuICAgIHdpZHRoOiA4NXB4OyB9XG4gIC5wcm9tby1iYW5uZXItc2xpbSAuY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDExMHB4OyB9XG4gIC5wcm9tby1iYW5uZXItc2xpbSBoMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtYmFzZSk7IH1cbiAgLnByb21vLWJhbm5lci1zbGltIGg0IHtcbiAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgLnByb21vLWJhbm5lci1zbGltIC5idG4ge1xuICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICBwYWRkaW5nOiA2cHggMjBweDsgfVxuICAucHJvbW8tYmFubmVyLXNsaW0ud2VlYmx5IC5pY29uLWxlZnQge1xuICAgIHdpZHRoOiAxNjBweDsgfVxuICAucHJvbW8tYmFubmVyLXNsaW0ud2VlYmx5IC5jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMTg1cHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5wcm9tby1iYW5uZXItc2xpbSAuaWNvbi1sZWZ0IHtcbiAgICB3aWR0aDogODVweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAucHJvbW8tYmFubmVyLXNsaW0gLmljb24tbGVmdCBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAucHJvbW8tYmFubmVyLXNsaW0gLmNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAucHJvbW8tYmFubmVyLXNsaW0gZm9ybSAuYnRuIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMzJweDtcbiAgICB3aGl0ZS1zcGFjZTogdW5zZXQ7IH1cbiAgLnByb21vLWJhbm5lci1zbGltIGZvcm0gLmJ0bixcbiAgLnByb21vLWJhbm5lci1zbGltIGZvcm0gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wcm9tby1iYW5uZXItc2xpbSBmb3JtIC5idG4gKyAuYnRuLFxuICAucHJvbW8tYmFubmVyLXNsaW0gZm9ybSAuYnRuICsgYSxcbiAgLnByb21vLWJhbm5lci1zbGltIGZvcm0gYSArIGEsXG4gIC5wcm9tby1iYW5uZXItc2xpbSBmb3JtIGEgKyAuYnRuIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpOyB9IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4zLiBQcm9tbyAtIENhcnRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnByb21vLWNhcnQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzAwNTQ4YTsgfVxuICAucHJvbW8tY2FydDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAucHJvbW8tY2FydDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkOyB9XG4gIC5wcm9tby1jYXJ0IC5idG4tYWRkIHtcbiAgICBwYWRkaW5nOiA3cHggMThweDtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OGE7IH1cbiAgLnByb21vLWNhcnQgaDMge1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLnByb21vLWNhcnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMTdweDsgfVxuICAucHJvbW8tY2FydCAucHJpY2luZyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnByb21vLWNhcnQgLnByaWNpbmcgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucHJvbW8tY2FydCBhIHtcbiAgICBjb2xvcjogIzMzOTlGRjsgfVxuICAucHJvbW8tY2FydCB1bCBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvbW8tY2FydCAuaWNvbi1sZWZ0IHtcbiAgICB3aWR0aDogMTIwcHg7IH1cbiAgLnByb21vLWNhcnQgLmNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAxNDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wcm9tby1jYXJ0IC5wcmljaW5nIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7IH0gfVxuXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbjQuIFByb21vIC0gTGFzdCBDaGFuY2VcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xuLnBhbmVsLW1jLXNzbyAuaWNvbi1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA0MDBweDsgfVxuICAucGFuZWwtbWMtc3NvIC5pY29uLWNvbnRhaW5lciBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxNzVweDsgfVxuXG4uY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyA+IC5jb2wtc20tNiB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93ID4gLmNvbC1zbS02OmZpcnN0LW9mLXR5cGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgZm9ybSB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyB9XG5cbi5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0biB7XG4gICAgbWFyZ2luOiA4cHggMCAwIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ib3JkZXIpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuLmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlcik7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlcik7IH1cbiAgICAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgLm9wZW4gPiAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlcik7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMsXG4gICAgICAub3BlbiA+IC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmhvdmVyLFxuICAgICAgLm9wZW4gPiAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyxcbiAgICAgIC5vcGVuID4gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAgIC5vcGVuID4gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGUuZm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSkge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6aG92ZXIsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZS5mb2N1cywgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bi5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG4uYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bjphY3RpdmUsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG4uYWN0aXZlLFxuICAgIC5vcGVuID4gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bi5kcm9wZG93bi10b2dnbGUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG4uZGlzYWJsZWQ6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bltkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0biB7XG4gICAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bi5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG5bZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdixcbiAgICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAuY2xpZW50LWhvbWUtcGFuZWxzIC5wYW5lbC1tYy1zc28gLnJvdyBzZWxlY3QgKyAuYnRuIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpOyB9XG4gICAgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bi5kaXNhYmxlZDpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSwgLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc2VsZWN0ICsgLmJ0bltkaXNhYmxlZF06bm90KC5idG4tcHJpbWFyeSk6bm90KC5idG4tZGVmYXVsdCkge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHk6IDAuNjsgfVxuICAgIC5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IHNlbGVjdCArIC5idG4gLmJhZGdlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7IH1cblxuLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgLmxvYWRpbmcge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmNsaWVudC1ob21lLXBhbmVscyAucGFuZWwtbWMtc3NvIC5yb3cgc21hbGwge1xuICBtYXJnaW4tdG9wOiAxMnB4OyB9XG5cbi5jbGllbnQtaG9tZS1wYW5lbHMgLnBhbmVsLW1jLXNzbyAucm93IC5sb2dpbi1mZWVkYmFjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tbyAtIExhc3QgQ2hhbmNlIG9uIENoZWNrb3V0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cbi5tYy1wcm9tb3MgLm1jLXByb21vIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubWMtcHJvbW9zIC5tYy1wcm9tbzpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkgKyA0MHB4KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pICsgMTg4cHgpOyB9XG4gICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuZXhwYW5kZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogOHB4IDhweCA4cHggMTZweDtcbiAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY29udGVudCB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIDAgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkgMDsgfVxuICAgICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY29udGVudCAuaGVhZGxpbmUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7IH1cbiAgICAgIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmNvbnRlbnQgLnRhZ2xpbmUge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTsgfVxuICAgIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDAgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkgMDsgfVxuICAgICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ib3JkZXIpOyB9XG4gICAgICAgIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpmb2N1cywgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkOmZvY3VzLXZpc2libGUsIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZC5mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gICAgICAgIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gICAgICAgIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICAgICAgIC5vcGVuID4gLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlcik7IH1cbiAgICAgICAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmhvdmVyLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUuZm9jdXMsIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIsIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZS5mb2N1cyxcbiAgICAgICAgICAub3BlbiA+IC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5kcm9wZG93bi10b2dnbGU6aG92ZXIsXG4gICAgICAgICAgLm9wZW4gPiAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLFxuICAgICAgICAgIC5vcGVuID4gLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuICAgICAgICAgIC5vcGVuID4gLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmRyb3Bkb3duLXRvZ2dsZS5mb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpOyB9XG4gICAgICAgIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOmZvY3VzLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6Zm9jdXMtdmlzaWJsZSwgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpLmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAgIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAgICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpob3ZlciwgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkLmJ0bi1saW5rOm5vdCguYnRuLW91dGxpbmUpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLmZvY3VzLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmhvdmVyLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQuYnRuLWxpbms6bm90KC5idG4tb3V0bGluZSk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZC5idG4tbGluazpub3QoLmJ0bi1vdXRsaW5lKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUuZm9jdXMge1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQ6YWN0aXZlLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQuYWN0aXZlLFxuICAgICAgICAub3BlbiA+IC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgICAgICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZFtkaXNhYmxlZF06bm90KC5idG4td2FybmluZyk6bm90KC5idG4tc3VjY2Vzcyk6bm90KC5idG4tZGFuZ2VyKTpub3QoLmJ0bi1pbmZvKTpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKSxcbiAgICAgICAgZmllbGRzZXRbZGlzYWJsZWRdIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZCB7XG4gICAgICAgICAgb3BhY2l0eTogdmFyKC0tYnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKTtcbiAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAgICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkLmRpc2FibGVkOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCkgLmxvYWRlciAuc3Bpbm5lciA+IGRpdiwgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkW2Rpc2FibGVkXTpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpIC5sb2FkZXIgLnNwaW5uZXIgPiBkaXYsXG4gICAgICAgICAgZmllbGRzZXRbZGlzYWJsZWRdIC5tYy1wcm9tb3MgLm1jLXByb21vIC5oZWFkZXIgLmN0YSAuYnRuLWFkZCAubG9hZGVyIC5zcGlubmVyID4gZGl2IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvcik7IH1cbiAgICAgICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciAuY3RhIC5idG4tYWRkLmRpc2FibGVkOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpLCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGRbZGlzYWJsZWRdOm5vdCguYnRuLXByaW1hcnkpOm5vdCguYnRuLWRlZmF1bHQpIHtcbiAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgIG9wYWNpdHk6IDAuNjsgfVxuICAgICAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQgLmJhZGdlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTsgfVxuICAgICAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLmJ0bi1hZGQgLmFycm93IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5jdGEgLnByaWNlIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXhzLWZvbnQtc2l6ZSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS14cy1saW5lLWhlaWdodCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS14cy1mb250LXdlaWdodCk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvUDogLTM2cHg7XG4gICAgICByaWdodDogLTE2cHg7XG4gICAgICBoZWlnaHQ6IDE2MnB4O1xuICAgICAgd2lkdGg6IDE4OHB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50OyB9XG4gICAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5pY29uIC5wcm9tby1zbGlkZXItaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuYm9keSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7IH1cbiAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuYm9keSA+IHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLm1jLXByb21vcyAubWMtcHJvbW8gLmJvZHkgPiB1bCA+IGxpIHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuYm9keSA+IHVsID4gbGkgPiBpIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpOyB9XG5cbi5sYWdvbS1kZXB0aCAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyLFxuLmxhZ29tLWRlZmF1bHQgLm1jLXByb21vcyAubWMtcHJvbW8gLmhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZ3JhZGllbnQtaCk7IH1cblxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tbyAtIFByb2R1Y3QgRGV0YWlsc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXG4ubWMtcHJvbW8tbG9naW4gLmNvbnRlbnQsIC5tYy1wcm9tby1tYW5hZ2UgLmNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLm1jLXByb21vLWxvZ2luIC5jb250ZW50ID4gZGl2LCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50ID4gZGl2IHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTsgfVxuICAgIC5tYy1wcm9tby1sb2dpbiAuY29udGVudCA+IGRpdiAucGFuZWwtdGl0bGUsIC5tYy1wcm9tby1tYW5hZ2UgLmNvbnRlbnQgPiBkaXYgLnBhbmVsLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7IH1cbiAgICAubWMtcHJvbW8tbG9naW4gLmNvbnRlbnQgPiBkaXYgLmFjdGlvbnMgLmJ0biwgLm1jLXByb21vLW1hbmFnZSAuY29udGVudCA+IGRpdiAuYWN0aW9ucyAuYnRuIHtcbiAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXNtKTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctc20tdikgdmFyKC0tdWktcGFkZGluZy1zbS1oKTsgfVxuICAgIC5tYy1wcm9tby1sb2dpbiAuY29udGVudCA+IGRpdiAuYWN0aW9ucyAuYnRuLXNlcnZpY2Utc3NvLCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50ID4gZGl2IC5hY3Rpb25zIC5idG4tc2VydmljZS1zc28ge1xuICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWJnKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYm9yZGVyKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxuICAgICAgLm1jLXByb21vLWxvZ2luIC5jb250ZW50ID4gZGl2IC5hY3Rpb25zIC5idG4tc2VydmljZS1zc286aG92ZXIsIC5tYy1wcm9tby1tYW5hZ2UgLmNvbnRlbnQgPiBkaXYgLmFjdGlvbnMgLmJ0bi1zZXJ2aWNlLXNzbzpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1ib3JkZXIpOyB9XG4gIC5tYy1wcm9tby1sb2dpbiAuY29udGVudCAubG9nbywgLm1jLXByb21vLW1hbmFnZSAuY29udGVudCAubG9nbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAyMzJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5tYy1wcm9tby1sb2dpbiAuY29udGVudCAubG9nbyBpbWcsIC5tYy1wcm9tby1tYW5hZ2UgLmNvbnRlbnQgLmxvZ28gaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTUwcHg7IH1cbiAgICAubWMtcHJvbW8tbG9naW4gLmNvbnRlbnQgLmxvZ28gc3ZnLCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50IC5sb2dvIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAxMXB4O1xuICAgICAgd2lkdGg6IDIzMnB4O1xuICAgICAgaGVpZ2h0OiAyMDBweDsgfVxuICAubWMtcHJvbW8tbG9naW4gLmNvbnRlbnQgLnBhbmVsLWhlYWRpbmcsXG4gIC5tYy1wcm9tby1sb2dpbiAuY29udGVudCAucGFuZWwtYm9keSwgLm1jLXByb21vLW1hbmFnZSAuY29udGVudCAucGFuZWwtaGVhZGluZyxcbiAgLm1jLXByb21vLW1hbmFnZSAuY29udGVudCAucGFuZWwtYm9keSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtaW4taGVpZ2h0OiBhdXRvOyB9XG4gIC5tYy1wcm9tby1sb2dpbiAuY29udGVudCAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1ib2R5LCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWJvZHkge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7IH1cbiAgICAubWMtcHJvbW9zIC5tYy1wcm9tbyAuaGVhZGVyIC5pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1jLXByb21vLWxvZ2luIC5jb250ZW50IC5sb2dvLCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50IC5sb2dvIHtcbiAgICB3aWR0aDogMTQycHg7IH1cbiAgICAubWMtcHJvbW8tbG9naW4gLmNvbnRlbnQgLmxvZ28gc3ZnLCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50IC5sb2dvIHN2ZyB7XG4gICAgICB0b3A6IDBweDtcbiAgICAgIHdpZHRoOiAxNDJweDtcbiAgICAgIGhlaWdodDogMTEzcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDc5Ljk4cHgpIHtcbiAgLm1jLXByb21vLWxvZ2luIC5jb250ZW50LCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5tYy1wcm9tby1sb2dpbiAuY29udGVudCAubG9nbywgLm1jLXByb21vLW1hbmFnZSAuY29udGVudCAubG9nbyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBoZWlnaHQ6IDExM3B4OyB9XG4gICAgICAubWMtcHJvbW8tbG9naW4gLmNvbnRlbnQgLmxvZ28gc3ZnLCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50IC5sb2dvIHN2ZyB7XG4gICAgICAgIGxlZnQ6IDA7IH1cbiAgICAubWMtcHJvbW8tbG9naW4gLmNvbnRlbnQgLnBhbmVsLWhlYWRpbmcgLnBhbmVsLXRpdGxlLCAubWMtcHJvbW8tbWFuYWdlIC5jb250ZW50IC5wYW5lbC1oZWFkaW5nIC5wYW5lbC10aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubWMtcHJvbW8tbG9naW4gLmNvbnRlbnQgLnBhbmVsLWJvZHksIC5tYy1wcm9tby1tYW5hZ2UgLmNvbnRlbnQgLnBhbmVsLWJvZHkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLyogTWFya2V0IENvbm5lY3QgTWFuYWdlIEJveGVzICovXG4uc2VjdGlvbi1ob29rLW91dHB1dCAjbWMtcHJvbW8td2lkZ2V0cyAubWMtcHJvbW8tbG9naW4gLnBhbmVsLWJvZHkgLmxvZ2luLWZlZWRiYWNrLFxuLnNlY3Rpb24taG9vay1vdXRwdXQgI21jLXByb21vLXdpZGdldHMgLm1jLXByb21vLW1hbmFnZSAucGFuZWwtYm9keSAubG9naW4tZmVlZGJhY2sge1xuICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuc2VjdGlvbi1ob29rLW91dHB1dCAjbWMtcHJvbW8td2lkZ2V0cyAubWMtcHJvbW8tbG9naW4gLnBhbmVsLWJvZHkgLmxvZ2luLWZlZWRiYWNrOjpiZWZvcmUsXG4gIC5zZWN0aW9uLWhvb2stb3V0cHV0ICNtYy1wcm9tby13aWRnZXRzIC5tYy1wcm9tby1tYW5hZ2UgLnBhbmVsLWJvZHkgLmxvZ2luLWZlZWRiYWNrOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTczXCI7XG4gICAgZm9udC1mYW1pbHk6ICdsYWdvbS1tZWRpdW0taWNvbnMnICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XG5cbmJvZHkubGFnb20tZnV0dXJpc3RpYyxcbmJvZHkubGFnb20tZnV0dXJpc3RpYy5wYWdlLXR5cGUtZnVsbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWZ1dHVyaXN0aWMtYmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLnBhY2thZ2UsXG4ubGFnb20tZnV0dXJpc3RpYyAuZHJvcGRvd24tbWVudSxcbi5sYWdvbS1mdXR1cmlzdGljIC5ib3R0b20tYWN0aW9uLXN0aWNreSxcbi5sYWdvbS1mdXR1cmlzdGljIC5zZWxlY3RpemUtZHJvcGRvd24sXG4ubGFnb20tZnV0dXJpc3RpYyAuY29va2llLWJhcl9fY29udGVudCxcbi5sYWdvbS1mdXR1cmlzdGljIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSxcbi5sYWdvbS1mdXR1cmlzdGljIC5zaXRlLnNpdGUtbWFya2V0Z29vIC5zZWN0aW9uLXN0ZXBzIC5mZWF0dXJlIHtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxhZ29tLWZ1dHVyaXN0aWMubGFnb20tbGF5b3V0LXRvcC5zY3JvbGwtdXAgLnN0aWNreS1uYXZpZ2F0aW9uLFxuICAubGFnb20tZnV0dXJpc3RpYy5sYWdvbS1sYXlvdXQtdG9wLnNjcm9sbC1kb3duIC5zdGlja3ktbmF2aWdhdGlvbiB7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stb3ZlcmxheS1zaGFkb3cpO1xuICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAubGFnb20tZnV0dXJpc3RpYy5sYWdvbS1sYXlvdXQtdG9wLnNjcm9sbC11cCAuc3RpY2t5LW5hdmlnYXRpb246OmFmdGVyLFxuICAgIC5sYWdvbS1mdXR1cmlzdGljLmxhZ29tLWxheW91dC10b3Auc2Nyb2xsLWRvd24gLnN0aWNreS1uYXZpZ2F0aW9uOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3RpY2t5LW1lbnUtYmcpO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB6LWluZGV4OiAtMTsgfSB9XG5cbi5sYWdvbS1mdXR1cmlzdGljIC5zaXRlLnNpdGUtbWFya2V0Z29vIC5zZWN0aW9uLXRpbGVzIC50aWxlLFxuLmxhZ29tLWZ1dHVyaXN0aWMgLnNpdGUuc2l0ZS1pbmRleCAuc2VjdGlvbi1zbGlkZXItYnRuIC50aWxlLFxuLmxhZ29tLWZ1dHVyaXN0aWMgLnNpdGUuc2l0ZS1tYXJrZXRnb28gLnNlY3Rpb24tc3RlcHMgLmZlYXR1cmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1vdmVybGF5LWJnLTIpOyB9XG5cbi5sYWdvbS1mdXR1cmlzdGljIC5pbWctY29udGFpbmVyIGltZyxcbi5sYWdvbS1mdXR1cmlzdGljIC5sb2dvcyAubG9nbyBpbWcsXG4ubGFnb20tZnV0dXJpc3RpYyAuY2hlY2staWNvbiAuc3ZnLWljb24sXG4ubGFnb20tZnV0dXJpc3RpYyAuYWRkb24tcHJvbW8tY29udGFpbmVyIC5sb2dvIGltZyxcbi5sYWdvbS1mdXR1cmlzdGljIC5tYy1wcm9tby1sb2dpbiAubG9nbyBpbWcge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpOyB9XG5cbi5sYWdvbS1mdXR1cmlzdGljICNzdHJpcGVFbGVtZW50cyAuZm9ybS1jb250cm9sIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAjc3RyaXBlRWxlbWVudHMgKyBkaXYgKyAjbmV3Q2FyZFNhdmVTZXR0aW5ncyAuZm9ybS1ncm91cCBpbnB1dCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLnN2Zy1ncmFwaGljLXdoaXRlLnN2Zy1ncmFwaGljLXN0cm9rZS1ncmF5IHtcbiAgc3Ryb2tlOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy13aGl0ZSk7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLnN2Zy1ncmFwaGljLW9uLWJvZHkuc3ZnLWdyYXBoaWMtcHJpbWFyeSB7XG4gIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLXdoaXRlKTsgfVxuICAubGFnb20tZnV0dXJpc3RpYyAuc3ZnLWdyYXBoaWMtb24tYm9keS5zdmctZ3JhcGhpYy1wcmltYXJ5LnN2Zy1ncmFwaGljLXN0cm9rZSwgLmxhZ29tLWZ1dHVyaXN0aWMgLnN2Zy1ncmFwaGljLW9uLWJvZHkuc3ZnLWdyYXBoaWMtcHJpbWFyeS5zdmctZ3JhcGhpYy1zdHJva2UtMiwgLmxhZ29tLWZ1dHVyaXN0aWMgLnN2Zy1ncmFwaGljLW9uLWJvZHkuc3ZnLWdyYXBoaWMtcHJpbWFyeS5zdmctZ3JhcGhpYy1zdHJva2UtNCB7XG4gICAgc3Ryb2tlOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy13aGl0ZSk7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLnN2Zy1ncmFwaGljLW9uLWJvZHkuc3ZnLWdyYXBoaWMtc3Ryb2tlLXAge1xuICBzdHJva2U6IHZhcigtLXN2Zy1ncmFwaGljLWJnLXdoaXRlKTsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuc3ZnLWdyYXBoaWMtb24tc2VhcmNoLnN2Zy1ncmFwaGljLWZhZGVkIHtcbiAgZmlsbDogI0RBRENERTsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuc2l0ZS1iYW5uZXIuYmFubmVyLXByaW1hcnksXG4ubGFnb20tZnV0dXJpc3RpYyAuc2l0ZS1iYW5uZXIuYmFubmVyLXNlY29uZGFyeSxcbi5sYWdvbS1mdXR1cmlzdGljIC5zaXRlLXNlY3Rpb24uc2VjdGlvbi1wcmltYXJ5LFxuLmxhZ29tLWZ1dHVyaXN0aWMgLnNpdGUtc2VjdGlvbi5zZWN0aW9uLXNlY29uZGFyeSxcbi5sYWdvbS1mdXR1cmlzdGljIC5wcm9tby1zbGlkZXIucHJvbW8tc2xpZGVyLXByaW1hcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmxhZ29tLWZ1dHVyaXN0aWMgLnNpdGUtYmFubmVyLmJhbm5lci1wcmltYXJ5OmJlZm9yZSxcbiAgLmxhZ29tLWZ1dHVyaXN0aWMgLnNpdGUtYmFubmVyLmJhbm5lci1zZWNvbmRhcnk6YmVmb3JlLFxuICAubGFnb20tZnV0dXJpc3RpYyAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tcHJpbWFyeTpiZWZvcmUsXG4gIC5sYWdvbS1mdXR1cmlzdGljIC5zaXRlLXNlY3Rpb24uc2VjdGlvbi1zZWNvbmRhcnk6YmVmb3JlLFxuICAubGFnb20tZnV0dXJpc3RpYyAucHJvbW8tc2xpZGVyLnByb21vLXNsaWRlci1wcmltYXJ5OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZnV0dXJpc3RpYy1iZyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG4gIC5sYWdvbS1mdXR1cmlzdGljIC5zaXRlLWJhbm5lci5iYW5uZXItcHJpbWFyeSA+IC5jb250YWluZXIsXG4gIC5sYWdvbS1mdXR1cmlzdGljIC5zaXRlLWJhbm5lci5iYW5uZXItc2Vjb25kYXJ5ID4gLmNvbnRhaW5lcixcbiAgLmxhZ29tLWZ1dHVyaXN0aWMgLnNpdGUtc2VjdGlvbi5zZWN0aW9uLXByaW1hcnkgPiAuY29udGFpbmVyLFxuICAubGFnb20tZnV0dXJpc3RpYyAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2Vjb25kYXJ5ID4gLmNvbnRhaW5lcixcbiAgLmxhZ29tLWZ1dHVyaXN0aWMgLnByb21vLXNsaWRlci5wcm9tby1zbGlkZXItcHJpbWFyeSA+IC5jb250YWluZXIge1xuICAgIHotaW5kZXg6IDE7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLnNpdGUtc2VjdGlvbi5zZWN0aW9uLXByaW1hcnkge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2Vjb25kYXJ5IHtcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTsgfVxuXG5ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAubGFnb20tZnV0dXJpc3RpYyAuYm90dG9tLWFjdGlvbi1zdGlja3kuaXMtZml4ZWQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLW92ZXJsYXktYmcpOyB9IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgaW5wdXQ6Oi13ZWJraXQtY3JlZGVudGlhbHMtYXV0by1maWxsLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi5sYWdvbS1mdXR1cmlzdGljIC5tZC1lZGl0b3IgLmJ0bi10b29sYmFyIC5idG4tZ3JvdXAge1xuICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5sYWdvbS1mdXR1cmlzdGljIC5tZC1lZGl0b3IgLmJ0bi10b29sYmFyIC5idG4tZ3JvdXAgLmJ0bjpob3ZlciBzcGFuIHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG5cbi5sYWdvbS1mdXR1cmlzdGljIC5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5idG4tdG9vbGJhciAuYnRuLWdyb3VwIHtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAubGFnb20tZnV0dXJpc3RpYyAubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAuYnRuLXRvb2xiYXIgLmJ0bi1ncm91cCAuYnRuIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyB9XG4gIC5sYWdvbS1mdXR1cmlzdGljIC5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5idG4tdG9vbGJhciAuYnRuLWdyb3VwIC5idG46aG92ZXIgc3BhbiB7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuYW5ub3VuY2VtZW50cy1saXN0Lmxpc3QtYm94ZWQgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWRyb3Bkb3duLWJnKTsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuYW5ub3VuY2VtZW50cy10b29sYmFyIC5kcm9wZG93bi1maWx0ZXIgLmRyb3Bkb3duIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLmljb25zLW5ldHdvcmsgLmNvbnRlbnQtc2xpZGVyLWl0ZW0ge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoNS41KTsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuc2l0ZS5zaXRlLW5vcmR2cG4gLmNvbXBhcmlzaW9uLWltYWdlcyBpbWcge1xuICBtaXgtYmxlbmQtbW9kZTogbm9ybWFsOyB9XG5cbi5sYWdvbS1mdXR1cmlzdGljIC5zaXRlLW5vcmR2cG4gLmNvbXBhcmlzb24gLmNvbC0xMiAuY29sLTI6bnRoLW9mLXR5cGUoMikge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWxpZ2h0ZXItMikgIWltcG9ydGFudDsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuZmlsbC13aGl0ZSB7XG4gIGZpbGw6ICNmZmY7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLmZpbGwtZ3JheSB7XG4gIGZpbGw6ICNFMEUwRTA7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLmZpbGwtdHJhbnNwYXJlbnQge1xuICBmaWxsOiB0cmFuc3BhcmVudDsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGE6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKTsgfVxuICAubGFnb20tZnV0dXJpc3RpYyAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGE6aG92ZXIgaSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cbiAgLmxhZ29tLWZ1dHVyaXN0aWMgLnRpY2tldC1yZXBseS1hdHRhY2htZW50cyB1bCBsaSBhOmhvdmVyIC5hdHRhY2htZW50LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItMyk7IH1cbiAgICAubGFnb20tZnV0dXJpc3RpYyAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGE6aG92ZXIgLmF0dGFjaG1lbnQtY29udGFpbmVyIC5hdHRhY2htZW50LWV4dGVuc2lvbixcbiAgICAubGFnb20tZnV0dXJpc3RpYyAudGlja2V0LXJlcGx5LWF0dGFjaG1lbnRzIHVsIGxpIGE6aG92ZXIgLmF0dGFjaG1lbnQtY29udGFpbmVyIC5hdHRhY2htZW50LW5hbWUge1xuICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7IH1cblxuLmxhZ29tLWZ1dHVyaXN0aWMgLnNpdGUuc2l0ZS1zb2NpYWxiZWUgLnByaWNpbmctdGFibGVfX3Jvdzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhYmxlLWJnLWhvdmVyKTsgfVxuXG4ubGFnb20tZnV0dXJpc3RpYyAuc2VhcmNoLWZpZWxkLXJlc3VsdHMge1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubGFnb20tZnV0dXJpc3RpYyAuYXBwLW5hdi1oZWFkZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICB6LWluZGV4OiAtMTsgfSB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgLmZlYXR1cmVkLXRsZHMgLmZlYXR1cmVkLXRsZCBpbWcge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpOyB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgLmJvdHRvbS1hY3Rpb24tc3RpY2t5LmlzLWZpeGVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpOyB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgI3BheW1lbnRHYXRld2F5c0NvbnRhaW5lciAuY2hlY2staWNvbiBpbWcge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpOyB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgLmZpbGwtd2hpdGUge1xuICBmaWxsOiAjZmZmOyB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgLmZpbGwtZ3JheSB7XG4gIGZpbGw6ICNFMEUwRTA7IH1cblxuLmxhZ29tLWRhcmstbW9kZSAuZmlsbC10cmFuc3BhcmVudCB7XG4gIGZpbGw6IHRyYW5zcGFyZW50OyB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgLmltZy1vbi1kYXJrbW9kZSBpbWcge1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpOyB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgLm1haW4tZm9vdGVyLWV4dGVuZGVkLWdyYXkgLmZvb3Rlci1wYXltZW50LWdhdGV3YXkgc3ZnIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7IH1cblxuLmxhZ29tLWRhcmstbW9kZSAjc3RyaXBlRWxlbWVudHMgLlN0cmlwZUVsZW1lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5sYWdvbS1kYXJrLW1vZGUgI2lucHV0RGVzY3JpcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzE3MTkxQzsgfVxuXG4uZHJvcGRvd24tc3VwcG9ydC1ob3VycyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi5kcm9wZG93bi1zdXBwb3J0LWhvdXJzIC5kcm9wZG93bi1tZW51IHtcbiAgbWluLXdpZHRoOiAzODBweDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7IH1cblxuLmRyb3Bkb3duLXN1cHBvcnQtaG91cnMub3JkZXItbmVnLTEgLmRyb3Bkb3duLW1lbnUge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bzsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgLmRyb3Bkb3duLXN1cHBvcnQtaG91cnMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkNvbG9yc1xyXG4xLiBCYWNrZ3JvdW5kc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbjEuIENvbG9ycyAtIEJhY2tncm91bmRzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5iZy1jb2xvciB7XHJcbiAgICAmLWdvbGQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGFkNGU7XHJcbiAgICB9XHJcbiAgICAmLWdyZWVuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjO1xyXG4gICAgfVxyXG4gICAgJi1yZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkOTUzNGY7XHJcbiAgICB9XHJcbiAgICAmLW9yYW5nZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YzOWMxMjtcclxuICAgIH1cclxuICAgICYtYmx1ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTtcclxuICAgIH1cclxuICAgICYtcGluayB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U2NzFiODtcclxuICAgIH1cclxuICAgICYtcHVycGxlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2I0ZjlkO1xyXG4gICAgfVxyXG4gICAgJi1saW1lIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGNiZjI2O1xyXG4gICAgfVxyXG4gICAgJi1tYWdlbnRhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwMDk3O1xyXG4gICAgfVxyXG4gICAgJi10ZWFsIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhYmE5O1xyXG4gICAgfVxyXG4gICAgJi10dXJxdW9pc2Uge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxYWJjOWM7XHJcbiAgICB9XHJcbiAgICAmLWVtZXJhbGQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyZWNjNzE7XHJcbiAgICB9XHJcbiAgICAmLWFtZXRoeXN0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWI1OWI2O1xyXG4gICAgfVxyXG4gICAgJi13ZXQtYXNwaGFsdCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM0NDk1ZTtcclxuICAgIH1cclxuICAgICYtbWlkbmlnaHQtYmx1ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJjM2U1MDtcclxuICAgIH1cclxuICAgICYtc3VuLWZsb3dlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxYzQwZjtcclxuICAgIH1cclxuICAgICYtcG9tZWdyYW5hdGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMDM5MmI7XHJcbiAgICB9XHJcbiAgICAmLXNpbHZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JkYzNjNztcclxuICAgIH1cclxuICAgICYtYXNiZXN0b3Mge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZjhjOGQ7XHJcbiAgICB9XHJcbn0iLCIuYXBwLW1haW4ge1xyXG4gICAgZmxleDogMSAwIGF1dG87XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIC5tYWluLWJvZHkge1xyXG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgfVxyXG4gICAgPiAubWctaW50ZWdyYXRpb24tY29udGFpbmVye1xyXG4gICAgICAgIC5sdS1hcHAtbWFpbl9fYm9keXtcclxuICAgICAgICAgICAgcGFkZGluZzogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkFwcCAtIE5hdmlnYXRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmFwcC1uYXYsXHJcbi50b3AtbmF2IHtcclxuICAgIC5teS1hY2NvdW50IHtcclxuICAgICAgICAuYWN0aXZlLWNsaWVudCB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIC5pdGVtLXRleHQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3Bhbjpub3QoLml0ZW0tdGV4dCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7ICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAyNDBweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgfSAgICAgICAgICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNsaWVudC1hdmF0YXIge1xyXG4gICAgICAgICAgICAmICsgaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJhZGdlLWRvdCxcclxuICAgIC5iYWRnZS1pY29uIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiB2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy12KTtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBsZWZ0OiBjYWxjKHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSAtIDJweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiBjYWxjKHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSAtIDJweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJhZGdlLWRvdCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgICAgd2lkdGg6IDhweDtcclxuICAgICAgICBtaW4td2lkdGg6IDhweDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICYgPiBzcGFuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9ICAgICBcclxuICAgIH1cclxuICAgIGxpe1xyXG4gICAgICAgIC5pdGVtLXRleHR7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IFxyXG4gICAgICAgICAgICAmLml0ZW0tdGV4dC1iYWRnZXtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIC8vIC5iYWRnZS1kb3QsXHJcbiAgICAgICAgICAgICAgICAvLyAuYmFkZ2UtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgIC8vICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICAgICAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAgICAgICAgIC8vICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuICAgICAgICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAgICAgICAuYmFkZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5iYWRnZS1kb3R7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHVuc2V0IWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogdW5zZXQhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLWJhZGdlLXBhZGRpbmcteSkgdmFyKC0tYmFkZ2UtcGFkZGluZy14KTtcclxuICAgICAgICAgICAgICAgICAgICA+IHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgJjpub3QoLm5hdi1pdGVtLXRleHQtb25seSl7XHJcbiAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICAgIC5pdGVtLXRleHQuaXRlbS10ZXh0LWJhZGdle1xyXG4gICAgICAgICAgICAgICAgICAgIC5iYWRnZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXJ7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS11aS1pY29uLXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaWNvbi1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICAmLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lci1zdmd7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IC5iYWRnZS1kb3Qge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3cHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogN3B4O1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA3cHg7XHJcbiAgICAgICAgICAgICAgICAvLyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hcHAtbmF2LXRvcC1iZyk7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0xcHg7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1hcHAtbmF2LXRvcC1iZyk7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lLXdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcclxuICAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICArIC5iYWRnZS1kb3R7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC0ycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaXRlbS10ZXh0e1xyXG4gICAgICAgICAgICAmLml0ZW0tdGV4dC1iYWRnZXtcclxuICAgICAgICAgICAgICAgID4gLmJhZGdlLWRvdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDZweDtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAobGcpIHtcclxuICAgIC5hcHAtbmF2LFxyXG4gICAgLm1haW4tdG9wIHtcclxuICAgICAgICAubmF2LWl0ZW0taWNvbi1vbmx5IHtcclxuICAgICAgICAgICAgLml0ZW0tdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQXBwIC0gTmF2aWdhdGlvbiBIZWFkZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgIC5sb2dvIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxvZ28taGVpZ2h0KTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1hcHAtbmF2LWxvZ28td2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMjgwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFwcC1uYXYtdG9nZ2xlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTF4KSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0xeCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgLmljb24tYmFyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtaWNvbi1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmljb24tYmFyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1pY29uLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudG9wLW5hdiB7XHJcbiAgICAgICAgLmRyb3Bkb3due1xyXG4gICAgICAgICAgICAmLmRyb3Bkb3duLW1lbnUtaG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1maWxsZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVudS1yaWdodHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgKyAuZHJvcGRvd24tbWVudS1maWxsZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmNsaWVudC1hbGVydHN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICsgLmRyb3Bkb3duLW1lbnUtZmlsbGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTE2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYubXktYWNjb3VudHtcclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1maWxsZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmW2RhdGEtbGFuZ3VhZ2Utc2VsZWN0XXtcclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1maWxsZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpub3QoLnNob3cpOm5vdCguc2ZIb3Zlcil7XHJcbiAgICAgICAgICAgICAgICAmLmRyb3Bkb3duLW1lbnUtaG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtZmlsbGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyAxNHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEFwcCBIZWFkZXIgb24gTW9iaWxlcyAqL1xyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgYm9keSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLW1vYi1hcHAtbmF2LWhlYWRlci1oZWlnaHQpIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5hcHAtbmF2LWhlYWRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IHZhcigtLXppbmRleC1uYXZiYXItZml4ZWQpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWJnKTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1tb2ItYXBwLW5hdi1oZWFkZXItYm94LXNoYWRvdyk7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWJvcmRlci1ib3R0b20pO1xyXG4gICAgICAgIC5sb2dvIHtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IHZhcigtLW1vYi1hcHAtbmF2LWxvZ28taGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgICZbc3JjJD1cInBuZ1wiXSxcclxuICAgICAgICAgICAgICAgICZbc3JjJD1cImpwZ1wiXXtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1tb2ItYXBwLW5hdi1oZWFkZXItaGVpZ2h0KTtcclxuICAgIH1cclxuICAgIC5sYWdvbXtcclxuICAgICAgICAmOm5vdCgucGFnZS1sYWdvbS1jbXMpe1xyXG4gICAgICAgICAgICAuYXBwLW5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICAuY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubGFnb20tbGF5b3V0LXRvcDpub3QoLmxhZ29tLWxheW91dC1sZWZ0KSxcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlOm5vdCgubGFnb20tbGF5b3V0LWxlZnQpIHtcclxuICAgICAgICAuYXBwLW5hdiB7XHJcbiAgICAgICAgICAgICYtcHJpbWFyeSB7XHJcbiAgICAgICAgICAgICAgICAuYXBwLW5hdi1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgLmFwcC1uYXYtdG9nZ2xlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24tYmFyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1zZWNvbmRhcnkge1xyXG4gICAgICAgICAgICAgICAgLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stYmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgLmFwcC1uYXYtdG9nZ2xlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24tYmFyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duICh4cykge1xyXG4gICAgLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAudG9wLW5hdiB7XHJcbiAgICAgICAgICAgICAgICBbbWVudWl0ZW1uYW1lPVwiTm90aWZpY2F0aW9uc1wiXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHZhcigtLWxheW91dC1jb250YWluZXItZ3V0dGVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHZhcigtLWxheW91dC1jb250YWluZXItZ3V0dGVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5BcHAgLSBOYXZpZ2F0aW9uIE1lbnVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmFwcC1uYXYtbWVudSB7XHJcbiAgICAubWVudSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gYTpub3QoLmJ0biksXHJcbiAgICAgICAgICAgID4gYSA+IC5scyxcclxuICAgICAgICAgICAgPiBhID4gLmxtIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1yaWdodCB7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYXBwLW5hdi1tZW51IHtcclxuICAgIC5tZW51IHtcclxuICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAmLm5hdi1pdGVtLXRleHQtb25seSB7XHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgID4gaSxcclxuICAgICAgICAgICAgICAgICAgICA+IHN2ZyxcclxuICAgICAgICAgICAgICAgICAgICA+IGltZyxcclxuICAgICAgICAgICAgICAgICAgICA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYmFkZ2V7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgPiBkaXYuZHJvcGRvd24tbWVudSxcclxuICAgICAgICAgICAgPiB1bC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgPiBsaS5uYXYtaXRlbS10ZXh0LW9ubHl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHN2ZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWxpc3R7XHJcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5uYXYtaXRlbS10ZXh0LW9ubHl7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBzdmcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID4gbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5uYXYtaGVhZGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpub3QoLmRyb3Bkb3duLWhlYWRlcikgKyAubmF2LWhlYWRlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24taGVhZGVyICsgLm5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuZHJvcGRvd24tZXh0ZW5kZWQsXHJcbiAgICAgICAgICAgICYuZHJvcGRvd24tbWVnYXtcclxuICAgICAgICAgICAgICAgIHVsLmRyb3Bkb3duLW1lbnUsXHJcbiAgICAgICAgICAgICAgICBkaXYuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICAubmF2LWl0ZW0taWNvbi1vbmx5e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+YXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmRyb3Bkb3duLWV4dGVuZGVke1xyXG4gICAgICAgICAgICAgICAgdWwuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyAubWVudS1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdpZHRoOiAyMDVweDsvL3ZhclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIC5tZW51LWl0ZW0tY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gd2lkdGg6IDE4NXB4OyAvL3ZhclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1oZWFkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWRlc2N7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gd2lkdGg6IDIwNXB4OyAvL3ZhclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMtdmlzaWJsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5uYXYtaGVhZGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy0zeCkgdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmJhZGdlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxhYmVse1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWNvbGxhcHNle1xyXG4gICAgICAgICAgICAgICAgPiBsaSA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGksIHN2ZywgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRle1xyXG4gICAgLmFwcC1uYXYtbWVudSB7XHJcbiAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgJi5kcm9wZG93bi1leHRlbmRlZHtcclxuICAgICAgICAgICAgICAgICAgICB1bC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hcHAtbmF2e1xyXG4gICAgICAgICYtcHJpbWFyeSwmLXNlY29uZGFyeXtcclxuICAgICAgICAgICAgLm1lbnV7XHJcbiAgICAgICAgICAgICAgICA+bGl7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1leHRlbmRlZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdWwuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk5hdmlnYXRpb24gTWVudSBvbiBNb2JpbGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgLmVtYWlsLXZlcmlmaWNhdGlvbixcclxuICAgIC5jdXN0b20taW50ZWdyYXRpb24sXHJcbiAgICAuYXBwLWhlYWRlcixcclxuICAgIC5hcHAtbWFpbixcclxuICAgIC5hcHAtbmF2LFxyXG4gICAgLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgIH1cclxuICAgIC5hcHAtbmF2IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMTAwMTtcclxuICAgIH1cclxuICAgIC5uYXYtbW9iaWxlLWRyb3Bkb3due1xyXG4gICAgICAgIC5hcHAtbmF2LW1lbnUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB0b3A6IHZhcigtLW1vYi1hcHAtbmF2LWhlYWRlci1oZWlnaHQpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LW1hcmdpbi1oKTtcclxuICAgICAgICAgICAgei1pbmRleDogdmFyKC0temluZGV4LW5hdmJhci1maXhlZCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKDIqIHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbWFyZ2luLWgpKSk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtcGFkZGluZy12KSB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtYm94LXNoYWRvdyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtYmcpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1iZy1maWx0ZXIpO1xyXG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtYmctZmlsdGVyKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTUwcHgpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICA+IC5jb250YWluZXJ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5sb2dvIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICAgICAgJiA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5kcm9wZG93bil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZleyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWJnLWFjdGl2ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGE6bm90KC5idG4pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5pdGVtLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxzLmxzLWNhcmV0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuc2hvdyxcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm5vdCgubmF2LWl0ZW0tc2hvdy1tZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5scy5scy1jYXJldHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLm1vYmlsZS1kaXZpZGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyLTIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTR4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmID4gYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi10b2dnbGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1wYWRkaW5nLXYpIHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiBpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJiA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHN2ZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaW1nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpLCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIC5pdGVtLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmctbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktbmF2LWxpbmstaWNvbi1zcGFjaW5nLWxnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3ZnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJiA+IC5pdGVtLXRleHQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiAubHMubHMtY2FyZXR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtY2FyZXQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYnRue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTJ4KSB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOm5vdCguc2hvdyl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi1hcnJvdy1ib3h7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi1hcnJvd3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGlzdC1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGlzdC1ib3gtc2hhZG93KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpc3QtcGFkZGluZy12KSB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpc3QtcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi1hcnJvdy1ib3h7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNHMgZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi1hcnJvd3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoNDVkZWcpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saXN0LWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWJhc2UpIHZpc2liaWxpdHkgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTRzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpub3QoLnNob3cpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51LWJvZHl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51LWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBkaXY6bm90KC5kcm9wZG93bi1tZW51LXBhcmVudCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tbmF2LWRpdmlkZXItbWFyZ2luLXkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1uYXYtZGl2aWRlci1tYXJnaW4teSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtcGFyZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLm5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saXN0LWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGlzdC1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm5hdi1kaXZpZGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tbmF2LWRpdmlkZXItbWFyZ2luLXkpIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tZGl2aWRlci1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstYWN0aXZlLWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstbGlzdC1wYWRkaW5nLXYpIHZhcigtLW1vYi1kcm9wZG93bi1uYXYtbGluay1saXN0LXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWRlc2N7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwubGFiZWwtZGVmYXVsdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBzdmcgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLW1vYi1kcm9wZG93bi1uYXYtc3ZnLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5uYXYtaGVhZGVyLWl0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWxpc3QtcGFkZGluZy12KSB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstbGlzdC1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVnYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saW5rLWxpc3QtcGFkZGluZy12KSB2YXIoLS1tb2ItZHJvcGRvd24tbmF2LWxpbmstbGlzdC1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWxpc3R7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1pdGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5oYXMtZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtc2lkZWJhcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4KSB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbW9iLWRyb3Bkb3duLW5hdi1saXN0LXNpZGViYXItYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7ICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi1ncmFwaGlje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE4MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTgwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYucHJlZGVmaW5lZC1ncmFwaGlje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByb21vLXNsaWRlci1pY29ue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgLmRyb3Bkb3duLW1lbnUtc2lkZWJhci1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sYWdvbXtcclxuICAgICAgICAmLm1lbnUtb3BlbiB7XHJcbiAgICAgICAgICAgICYubmF2LW1vYmlsZS1kcm9wZG93bntcclxuICAgICAgICAgICAgICAgIC5hcHAtbmF2LW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IGNhbGModmFyKC0tbW9iLWFwcC1uYXYtaGVhZGVyLWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nLTJ4KSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pe1xyXG4gICAgICAgICAgICAgICAgLmFwcC1uYXYtbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmVtYWlsLXZlcmlmaWNhdGlvbixcclxuICAgICAgICAgICAgICAgID4gLmN1c3RvbS1pbnRlZ3JhdGlvbixcclxuICAgICAgICAgICAgICAgIC5hcHAtaGVhZGVyLFxyXG4gICAgICAgICAgICAgICAgLmFwcC1uYXYtaGVhZGVyLFxyXG4gICAgICAgICAgICAgICAgLmFwcC1tYWluIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tbW9iLWFwcC1uYXYtd2lkdGgpKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTEgKiB2YXIoLS1tb2ItYXBwLW5hdi13aWR0aCkpKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYXBwLW1haW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLm5hdi1tb2JpbGUtZHJvcGRvd257XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIC5lbWFpbC12ZXJpZmljYXRpb24sXHJcbiAgICAgICAgICAgICAgICA+IC5jdXN0b20taW50ZWdyYXRpb24sXHJcbiAgICAgICAgICAgICAgICAuYXBwLWhlYWRlcixcclxuICAgICAgICAgICAgICAgIC5hcHAtbmF2LWhlYWRlcixcclxuICAgICAgICAgICAgICAgIC5hcHAtbWFpbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLW1vYi1hcHAtbmF2LXdpZHRoKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xICogdmFyKC0tbW9iLWFwcC1uYXYtd2lkdGgpKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IFxyXG5cclxuLmxhZ29tLWxheW91dC10b3B7XHJcbiAgICAuYXBwLW5hdntcclxuICAgICAgICAmLW1lbnV7XHJcbiAgICAgICAgICAgIC5tZW51e1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgICAgICAgICAgICAgPmxpLmRyb3Bkb3duLWhvcml6b250YWx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtODBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiB1bnNldCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1tZW51LS1maXhlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKDIqIHZhcigtLWxheW91dC1jb250YWluZXItZ3V0dGVyKSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKGNhbGModmFyKC0tY29udGFpbmVyLXhsLW1heC13aWR0aCkgLSB2YXIoLS1sYXlvdXQtY29udGFpbmVyLWd1dHRlcikpLzQpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctNHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMtdmlzaWJsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNFRUYzRkY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtc2Vjb25kYXJ5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKGxnLGxnKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1leHRlbmRlZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1tZWdhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1saXN0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3ZnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWRyb3Bkb3duLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWRyb3Bkb3duLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWRyb3Bkb3duLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1leHRlbmRlZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24tZXh0ZW5kZWQtcmlnaHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBjYWxjKC0xKiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctaCkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4KSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0tZXh0ZW5kZWQtbmF2LWRyb3Bkb3duLXdpZHRoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmRyb3Bkb3duLW1lbnUtY29sbGFwc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy00eCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWV4dGVuZGVkLW5hdi1saW5rLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZXh0ZW5kZWQtbmF2LWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy00eCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWRlc2N7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1tZW51LWNvbGxhcHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaS5uYXYtaGVhZGVyLWNvbGxhcHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtaGVhZGVyLWl0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gLml0ZW0taGVhZGVyLXRleHQgPiBpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWRyb3Bkb3duLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtZHJvcGRvd24taWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1kcm9wZG93bi1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpIHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1tZWdhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHZhcigtLWxheW91dC1jb250YWluZXItZ3V0dGVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdmFyKC0tbGF5b3V0LWNvbnRhaW5lci1ndXR0ZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3gpIHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtcGFyZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtYm9keXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWNvbHN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtaGVhZGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWhlYWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctdikgdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgLm5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtbGlzdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxODBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5oYXMtZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LXBhcmVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOnZhcigtLWRyb3Bkb3duLWhlYWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjp2YXIoLS1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LXBhcmVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhhcyhkaXYubmF2LWhlYWRlcil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOnZhcigtLWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLXNpZGViYXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTN4KSB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTR4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNzZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNzZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLWdyYXBoaWN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnByZWRlZmluZWQtZ3JhcGhpY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9tby1zbGlkZXItaWNvbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIC5kcm9wZG93bi1tZW51LXNpZGViYXItZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpLm5hdi1oZWFkZXItY29sbGFwc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtaGVhZGVyLWl0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtaGVhZGVyLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubHMtY2FyZXR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSArIGxpLm5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLm5hdi1pdGVtLWljb24tb25seXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYWRnZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpub3QoLmJhZGdlLWRvdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLXYpICsgNnB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBjYWxjKHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLWgpIC0gMTNweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGModmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctaCkgLSAxM3B4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLW9ubHktbG9nb3tcclxuICAgICAgICAgICAgLmFwcC1uYXYtbWVudXtcclxuICAgICAgICAgICAgICAgID4gLmNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmxhZ29tLWxheW91dC10b3B7XHJcbiAgICAmLmxhZ29tLWxheW91dC1jb25kZW5zZWR7XHJcbiAgICAgICAgLmFwcC1uYXZ7XHJcbiAgICAgICAgICAgICYtbWVudXtcclxuICAgICAgICAgICAgICAgIC5tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5uYXYtaXRlbS1pY29uLW9ubHl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmJhZGdlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpub3QoLmJhZGdlLWRvdCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGNhbGModmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLXYpICsgNnB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGModmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpIC0gMTNweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGModmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpIC0gMTNweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hcHAtbmF2e1xyXG4gICAgJi1vbmx5LWxvZ297XHJcbiAgICAgICAgLmFwcC1uYXYtaGVhZGVyLFxyXG4gICAgICAgIC5hcHAtbmF2LW1lbnV7XHJcbiAgICAgICAgICAgID4gLmNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgID4gKjpub3QoLmxvZ28pe1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAubG9nb3tcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJcclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gQm9keVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5uby10cmFuc2l0aW9ue1xyXG4gICAgKiwgLnRpbGV7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5tYWluLWJvZHkge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiB2YXIoLS1tYWluLWJvZHktcGFkZGluZy12KSAwO1xyXG5cdCYuaGFzLWJhbm5lciB7XHJcblx0XHRwYWRkaW5nLXRvcDogMDtcclxuXHR9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgLm1haW4tYm9keSB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH0gXHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTWFpbiAtIEJvZHkgU2lkZWJhclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFnZS1sb2dpbntcclxuICAgIC5tYWluLWJvZHkubWFpbi1ib2R5LWhhcy1zaWRlYmFye1xyXG4gICAgICAgICsgcFtzdHlsZT1cInRleHQtYWxpZ246Y2VudGVyO1wiXXtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tbG9naW4tYm94LXNoYWRvdyk7XHJcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gdmFyKC0tbWFpbi1ib2R5LXNpZGViYXItd2lkdGgpIC0gNDBweCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZyl7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIHZhcigtLW1haW4tYm9keS1zaWRlYmFyLXdpZHRoKSArIDExNXB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZyl7XHJcbiAgICAgICAgJi5yZWdpc3Rlci1wYWdle1xyXG4gICAgICAgICAgICAubWFpbi1ib2R5Lm1haW4tYm9keS1oYXMtc2lkZWJhcntcclxuICAgICAgICAgICAgICAgICsgcFtzdHlsZT1cInRleHQtYWxpZ246Y2VudGVyO1wiXXtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubWFpbi1ib2R5LWhhcy1zaWRlYmFyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICAmLXJpZ2h0IHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcbiAgICB9XHJcbiAgICAubWFpbi1ib2R5LWNvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLW1haW4tYm9keS1zaWRlYmFyLXdpZHRoKSk7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tbWFpbi1ib2R5LXNpZGViYXItcGFkZGluZy12KSB2YXIoLS1tYWluLWJvZHktc2lkZWJhci1wYWRkaW5nLWgpO1xyXG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuICAgIH1cclxufVxyXG4ubWFpbi1ib2R5LXNpZGViYXIge1xyXG4gICAgd2lkdGg6IHZhcigtLW1haW4tYm9keS1zaWRlYmFyLXdpZHRoKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLW1haW4tYm9keS1zaWRlYmFyLXBhZGRpbmctdikgdmFyKC0tbWFpbi1ib2R5LXNpZGViYXItcGFkZGluZy1oKTtcclxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICAgIC5zaWRlYmFyIHtcclxuICAgICAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tbWFpbi1ib2R5LXNpZGViYXItcGFkZGluZy12KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1uZXdzIHtcclxuICAgICAgICAgICAgJi1kYXRlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1kZXNjLFxyXG4gICAgICAgICAgICAmLWRlc2MgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTWFpbiAtIEdyaWRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLm1haW4tZ3JpZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgJi5yb3cge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICAgICY6aGFzKC5zdG9yZS1vcmRlci1jb250YWluZXIpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gQ29udGVudFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ubWFpbi1jb250ZW50IHtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuXHJcblxyXG5cclxuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLnBhZ2Utc3VwcG9ydHRpY2tldHN1Ym1pdC1zdGVwdHdve1xyXG4gICAgICAgIC5tYWluLWdyaWR7XHJcbiAgICAgICAgICAgICY6aGFzKC5vcGVuLXRpY2tldC1mb3JtKXtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcclxuICAgICAgICAgICAgLm1haW4tc2lkZWJhcntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCxcclxuICAgIC5sYWdvbS1sYXlvdXQtdG9wIHtcclxuICAgICAgICAubWFpbi1jb250ZW50IHtcclxuICAgICAgICAgICAgJi5tYWluLWNvbnRlbnQtbS13IHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKHZhcigtLW1haW4tc2lkZWJhci1sZy13aWR0aCkgKiAwLjgpIC0gdmFyKC0tbWFpbi1zaWRlYmFyLXNwYWNpbmctaCkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYm9keTpub3QoLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUpe1xyXG4gICAgICAgIC5tYWluLXNpZGViYXJ7XHJcbiAgICAgICAgICAgICsgLm1haW4tY29udGVudHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKHZhcigtLW1haW4tc2lkZWJhci13aWR0aCkgKiAwLjggKyB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKSkpO1xyXG4gICAgICAgIH1cclxuICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAoeGwpIHtcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlLFxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4gICAgLmxhZ29tLWxheW91dC10b3Age1xyXG4gICAgICAgIC5tYWluLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAmLm1haW4tY29udGVudC1tLXcge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1tYWluLXNpZGViYXItbGctd2lkdGgpIC0gdmFyKC0tbWFpbi1zaWRlYmFyLXNwYWNpbmctaCkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYm9keTpub3QoLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUpe1xyXG4gICAgICAgIC5tYWluLXNpZGViYXJ7XHJcbiAgICAgICAgICAgICsgLm1haW4tY29udGVudHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKHZhcigtLW1haW4tc2lkZWJhci13aWR0aCkgKyB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKSkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGV7XHJcbiAgICAgICAgLm1haW4tc2lkZWJhcntcclxuICAgICAgICAgICAgKyAubWFpbi1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAodmFyKC0tbWFpbi1zaWRlYmFyLXdpZHRoKSArIHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpKSk7XHJcbiAgICAgICAgfVxyXG4gICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5tYWluLWNvbnRlbnQgeyAgICAgICAgXHJcbiAgICAgICAgICAgICsgLm1haW4tc2lkZWJhciB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tbWFpbi1zaWRlYmFyLXNwYWNpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLm1haW4tc2lkZWJhci1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBTaWRlYmFyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAgKGxnKSB7XHJcbiAgICAuc2Nyb2xsLXVwIHtcclxuICAgICAgICAubWFpbi1zaWRlYmFyIC5zaWRlYmFyLXN0aWNreSB7XHJcbiAgICAgICAgICAgIHRvcDogY2FsYyh2YXIoLS1hcHAtbmF2LWhlYWRlci1oZWlnaHQpICsgdmFyKC0tbWFpbi1zaWRlYmFyLXN0aWNreS10b3ApKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5tYWluLXNpZGViYXIge1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1tYWluLXNpZGViYXItd2lkdGgpO1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tbWFpbi1zaWRlYmFyLXNwYWNpbmctaCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1tYWluLXNpZGViYXItbGctd2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2lkZWJhci1zdGlja3kge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgICAgICB0b3A6IHZhcigtLW1haW4tc2lkZWJhci1zdGlja3ktdG9wKTtcclxuICAgICAgICAgICAgJltkYXRhLXNpZGViYXItc3RpY2t5XXtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRvcCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4gICAgLmxhZ29tLWxheW91dC10b3Age1xyXG4gICAgICAgIC5tYWluLWNvbnRlbnQgeyAgICAgICAgXHJcbiAgICAgICAgICAgICsgLm1haW4tc2lkZWJhciB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tbWFpbi1zaWRlYmFyLXNwYWNpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLm1haW4tc2lkZWJhci1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1tYWluLXNpZGViYXItc3BhY2luZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8qIEZvciBzY3JlZW5zIGJlbG93IDExOTlweCAqL1xyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKGxnKSB7XHJcbiAgICAubWFpbi1ncmlkIHtcclxuICAgICAgICAubWFpbi1zaWRlYmFyIHtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGModmFyKC0tbWFpbi1zaWRlYmFyLXdpZHRoKSAqIDAuOCk7XHJcbiAgICAgICAgICAgICYtbGcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGModmFyKC0tbWFpbi1zaWRlYmFyLWxnLXdpZHRoKSAqIDAuOCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZXtcclxuICAgICAgICAubWFpbi1ncmlkIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgLm1haW4tc2lkZWJhciB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxuICAgIC5wYWdlLXZpZXdjYXJ0e1xyXG4gICAgICAgIC5tYWluLWdyaWR7XHJcbiAgICAgICAgICAgIC5tYWluLXNpZGViYXJ7XHJcbiAgICAgICAgICAgICAgICAmLWxnIHtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGNhbGModmFyKC0tbWFpbi1zaWRlYmFyLWxnLXdpZHRoKSAqIDAuOCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyogRm9yIHNjcmVlbnMgYmVsb3cgOTkycHggKi9cclxuXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKG1kKSB7XHJcbiAgICAubWFpbi1ncmlkIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIC5tYWluLXNpZGViYXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubWFpbi1ib2R5LWhhcy1zaWRlYmFyIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gVG9wXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tYWluLXRvcCB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1tYWluLXRvcC1wYWRkaW5nKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tdG9wLWJnKTtcclxuICAgIGJvcmRlci1ib3R0b206IHZhcigtLW1haW4tdG9wLWJvcmRlci1ib3R0b20pO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tbWFpbi10b3AtYm94LXNoYWRvdyk7XHJcbiAgICAudG9wLW5hdiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTWFpbiAtIEhlYWRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ubWFpbi1oZWFkZXIge1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1tYWluLWhlYWRlci1wYWRkaW5nLXYpO1xyXG4gICAgJi10b3B7XHJcbiAgICAgICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1sZyk7XHJcbiAgICAgICAgLnNlYXJjaC1ncm91cHtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXRvcCxcclxuICAgICYtYm90dG9tIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB9XHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLW1haW4taGVhZGVyLXRpdGxlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLW1haW4taGVhZGVyLXRpdGxlLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbWFpbi1oZWFkZXItdGl0bGUtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgICsgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTZweCAwIDAgMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtbGFiZWx7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGVzY3tcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcclxuICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1sYWJlbC1kZXNjLWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWxhYmVsLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbmFtZXtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWxhYmVsLW5hbWUtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXByb21ve1xyXG4gICAgICAgICAgICAmLmxhYmVsLXNhdmluZ3N7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG1heC1jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiB1bnNldDsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBzcGFue1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBie1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDhweCAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tbGFiZWwtc2F2aW5ncy1ib3JkZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDZweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMTJweCA4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246bGVmdDsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnByb21vLWluZm8taWNvbntcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWdyb3VwIHtcclxuICAgICAgICAuc2VhcmNoLWZpZWxkIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTZweDtcclxuICAgICAgICAgICAgJjpoYXMoW2RhdGEtY2xlYXItdGFibGUtc2VhcmNoXSl7XHJcbiAgICAgICAgICAgICAgICBpbnB1dHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0NHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYnV0dG9uW2RhdGEtY2xlYXItdGFibGUtc2VhcmNoXXtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhzLXYpO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTZweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tYnRuLXRyYW5zaXRpb24pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJyZWFkY3J1bWIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAwIDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1tYWluLWhlYWRlci1icmVhZGNydW1iLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJyZWFkY3J1bWItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlLFxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYnJlYWRjcnVtYi1jb2xvci1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuYWN0aXZlIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJyZWFkY3J1bWItY29sb3ItYWN0aXZlKVxyXG4gICAgICAgIH1cclxuICAgICAgICBzbWFsbCB7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAobWQpe1xyXG4gICAgLnBhZ2UtY29uZmlndXJlcHJvZHVjdGRvbWFpbntcclxuICAgICAgICAubWFpbi1oZWFkZXItbGFiZWx7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoc20pIHtcclxuICAgIC5tYWluLWhlYWRlciB7XHJcbiAgICAgICAgJi10b3Age1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5icmVhZGNydW1iIHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VhcmNoLWdyb3VwIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBIZWFkZXIgQmFubmVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLm1haW4taGVhZGVyLWJhbm5lcixcclxuLmxhZ29tLWxheW91dC1iYW5uZXIgLm1haW4taGVhZGVyIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4taGVhZGVyLWJhbm5lci1iZyk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1tYWluLWhlYWRlci1wYWRkaW5nLXYpIDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICAubWFpbi1oZWFkZXItdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICArIHAge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLWJyZWFkY3J1bWItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5tYWluLWhlYWRlci1ib3R0b217XHJcbiAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1iYW5uZXItYnJlYWRjcnVtYi1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWxhYmVse1xyXG4gICAgICAgICYtZGVzY3tcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLWxhYmVsLWJnKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJhbm5lci1sYWJlbC1kZXNjLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1uYW1le1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLWxhYmVsLW5hbWUtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWFpbi1oZWFkZXItbGFiZWwtcHJvbW97XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJhbm5lci1zYXZlLWxhYmVsLWJnKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLW1haW4taGVhZGVyLWJhbm5lci1zYXZlLWxhYmVsLWNvbG9yKTtcclxuICAgICAgICAgICAgLmZpbGwtY2hhbmdle1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLXNhdmUtbGFiZWwtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID5zcGFue1xyXG4gICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgdmFyKC0tbWFpbi1oZWFkZXItYmFubmVyLXNhdmUtbGFiZWwtYm9yZGVyKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5tYWluLWhlYWRlci1ib3R0b20ge1xyXG4gICAgICAgIC5icmVhZGNydW1iIHtcclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1iYW5uZXItYnJlYWRjcnVtYi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiAuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1iYW5uZXItYnJlYWRjcnVtYi1jb2xvci1hY3RpdmUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRleHQtbGlnaHRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWhlYWRlci1iYW5uZXItYnJlYWRjcnVtYi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5iYW5uZXItZG9tYWluLXJlZ2lzdGVye1xyXG4gICAgLm1haW4taGVhZGVyLWxhYmVse1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgJi1wcm9tb3tcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogdmFyKC0tc2VhcmNoLWdyb3VwLW1heC13aWR0aCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbn1cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gU2VjdGlvblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ubWFpbi1zZWN0aW9uIHtcclxuXHRwYWRkaW5nOiA1NnB4IDA7XHJcblx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xyXG5cdH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gQmFubmVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tYWluLWJhbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IHZhcigtLXNpdGUtYmFubmVyLXBhZGRpbmctdikgMDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNpdGUtYmFubmVyLWJnKTtcclxuICAgID4gKiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgICAmLmhhcy1zdWJuYXYge1xyXG4gICAgICAgcGFkZGluZy1ib3R0b206IDE0NnB4O1xyXG4gICAgfVxyXG4gICAgLmJhbm5lci10aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2l0ZS1iYW5uZXItZWxlbWVudC1zcGFjaW5nKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpdGUtYmFubmVyLXRpdGxlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXNpdGUtYmFubmVyLXRpdGxlLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tc2l0ZS1iYW5uZXItdGl0bGUtbGluZS1oZWlnaHQpO1xyXG4gICAgfVxyXG4gICAgLmJhbm5lci1kZXNjIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpdGUtYmFubmVyLWRlc2MtZm9udC1zaXplKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tc2l0ZS1iYW5uZXItZGVzYy1mb250LXdlaWdodCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXNpdGUtYmFubmVyLWRlc2MtbGluZS1oZWlnaHQpO1xyXG4gICAgfVxyXG4gICAgLmJhbm5lci1hY3Rpb25zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zaXRlLWJhbm5lci1lbGVtZW50LXNwYWNpbmcpO1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAobWQpIHtcclxuICAgIC5tYWluLWJhbm5lciB7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgIH1cclxuICAgIC5wYWdlLXR5cGUtZnVsbCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1haW4gLSBGb290ZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLm1haW4tZm9vdGVyIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tZm9vdGVyLWJnKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLW1haW4tZm9vdGVyLWJveC1zaGFkb3cpO1xyXG4gICAgLmZvb3Rlci1uYXYge1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgJiA+IGxpID4gYSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstcGFkZGluZy12KSB2YXIoLS1tYWluLWZvb3Rlci1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAmID4gaSxcclxuICAgICAgICAgICAgJiA+IHN2ZyxcclxuICAgICAgICAgICAgJiA+IGltZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWljb24tc2l6ZSk7ICBcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmID4gaW1ne1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmID4gaSB7ICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJiA+IHN2ZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tbWFpbi1mb290ZXItbGluay1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgJjpub3QoLnN2Zy1pY29uKXtcclxuICAgICAgICAgICAgICAgICAgICAmID4gcGF0aCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICYgPiBpIHsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWljb24taG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJiBzdmc6bm90KC5zdmctaWNvbikgPiBwYXRoIHsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9vdGVyLW5hdi1oIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIG1hcmdpbjogMCBjYWxjKC0xICogdmFyKC0tbWFpbi1mb290ZXItaC1saW5rLXBhZGRpbmctaCkpO1xyXG4gICAgICAgICYgPiBsaSA+IGEgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1tYWluLWZvb3Rlci1oLWxpbmstcGFkZGluZy12KSB2YXIoLS1tYWluLWZvb3Rlci1oLWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9vdGVyLWJvdHRvbSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgMDtcclxuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS1tYWluLWZvb3Rlci1ib3JkZXItdG9wKTtcclxuICAgICAgICAmID4gLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5mb290ZXItcGF5bWVudC1nYXRld2F5eyBcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpoYXMoLmZvb3Rlci1wYXltZW50LWdhdGV3YXkpe1xyXG4gICAgICAgICAgICAuZm9vdGVyLWNvcHlyaWdodHtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmZvb3Rlci1uYXZ7XHJcbiAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9vdGVyLWNvcHlyaWdodCB7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgIH1cclxuICAgIC5mb290ZXItcGF5bWVudHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICYtZ2F0ZXdheXtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAuZ2F0ZXdheS1pY29uIHtcclxuICAgICAgICAgICAgICAgICYtbGcge1xyXG4gICAgICAgICAgICAgICAgICAgIHN2ZywgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA2MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA0MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzdmd7IFxyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDQ4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1oZWFkZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1leHRlbmRlZC1ncmF5e1xyXG4gICAgICAgIC5mb290ZXItcGF5bWVudHtcclxuICAgICAgICAgICAgJi1nYXRld2F5e1xyXG4gICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I0VGRUZGMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZXh0ZW5kZWQtc2Vjb25kYXJ5LFxyXG4gICAgJi1leHRlbmRlZC1wcmltYXJ5e1xyXG4gICAgICAgIC5maWxse1xyXG4gICAgICAgICAgICAmLXdoaXRle1xyXG4gICAgICAgICAgICAgICAgZmlsbDojZmZmO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtZ3JheXtcclxuICAgICAgICAgICAgICAgIGZpbGw6I0UwRTBFMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRyYW5zcGFyZW50e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmZvb3Rlci1wYXltZW50e1xyXG4gICAgICAgICAgICAmLWdhdGV3YXl7XHJcbiAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaGVhZGVye1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAobWQpIHtcclxuICAgIC5tYWluLWZvb3RlciB7XHJcbiAgICAgICAgLmZvb3Rlci1ib3R0b20geyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICAgICAgICAgICAgICAgIHJvdy1nYXA6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5mb290ZXItY29weXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKSB7XHJcbiAgICAubWFpbi1mb290ZXIge1xyXG4gICAgICAgIC5mb290ZXItYm90dG9tIHtcclxuICAgICAgICAgICAgLmZvb3Rlci1uYXYtaCB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTE2cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICYuc2hvdyB7ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5NYWluIC0gRm9vdGVyIEV4dGVuZGVkXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tYWluLWZvb3Rlci1leHRlbmRlZCB7XHJcbiAgICBib3JkZXItdG9wOiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1ib3JkZXItdG9wKTtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgICAuZm9vdGVyLXRvcCB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtcGFkZGluZykgMDtcclxuICAgICAgICA+IC5jb250YWluZXJ7XHJcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctN3gpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb290ZXItY29tcGFueSB7XHJcbiAgICAgICAgJi1sb2dvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtbG9nby1oZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1kZXNjIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1zaWRlLW1pbi13aWR0aCk7XHJcbiAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtZGVzYy1tYXJnaW4pO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtZGVzYy1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtZGVzYy1mb250LXNpemUpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtZGVzYy1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1tYWluLWZvb3Rlci1leHRlbmRlZC1kZXNjLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1zb2NpYWxze1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIC5mb290ZXItc29jaWFsLXdpZGV7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvb3Rlci1zaXRlLW1hcCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXNwYWNpbmcpKTtcclxuICAgICAgICAuZm9vdGVyLWNvbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXNwYWNpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZm9vdGVyLW5hdiB7XHJcbiAgICAgICAgICAgIGxpID4gYSB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaG92ZXItcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID4gc3BhbntcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxhYmVse1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcbiAgICAuZm9vdGVyLXRpdGxlIHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtdGl0bGUtbWFyZ2luLWJvdHRvbSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXRpdGxlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtdGl0bGUtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIC5mb290ZXItaWNvbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgPiBzdmcsXHJcbiAgICAgICAgJiA+IHNwYW4gPiBzdmcsXHJcbiAgICAgICAgJiA+IGksXHJcbiAgICAgICAgJiA+IGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktbmF2LWxpbmstaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWljb24tc2l6ZSk7IFxyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLW1haW4tZm9vdGVyLWxpbmstaWNvbi1zaXplKTsgXHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWljb24tc2l6ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgPiBpbWcge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHVuc2V0OyBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgLmZvb3Rlci1icmFuZHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMjgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIC5mb290ZXItdG9wIHtcclxuICAgICAgICAgICAgLy8gLmZvb3Rlci1jb21wYW55IHtcclxuICAgICAgICAgICAgLy8gICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLWNvbXBhbnktbWFyZ2luLXJpZ2h0KTtcclxuICAgICAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAgICAgLy8gICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtY29tcGFueS1tYXJnaW4tcmlnaHQpO1xyXG4gICAgICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgICAgICAvLyB9ICAgICBcclxuICAgICAgICAgICAgLmZvb3Rlci1zaXRlLW1hcCB7XHJcbiAgICAgICAgICAgICAgICAuZm9vdGVyLW5hdi5jb2xsYXBzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKG1kLCBtZCkge1xyXG4gICAgICAgIC5mb290ZXItdG9wIHtcclxuICAgICAgICAgICAgJiA+IC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgLmQtZmxleHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgLmZvb3Rlci1jb21wYW55IHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtcGFkZGluZyk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICYtaW50cm8ge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhhcygrIC5mb290ZXItcGF5bWVudCl7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICBcclxuICAgICAgICAuZm9vdGVyLXBheW1lbnR7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNngpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIC5mb290ZXItdG9wIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIC5mb290ZXItc2l0ZS1tYXAge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5mb290ZXItY29sIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAuZm9vdGVyLXRpdGxlOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5mb290ZXItdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1mb290ZXItbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5mb290ZXItaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1tYWluLWZvb3Rlci1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmZvb3Rlci1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpub3QoLmNvbGxhcHNlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZm9vdGVyLWljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiBhcigtLW1haW4tZm9vdGVyLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XHJcbiAgICAgICAgLmZvb3Rlci1jb21wYW55IHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAmLWludHJvIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1peGluIGV4dGVuZGVkLWZvb3Rlci1zY2hlbWUoJGJhY2tncm91bmQsICRjb2xvciwgJGxpbmstY29sb3IsICRsaW5rLWhvdmVyLWNvbG9yLCAkZGl2aWRlci1jb2xvcil7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgICAgICAuZm9vdGVye1xyXG4gICAgICAgICAgICAmLWNvbXBhbnktZGVzY3tcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10b3AgLmZvb3Rlci1zaXRlLW1hcHtcclxuICAgICAgICAgICAgICAgIC5mb290ZXItdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogICRsaW5rLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5mb290ZXItaWNvbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogICRsaW5rLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLW5hdntcclxuICAgICAgICAgICAgICAgID4gbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3Vze1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3ZnOm5vdCguc3ZnLWljb24pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRsaW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmc6bm90KC5zdmctaWNvbil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRsaW5rLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWNvcHlyaWdodHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1ib3R0b217XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRpdmlkZXItY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBGb290ZXIgRXh0ZW5kZWQgVmFyaWFudHNcclxuICAgICYubWFpbi1mb290ZXItZXh0ZW5kZWR7XHJcbiAgICAgICAgJi1wcmltYXJ5e1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBleHRlbmRlZC1mb290ZXItc2NoZW1lKHZhcigtLXByaW1hcnktYmxvY2stYmcpLCB2YXIoLS1wcmltYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpLCB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpLCB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpLCB2YXIoLS1wcmltYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1zZWNvbmRhcnl7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGV4dGVuZGVkLWZvb3Rlci1zY2hlbWUodmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKSwgdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpLCB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvciksIHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKSwgdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ncmF5e1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWdyYWRpZW50LWgpOyBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAoeHMpIHtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICAgIG1heC13aWR0aDogMTM2MHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tbGF5b3V0LWNvbnRhaW5lci1ndXR0ZXIpO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWxheW91dC1jb250YWluZXItZ3V0dGVyKTtcclxuICAgIH1cclxufVxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCAtIFRvcCBOYXZpZ2F0aW9uXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5sYWdvbS1sYXlvdXQtdG9wIHtcclxuICAgICYuc2Nyb2xsaW5nIHtcclxuICAgICAgICAuc3RpY2t5LW5hdmlnYXRpb24ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAvL3otaW5kZXg6IDk5OTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLm1lbnUtb3Blbi5zY3JvbGwtZG93bixcclxuICAgICYuc2Nyb2xsLXVwIHtcclxuICAgICAgICAuc3RpY2t5LW5hdmlnYXRpb24ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLW92ZXJsYXktYmcpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1vdmVybGF5LXNoYWRvdyk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IHZhcigtLXppbmRleC1uYXZiYXItZml4ZWQpO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgLy8gLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICAgICAgLy8gICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBUT0RPOiBCdWdlZCBvbiBjbGVhbiBsYWdvbSBuYXYgdy9vIGJhciBvbiB0b3BcclxuICAgIC8vICYuc2Nyb2xsLXVwOm5vdCgubWVudS1vcGVuKSB7XHJcbiAgICAvLyAgICAgLnN0aWNreS1uYXZpZ2F0aW9uIHtcclxuICAgIC8vICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuM3M7XHJcbiAgICAvLyAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbiAgICAvLyAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XHJcbiAgICAvLyAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vIH1cclxuICAgICYuc2Nyb2xsZWQtdG9wIHtcclxuICAgICAgICAuc3RpY2t5LW5hdmlnYXRpb24ge1xyXG4gICAgICAgICAgICAmLnN0aWNreS1uYXZpZ2F0aW9uLS1kZWZhdWx0IHtcclxuICAgICAgICAgICAgICAgICNoZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0aWNreS1uYXZpZ2F0aW9ue1xyXG4gICAgICAgICYuc3RpY2t5LW5hdmlnYXRpb24tLXN0aWNreXtcclxuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLmxhZ29tLWxheW91dC10b3Age1xyXG4gICAgICAgIC5hcHAtbmF2IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDAyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LXRvcC1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHZhcigtLWFwcC1uYXYtdG9wLWJvcmRlci1ib3R0b20pO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1hcHAtbmF2LXRvcC1ib3gtc2hhZG93KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWhlYWRlci1oZWlnaHQpO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hcHAtbmF2LW1lbnUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LW5hdmJhci1iZyk7XHJcbiAgICAgICAgICAgID4gLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtLWZpeGVkLWRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbml0aWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGxlZnQ6IDQwcHghaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJpZ2h0OiB1bnNldCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKSk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKSk7XHJcbiAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogY2FsYygoMiAqIHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLXYpKSArIHZhcigtLXVpLWhlaWdodC1iYXNlKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gcG9zaXRpb246IGluaXRpYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSA4cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5pcy1yaWdodCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmICsgLmlzLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmlzLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVudS1ob3Zlcjpub3QoLnNob3cpOm5vdCguc2ZIb3Zlcil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gYTpub3QoLmJ0bil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5scyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmRyb3Bkb3duLW1lbnUtaG92ZXI6bm90KC5zaG93KTpub3QoLnNmSG92ZXIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGE6bm90KC5idG4pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAubHMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1tZW51LWhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnNmSG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdG9wOiBjYWxjKDEwMCUgLSA4cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJiA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoKDIgKiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy12KSkgKyB2YXIoLS11aS1oZWlnaHQtYmFzZSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy12KSB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5scyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiAubG0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IC5scyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gLmxtIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpub3QoLmxzLWNhcmV0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmxzLWNhcmV0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgID4gYTpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICA+IGE6Zm9jdXMsXHJcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUgPiBhLFxyXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlID4gYTpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSA+IGE6Zm9jdXMsXHJcbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuID4gYSxcclxuICAgICAgICAgICAgICAgICAgICAmLm9wZW4gPiBhOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICYub3BlbiA+IGE6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm5vdCguYnRuKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJiA+IGIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gaSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWljb24taG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC8qIG1lbnUgaXRlbSB1bmRlcmxpbmUgKi9cclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICY6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSA+ICBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gaSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiAubHMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmxtLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHN2ZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWcsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmICsgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc3BhY2luZy1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmctbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOm5vdCguc2hvdyk6bm90KC5zZkhvdmVyKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYmFkZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyB2YXIoLS1zcGFjaW5nLTJ4KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtZHJvcGRvd24td2lkdGgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5sbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHN2ZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWcgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYtY29sbGFwc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICYuaXMtcmlnaHQ6bm90KC5kcm9wZG93bi1tZWdhKSAuZHJvcGRvd24tbWVudSAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvOyAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5wdWxsLXJpZ2h0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxpLm5hdi1oZWFkZXItY29sbGFwc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgLm5hdi1oZWFkZXItaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwICB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCkgdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwubGFiZWwtZGVmYXVsdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxpLm5hdi1pdGVtLWJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5pcy1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZDpub3QoLmlzLXJpZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctaCk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgKyAubmF2LWl0ZW0tYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLXNwYWNpbmctYmV0d2Vlbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYnRuLXNwYWNpbmctYmV0d2Vlbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsaS5uYXYtaXRlbS1idG4gKyAuZGFyay1tb2RlLXN3aXRjaGVye1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpub3QoLnBhZ2UtdXNlci1sb2dnZWQpIHtcclxuICAgICAgICAgICAgLm15LWFjY291bnQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgLy8gaGlkZSBteSBhY2NvdW50IGVsZW1lbnQgZm9yIG5vdCBsb2dnZWQgaW4gdXNlclxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgICAmLnNjcm9sbC11cCB7XHJcbiAgICAgICAgICAgICAgICAuc3RpY2t5LW5hdmlnYXRpb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tb2RhbC1vcGVue1xyXG4gICAgJi5sYWdvbS1sYXlvdXQtdG9we1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoc20pIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIC5hcHAtbmF2LWhlYWRlcntcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5vcmRlci1zdW1tYXJ5LW1vYiB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYm90dG9tLWFjdGlvbi1zdGlja3kge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zY3JvbGxpbmd7XHJcbiAgICAgICAgICAgIC5zdGlja3ktbmF2aWdhdGlvbntcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNjcm9sbGJhci13aWR0aCwgMTdweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKG1kKSB7XHJcbiAgICAgICAgLmFwcC1uYXYtaGVhZGVye1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zY3JvbGxiYXItd2lkdGgsIDE3cHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgLSBUb3AgQ29uZGVuc2VkIE5hdmlnYXRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmxhZ29tLWxheW91dC1jb25kZW5zZWQge1xyXG4gICAgLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50b3AtbmF2IHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICAuY2xpZW50LWF2YXRhci0tc21hbGwgaW1nIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFwcC1uYXYtbWVudSB7XHJcbiAgICAgICAgLmxvZ28sXHJcbiAgICAgICAgLmxvZ28gPiBpbWcge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtbG9nby1oZWlnaHQpO1xyXG4gICAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lOyAgXHJcbiAgICAgICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsgICAgXHJcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOyAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAobGcpIHtcclxuICAgIC5sYWdvbS1sYXlvdXQtY29uZGVuc2VkIHtcclxuICAgICAgICAuYXBwLW5hdi1oZWFkZXIge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1oZWFkZXItaGVpZ2h0KTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLWhlYWRlci1ib3JkZXItYm90dG9tKTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgLm15LWFjY291bnQgLmFjdGl2ZS1jbGllbnQge1xyXG4gICAgICAgICAgICAgICAgc3Bhbjpub3QoLml0ZW0tdGV4dCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmFwcC1uYXYtbWVudSB7XHJcbiAgICAgICAgICAgIC5sb2dvIHsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLWxvZ28tc3BhY2luZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbG9nby1zcGFjaW5nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgIGZsZXg6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctaCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy1oKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogdmFyKC0tYXBwLW5hdi1oZWFkZXItaGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICAmID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctdikgdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtaGVhZGVyLWhlaWdodCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYubmF2LWl0ZW0tYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHsgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLnB1bGwtcmlnaHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsaTpub3QoLm5hdi1pdGVtLWJ0bikgKyBsaS5uYXYtaXRlbS1idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLW1lbnUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxpLm5hdi1pdGVtLWJ0biArIC5kYXJrLW1vZGUtc3dpdGNoZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1tZW51LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1jb25kZW5zZWQtbWVudS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBmYWRlSW5Eb3duIGFuaW1hdGlvbiBcclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBrZXlmcmFtZXMgZmFkZUluRG93biB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgLSBUb3AgTmF2aWdhdGlvbiAtIFN0eWxlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLmxhZ29tLWxheW91dC10b3Age1xyXG4gICAgLmFwcC1uYXYge1xyXG4gICAgICAgIHVsLnRvcC1uYXYge1xyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVudS1ob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICAmLnNmSG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgLmxhZ29tLWxheW91dC10b3Age1xyXG4gICAgICAgIC5hcHAtbmF2IHtcclxuICAgICAgICAgICAgJi1wcmltYXJ5IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmctaCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1zZWNvbmRhcnkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnLWgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtbWVudSB7XHJcbiAgICAgICAgICAgICAgICAmLXByaW1hcnksXHJcbiAgICAgICAgICAgICAgICAmLXNlY29uZGFyeXtcclxuICAgICAgICAgICAgICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5scyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAubHMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmRyb3Bkb3duLW1lbnUtaG92ZXI6bm90KC5zaG93KTpub3QoLnNmSG92ZXIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYTpub3QoLmJ0bil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5scyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhOm5vdCguYnRuKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtaXRlbS1idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmJ0bi1wcmltYXJ5IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAubG9nby10ZXh0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1wcmltYXJ5IHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnLWgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1zZWNvbmRhcnl7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnLWgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5sYWdvbS1sYXlvdXQtdG9wLFxyXG4ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSB7XHJcbiAgICAuYXBwLW5hdiB7XHJcbiAgICAgICAgJi1wcmltYXJ5LFxyXG4gICAgICAgICYtc2Vjb25kYXJ5e1xyXG4gICAgICAgICAgICB1bC50b3AtbmF2IHtcclxuICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuc2ZIb3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAubHMtY2FyZXR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmxzLWNhcmV0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuc2ZIb3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAmLnNob3d7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5scy1jYXJldCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaXRlbS10ZXh0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5scy1jYXJldCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLm15LWFjY291bnQge1xyXG4gICAgICAgICAgICAgICAgICAgIC5hY3RpdmUtY2xpZW50IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Bhbjpub3QoLml0ZW0tdGV4dCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYXBwLW5hdi1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1ibG9jay1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgLmxvZ28tdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IC0gR2VuZXJhbFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ubGFnb20tbGF5b3V0LWxlZnQsXHJcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIHtcclxuICAgICYubGFnb20tZGVwdGgucGFnZS1sb2dpbntcclxuICAgICAgICAubWFpbi10b3B7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvZHktYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWFpbi1mb290ZXJ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvZHktYmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hcHAtbmF2IHtcclxuICAgICAgICAubWVudSBsaS5hY3RpdmUgPiBhOmFmdGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubWFpbi1oZWFkZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgJi5zY3JvbGxpbmcge1xyXG4gICAgICAgIC5zdGlja3ktbmF2aWdhdGlvbiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIC8vei1pbmRleDogOTk5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpeyBcclxuICAgICAgICAmLnNjcm9sbC11cCB7XHJcbiAgICAgICAgICAgIC5zdGlja3ktbmF2aWdhdGlvbiB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1vdmVybGF5LWJnKTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLW92ZXJsYXktc2hhZG93KTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IC4zcztcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbmF2YmFyLWZpeGVkKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgLy8gLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgIC8vICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zY3JvbGxlZC10b3Age1xyXG4gICAgICAgIC5zdGlja3ktbmF2aWdhdGlvbiB7XHJcbiAgICAgICAgICAgICYuc3RpY2t5LW5hdmlnYXRpb24tLWRlZmF1bHQge1xyXG4gICAgICAgICAgICAgICAgI2hlYWRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3RpY2t5LW5hdmlnYXRpb257XHJcbiAgICAgICAgJi5zdGlja3ktbmF2aWdhdGlvbi0tc3RpY2t5e1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubGFnb20tbGF5b3V0LWxlZnR7XHJcbiAgICAuYXBwLW5hdntcclxuICAgICAgICAubWVudS1wcmltYXJ5e1xyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICAgICAgICAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYmFkZ2V7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmJhZGdlLXByaW1hcnktZmFkZWR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJhZGdlLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLXByaW1hcnktYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5iYWRnZXsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5uYXYtaXRlbS10ZXh0LW9ubHkpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaXRlbS10ZXh0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYWRnZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyAuaXRlbS10ZXh0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubmF2LWJhZGdle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuaGlkZGVue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmJhZGdleyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoeGwpIHtcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCxcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIHtcclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5hcHAtbWFpbiB7XHJcbiAgICAgICAgICAgIC5tYWluLXRvcCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChzbSkge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGModmFyKC0tbGF5b3V0LWxlZnQtY29udGFpbmVyLWd1dHRlcikgKyB2YXIoLS1jb250YWluZXIteGwtbWF4LXdpZHRoKSk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tbGF5b3V0LWxlZnQtY29udGFpbmVyLWd1dHRlcik7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWxheW91dC1sZWZ0LWNvbnRhaW5lci1ndXR0ZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCAtIE5hdmlnYXRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5hbGVydC5hbGVydC1mbG9hdGluZ3tcclxuICAgICAgICAgICAgbGVmdDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZHRoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmFwcC1uYXY6bm90KC5hcHAtbmF2LW9ubHktbG9nbykge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgei1pbmRleDogMTAwNDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtbGVmdC13aWR0aCk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWFwcC1uYXYtbGVmdC1ib3gtc2hhZG93KTtcclxuICAgICAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTsgXHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hcHAtbmF2IHtcclxuICAgICAgICAgICAgLmFwcC1uYXYtaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgICYgPiAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAudG9wLW5hdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IC1tb3otc2Nyb2xsYmFycy1ub25lO1xyXG4gICAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgIHRvdWNoLWFjdGlvbjogYXV0bztcclxuICAgICAgICAgICAgLW1zLXRvdWNoLWFjdGlvbjogYXV0bztcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgJiA+IC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tZW51IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJiA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5pcy1yaWdodCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmICsgLmlzLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5pcy1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJiA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gaSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IC5pdGVtLXRleHQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVnYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVtLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpID4gYSA+IGkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LWxlZnQtZHJvcGRvd24taWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWFwcC1uYXYtbGVmdC1kcm9wZG93bi1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1wYXJlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyAuZHJvcGRvd24tbWVudS1wYXJlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtaGVhZGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctdikgdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtbGlzdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1pdGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3ZnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaW1nICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtc2lkZWJhcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpOyAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtZ3JhcGhpY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnByZWRlZmluZWQtZ3JhcGhpY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDcycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9tby1zbGlkZXItaWNvbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGltZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIC5kcm9wZG93bi1tZW51LXNpZGViYXItZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICYgPiAubmF2LWl0ZW0tYnRuIHsgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICYgPiAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJiArIC5uYXYtaXRlbS1idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tZW51LXJpZ2h0LFxyXG4gICAgICAgICAgICAubWVudS1sYW5ndWFnZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgXHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMCAhaW1wb3J0YW50IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hcHAtbWFpbixcclxuICAgICAgICAuYm90dG9tLWFjdGlvbi1zdGlja3kuaXMtZml4ZWQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWR0aCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZHRoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhhcyguYXBwLW5hdi1vbmx5LWxvZ28pe1xyXG4gICAgICAgICAgICAuYXBwLW1haW57XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5wYWdlLXR5cGUtZnVsbCB7XHJcbiAgICAgICAgICAgIC5hcHAtbWFpbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICAgIFxyXG4gICAgICAgIDotbW96LWFueShib2R5KSAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0Oi0xNHB4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteTpzY3JvbGw7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206LTE0cHghaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBvdmVyZmxvdy14OnNjcm9sbDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogU3R5bGVzIGZvciBsZWZ0IG5hdmlnYXRpb24gb25seSAqL1xyXG4gICAgXHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQge1xyXG4gICAgICAgIC5hcHAtbmF2LWhlYWRlciB7XHJcbiAgICAgICAgICAgID4gLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICAgICAgJiA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJiA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstcGFkZGluZy12KSB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gc3ZnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gaW1nIHsgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiAubHMtY2FyZXQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi1sZWZ0LXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtbGVmdC1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LWxlZnQtc3ZnLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5vcGVuLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnNmSG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3ZnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLnNmSG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuLFxyXG4gICAgICAgICAgICAgICAgICAgICYuc2hvdyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5zZkhvdmVyKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYmFkZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLXdpZHRoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYXBwLW5hdi1sZWZ0LWJveC1zaGFkb3cpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMycHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUtYm9keTpmaXJzdC1vZi10eXBle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4KSB2YXIoLS1zcGFjaW5nLTN4KSB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuZGFyay1tb2RlLXN3aXRjaGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy12KSB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmRhcmstbW9kZS1zd2l0Y2hlci5pcy1yaWdodDpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYgPiAubmF2LWl0ZW0tYnRuIHsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLXBhZGRpbmctdikgdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstcGFkZGluZy1oKTsgICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJiA+IGxpOm5vdCgubmF2LWl0ZW0tdGV4dC1vbmx5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJiA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IGksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBzdmcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBpbWcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgKyBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgXHJcbiAgICB9XHJcbn1cclxuLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4ubGFnb20tbGF5b3V0LWxlZnQtd2lkZSB7XHJcbiAgICAuYXBwLW1haW4ge1xyXG4gICAgICAgIHVsLnRvcC1uYXYge1xyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVudS1ob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICAmLnNmSG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5sYWdvbS1sYXlvdXQtbGVmdCxcclxuLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgLmFwcC1uYXYtbWVudSB7XHJcbiAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICAmID4gbGkge1xyXG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgIC5uYXYtaGVhZGVyLWNvbGxhcHNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAubmF2LWhlYWRlci1pdGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubmF2LWhlYWRlci10ZXh0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tY29sbGFwc2UtYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA0cHggdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpIHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cy1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICgyICogdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpID4gYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubmF2LWhlYWRlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IC0gU3R5bGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBtaXhpbiBsZWZ0LW5hdi1tZW51LWRlZmF1bHQoKSB7XHJcbiAgICAmID4gbGkge1xyXG4gICAgICAgICYgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1jb2xvcik7IFxyXG4gICAgICAgICAgICAmID4gaSxcclxuICAgICAgICAgICAgJiA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJiA+IC5scy1jYXJldCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxlIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgID4gaSxcclxuICAgICAgICAgICAgICAgICYgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYub3BlbixcclxuICAgICAgICAmLnNmSG92ZXIge1xyXG4gICAgICAgICAgICAmID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC1saW5rLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgID4gaSxcclxuICAgICAgICAgICAgICAgID4gc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmUsJi5vcGVuIHtcclxuICAgICAgICAgICAgJjpub3QoLm9wZW4pID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstYWN0aXZlLWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgPiBpLFxyXG4gICAgICAgICAgICAgICAgPiAubHMtY2FyZXQge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgLmRyb3Bkb3duLWhlYWRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWl4aW4gbGVmdC1uYXYtbWVudS1wcmltYXJ5KCkge1xyXG4gICAgJiA+IGxpIHtcclxuICAgICAgICAmID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmID4gaSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLm9wZW4sXHJcbiAgICAgICAgICAgICYuc2ZIb3ZlcixcclxuICAgICAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IGksXHJcbiAgICAgICAgICAgICAgICA+IHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWljb24taG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgPiAuYmFkZ2UtZG90IHtcclxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWN0aXZlOm5vdCgub3BlbikgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSA+IGE6bm90KC5idG4pLCYub3BlbiA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staWNvbi1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgLmRyb3Bkb3duLWhlYWRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmRhcmstbW9kZS1zd2l0Y2hlci5pcy1yaWdodDpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5kcm9wZG93bi1tZWdhe1xyXG4gICAgICAgICAgICAubWVudS1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAubWVudS1pdGVtLWRlc2N7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWl4aW4gbGVmdC1uYXYtbWVudS1zZWNvbmRhcnkoKSB7XHJcbiAgICAmID4gbGkge1xyXG4gICAgICAgICYgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXJ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYgPiBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5vcGVuLFxyXG4gICAgICAgICAgICAmLnNmSG92ZXIsXHJcbiAgICAgICAgICAgICYuYWN0aXZlLFxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICAgICAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IGksXHJcbiAgICAgICAgICAgICAgICA+IHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staWNvbi1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXJ7XHJcbiAgICAgICAgICAgICAgICA+IC5iYWRnZS1kb3Qge1xyXG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZTpub3QoLm9wZW4pID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1hY3RpdmUtYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSA+IGE6bm90KC5idG4pLCYub3BlbiA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWljb24tYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgIC5kcm9wZG93bi1oZWFkZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5kYXJrLW1vZGUtc3dpdGNoZXIuaXMtcmlnaHQ6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLXNlY29uZGFyeS1kaXZpZGVyLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZHJvcGRvd24tbWVnYXtcclxuICAgICAgICAgICAgLm1lbnUtaXRlbS1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGZvb3RlciBmaXggb25seSBmb3IgZGVwdGggc3R5bGUgLy9cclxuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSl7XHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQsXHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSB7XHJcbiAgICAgICAgJi5sYWdvbS1kZXB0aDpub3QoLnBhZ2UtbG9naW4pIHsgXHJcbiAgICAgICAgICAgIC5tYWluLWZvb3RlciB7XHJcbiAgICAgICAgICAgICAgICAmOm5vdCgubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5KTpub3QoLm1haW4tZm9vdGVyLWV4dGVuZGVkLXByaW1hcnkpOm5vdCgubWFpbi1mb290ZXItZXh0ZW5kZWQtZ3JheSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8qIEZvciBzY3JlZW5zIGFib3ZlIDk5MnB4IE9OTFkgKi9cclxuXHJcbi8vU2FmYXJpIG9ubHkgY3NzXHJcbkBzdXBwb3J0cyAoLXdlYmtpdC1oeXBoZW5zOm5vbmUpe1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgLmxhZ29tLWxheW91dC1sZWZ0e1xyXG4gICAgICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgICAgIC5tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICA+IGxpLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYTpub3QoLmJ0bil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmFwcC1uYXYtZGVmYXVsdCB7XHJcbiAgICAgICAgICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY+IGxpLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhOm5vdCguYnRuKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmFwcC1uYXYtcHJpbWFyeSB7XHJcbiAgICAgICAgICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY+IGxpLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhOm5vdCguYnRuKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5hcHAtbmF2LXNlY29uZGFyeSB7XHJcbiAgICAgICAgICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY+IGxpLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhOm5vdCguYnRuKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5hcHAtbmF2LWRlZmF1bHQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtYmcpO1xyXG4gICAgICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgICAgIC5tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZWZ0LW5hdi1tZW51LWRlZmF1bHQoKTsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmFwcC1uYXYtcHJpbWFyeSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmcpO1xyXG4gICAgICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgICAgIC5tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZWZ0LW5hdi1tZW51LXByaW1hcnkoKTsgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmFwcC1uYXYtc2Vjb25kYXJ5IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKTtcclxuICAgICAgICAgICAgLmFwcC1uYXYtbWVudSB7XHJcbiAgICAgICAgICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbGVmdC1uYXYtbWVudS1zZWNvbmRhcnkoKTsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgLSBDb250YWluZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAobWQpe1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0IC5jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tbGF5b3V0LWxlZnQtY29udGFpbmVyLWd1dHRlcik7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tbGF5b3V0LWxlZnQtY29udGFpbmVyLWd1dHRlcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGF5b3V0IExlZnQgLSBCb3R0b20gU3RpY2t5XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAobGcpIHtcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdCxcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIHtcclxuICAgICAgICAmLnBhZ2UtY2xpZW50YXJlYWRvbWFpbnMge1xyXG4gICAgICAgICAgICAuYm90dG9tLWFjdGlvbi1zdGlja3kge1xyXG4gICAgICAgICAgICAgICAgLmNvbnRlbnQtYWN0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5jb250ZW50LWRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4gKGxnLCBsZykge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgeyAgICAgXHJcbiAgICAgICAgJi5wYWdlLWNsaWVudGFyZWFkb21haW5zIHtcclxuICAgICAgICAgICAgLmJvdHRvbS1hY3Rpb24tc3RpY2t5IHtcclxuICAgICAgICAgICAgICAgIC5jb250ZW50ICsgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IFdpZGUgLSBOYXZpZ2F0aW9uXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBtaXhpbiBsZWZ0LXdpZGUtbmF2LW1lbnUoKSB7XHJcbiAgICA+IGxpIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgJiA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLXYpIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgJiA+IHN2ZyxcclxuICAgICAgICAgICAgJiA+IGltZyxcclxuICAgICAgICAgICAgJiA+IGksXHJcbiAgICAgICAgICAgICYgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgKyAuaXRlbS10ZXh0IHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktbmF2LWxpbmstaWNvbi1zcGFjaW5nLWxnKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmctbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmID4gYiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJiA+IHN2ZyxcclxuICAgICAgICAgICAgJiA+IGltZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICB9ICAgXHJcbiAgICAgICAgICAgID4gaW1nIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgIH0gICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bm90KC5vcGVuKSA+IGE6bm90KC5idG4pIHsgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLWhvdmVyLXBhZGRpbmctaCkgKyB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctaCkpOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAmLm9wZW4sXHJcbiAgICAgICAgJi5zaG93LFxyXG4gICAgICAgICYuaXRlbS1vcGVuLFxyXG4gICAgICAgICYuc2ZIb3ZlciAge1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5uYXYtaXRlbS10ZXh0LW9ubHl7XHJcbiAgICAgICAgICAgICYgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgICAgICAmID4gc3ZnLFxyXG4gICAgICAgICAgICAgICAgJiA+IGksXHJcbiAgICAgICAgICAgICAgICAmID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgKyAuaXRlbS10ZXh0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5kYXJrLW1vZGUtc3dpdGNoZXJ7XHJcbiAgICAgICAgICAgIGxhYmVse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1saW5rLXBhZGRpbmctdikgdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZGFyay1tb2RlLXN3aXRjaGVyLmlzLXJpZ2h0Omxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiA+IGxpIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogMnB4IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctaCkgdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tcGFkZGluZy12KTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tcGFkZGluZy1oKSArIGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtc3ZnLWljb24tc2l6ZSkgLyAyKSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgJjpub3QoLmRyb3Bkb3duLW1lbnUtY29sbGFwc2Upe1xyXG4gICAgICAgICAgICAmID4gbGksIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSwuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVtIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1ib3JkZXItbGVmdCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLXVpLW5hdi1saW5rLWJvcmRlci1yYWRpdXMpIHZhcigtLXVpLW5hdi1saW5rLWJvcmRlci1yYWRpdXMpIDA7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tYm9yZGVyLWxlZnQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLW5hdi1saW5rLWJvcmRlci1yYWRpdXMpIDAgMCB2YXIoLS11aS1uYXYtbGluay1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tcGFkZGluZy1oKSAtIGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSkgLyAyKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tcGFkZGluZy1oKSAtIGNhbGModmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSkgLyAyKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgY2FsYygodmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tc2l6ZSkgLSB2YXIoLS1hcHAtbmF2LWxlZnQtZHJvcGRvd24taWNvbi1zaXplKSkgLyAyICsgdmFyKC0tc3BhY2luZy0yeCkpIDAgY2FsYygodmFyKC0tYXBwLW5hdi1sZWZ0LWljb24tc2l6ZSkgLSB2YXIoLS1hcHAtbmF2LWxlZnQtZHJvcGRvd24taWNvbi1zaXplKSkgLyAyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGNhbGMoKHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLXNpemUpIC0gdmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSkpIC8gMikgMCBjYWxjKCh2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKSAtIHZhcigtLWFwcC1uYXYtbGVmdC1kcm9wZG93bi1pY29uLXNpemUpKSAvIDIgKyB2YXIoLS1zcGFjaW5nLTJ4KSkgO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYubmF2LWRpdmlkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cywgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgJjphY3RpdmUgeyAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgJjpub3QoLmFjdGl2ZSkgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tbGluay1ob3Zlci1wYWRkaW5nLWgpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWxpbmstaG92ZXItcGFkZGluZy1oKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmJhZGdlLWluZm8sLmJhZGdlLWRhbmdlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTJweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWhvdmVyLXBhZGRpbmctaCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tbGluay1ob3Zlci1wYWRkaW5nLWgpKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmJhZGdlLWluZm8sLmJhZGdlLWRhbmdlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OnZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmJhZGdlLWluZm8sIC5iYWRnZS1kYW5nZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLm5hdi1oZWFkZXItY29sbGFwc2V7XHJcbiAgICAgICAgICAgIC5uYXYtaGVhZGVyLWl0ZW17XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIC5uYXYtaGVhZGVyLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ICAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmRyb3Bkb3duLW1lbnUtY29sbGFwc2V7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgICAgICBtYXJnaW46IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cy1sZyk7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAwO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKSk7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIC5uYXYtZGl2aWRlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXYtaGVhZGVyLWNvbGxhcHNle1xyXG4gICAgICAgICAgICAubmF2LWhlYWRlci1pdGVte1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICBcclxuICAgICAgICAuZHJvcGRvd24taGVhZGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRyb3Bkb3duLW1lbnUtY29udGVudHtcclxuICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtcGFyZW50e1xyXG4gICAgICAgICAgICAgICAgKyAuZHJvcGRvd24tbWVudS1wYXJlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLm5hdi1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4OyAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgICAgICAgICAmLWxpc3R7XHJcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS11aS1uYXYtbGluay1ib3JkZXItcmFkaXVzKSB2YXIoLS11aS1uYXYtbGluay1ib3JkZXItcmFkaXVzKSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1pdGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHN2ZyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaW1nICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRyb3Bkb3duLW1lbnUtc2lkZWJhcntcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAmLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIC8vIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTsgICAgICAgXHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWdyYXBoaWN7XHJcbiAgICAgICAgICAgICAgICAmLnByZWRlZmluZWQtZ3JhcGhpY3tcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC5wcm9tby1zbGlkZXItaWNvbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiBpbWcsXHJcbiAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICArIC5kcm9wZG93bi1tZW51LXNpZGViYXItZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgIH0gICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmNsaWVudC1hbGVydHN7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IFxyXG4gICAgICAgICAgICAuY2xpZW50LWFsZXJ0cy1oZWFkZXJ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gbGl7XHJcbiAgICAgICAgICAgICAgICAmW21lbnVpdGVtbmFtZT1cIkFsZXJ0XzBcIl17XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID4gYTpub3QoLmJ0bil7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYgPiBsaS5uYXYtaXRlbS1idG4geyAgICAgICAgXHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1wYWRkaW5nLXYpIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKTsgXHJcbiAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLXBhZGRpbmctaCkgKyBjYWxjKHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXN2Zy1pY29uLXNpemUpIC8gMiAtIHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWxpbmstcGFkZGluZy1oKSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmICsgLm5hdi1pdGVtLWJ0biB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUgIHtcclxuICAgICAgICAuYXBwLW5hdntcclxuICAgICAgICAgICAgJjpub3QoLmFwcC1uYXYtb25seS1sb2dvKXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS13aWR0aCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmFwcC1uYXYtbWVudSAubWVudSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxlZnQtd2lkZS1uYXYtbWVudSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCBXaWRlIC0gTmF2aWdhdGlvbiBTdHlsZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5AbWl4aW4gbGVmdC13aWRlLW5hdi1tZW51LWRlZmFsdCgpIHtcclxuICAgICYgPiBsaSB7XHJcbiAgICAgICAgJi5hY3RpdmUsJi5vcGVuIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtbGluay1hY3RpdmUtYmcpOyAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51ID4gbGksIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSwuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVte1xyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tdWktbmF2LWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLm9wZW4ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1vcGVuLWJnKTsgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYgPiBsaSAuZHJvcGRvd24tbWVudSwgJiA+IGxpIC5kcm9wZG93bi1tZW51LWxpc3Qge1xyXG4gICAgICAgICYgPiBsaSw+LmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XHJcbiAgICAgICAgICAgIC8vICYgPiBhIHtcclxuICAgICAgICAgICAgLy8gICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWNvbG9yKTsgXHJcbiAgICAgICAgICAgIC8vICAgICAmID4gaSB7XHJcbiAgICAgICAgICAgIC8vICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgJiA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAmID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWljb24taG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLWljb24tYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWl4aW4gbGVmdC13aWRlLW5hdi1tZW51LXByaW1hcnkoKSB7XHJcbiAgICAmID4gbGkge1xyXG4gICAgICAgICYuYWN0aXZlLCYub3BlbiB7XHJcbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51ID4gbGksIC5kcm9wZG93bi1tZW51LWxpc3QgPiBsaSwuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1pdGVtcyAuZHJvcGRvd24tbWVudS1pdGVte1xyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tcHJpbWFyeS1ibG9jay1kaXZpZGVyLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5vcGVuLFxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tb3Blbi1iZy1vbi1wcmltYXJ5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lcntcclxuICAgICAgICAgICAgPiAuYmFkZ2UtZG90IHtcclxuICAgICAgICAgICAgICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5kYXJrLW1vZGUtc3dpdGNoZXIuaXMtcmlnaHQ6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLXNlY29uZGFyeS1kaXZpZGVyLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiA+IGxpIC5kcm9wZG93bi1tZW51LCAmID4gbGkgLmRyb3Bkb3duLW1lbnU6bm90KC5kcm9wZG93bi1tZW51LWNvbGxhcHNlKSAuZHJvcGRvd24tbWVudS1saXN0IHtcclxuICAgICAgICAubmF2LWhlYWRlci1pdGVtLFxyXG4gICAgICAgIC5uYXYtaGVhZGVye1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm5hdi1oZWFkZXItaXRlbXtcclxuICAgICAgICAgICAgYixcclxuICAgICAgICAgICAgc3BhbiA+IGkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1pY29uLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmID4gbGksPi5kcm9wZG93bi1tZW51LWl0ZW1zIC5kcm9wZG93bi1tZW51LWl0ZW17XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgJiA+IGE6bm90KC5idG4pLCAgJiA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWljb24taG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgJiA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWJnKTtcclxuICAgICAgICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1pY29uLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXYtaGVhZGVyLWl0ZW06bm90KC5jb2xsYXBzZWQpLFxyXG4gICAgICAgIC5uYXYtaGVhZGVyLWl0ZW06aG92ZXIsIFxyXG4gICAgICAgIC5uYXYtaGVhZGVyLWl0ZW06Zm9jdXN7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICBiLFxyXG4gICAgICAgICAgICBzcGFuID4gaSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWhvdmVyLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kcm9wZG93bi1tZW51LWNvbGxhcHNle1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hcHAtbmF2LWxlZnQtd2lkZS1kcm9wZG93bi1vcGVuLWJnLW9uLXByaW1hcnkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmNsaWVudC1hbGVydHN7XHJcbiAgICAgICAgICAgID5saXtcclxuICAgICAgICAgICAgICAgID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYudGV4dC1wcmltYXJ5e2NvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXItMikhaW1wb3J0YW50O31cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi50ZXh0LWluZm97Y29sb3I6IHZhcigtLWJyYW5kLWluZm8tbGlnaHRlci0yKSFpbXBvcnRhbnQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRleHQtZGFuZ2Vye2NvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci0yKSFpbXBvcnRhbnQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRleHQtd2FybmluZ3tjb2xvcjogdmFyKC0tYnJhbmQtd2FybmluZy1saWdodGVyLTIpIWltcG9ydGFudDt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYudGV4dC1zdWNjZXNze2NvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMikhaW1wb3J0YW50O31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBsaTpub3QoOmxhc3Qtb2YtdHlwZSl7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBsZWZ0LXdpZGUtbmF2LW1lbnUtc2Vjb25kYXJ5KCkge1xyXG4gICAgJiA+IGxpIHtcclxuICAgICAgICAmLmFjdGl2ZSwmLm9wZW4ge1xyXG4gICAgICAgICAgICAuZHJvcGRvd24tbWVudSA+IGxpLCAuZHJvcGRvd24tbWVudS1saXN0ID4gbGksLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbXtcclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLXNlY29uZGFyeS1ibG9jay1kaXZpZGVyLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5vcGVuLFxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtZHJvcGRvd24tb3Blbi1iZy1vbi1zZWNvbmRhcnkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVye1xyXG4gICAgICAgICAgICA+IC5iYWRnZS1kb3Qge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZGFyay1tb2RlLXN3aXRjaGVyLmlzLXJpZ2h0Omxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYgPiBsaSAuZHJvcGRvd24tbWVudSwgJiA+IGxpIC5kcm9wZG93bi1tZW51Om5vdCguZHJvcGRvd24tbWVudS1jb2xsYXBzZSkgLmRyb3Bkb3duLW1lbnUtbGlzdCB7XHJcbiAgICAgICAgLm5hdi1oZWFkZXItaXRlbSxcclxuICAgICAgICAubmF2LWhlYWRlcntcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm5hdi1oZWFkZXItaXRlbXtcclxuICAgICAgICAgICAgYixcclxuICAgICAgICAgICAgc3BhbiA+IGkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWljb24taG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgPiBsaSw+LmRyb3Bkb3duLW1lbnUtaXRlbXMgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICYgPiBhOm5vdCguYnRuKSwgJiA+IGE6bm90KC5idG4pIHNwYW4ubWVudS1pdGVtLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1pY29uLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAmID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1ob3Zlci1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWJnKTtcclxuICAgICAgICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaWNvbi1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubmF2LWhlYWRlci1pdGVtOm5vdCguY29sbGFwc2VkKSxcclxuICAgICAgICAubmF2LWhlYWRlci1pdGVtOmhvdmVyLCBcclxuICAgICAgICAubmF2LWhlYWRlci1pdGVtOmZvY3Vze1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICBiLFxyXG4gICAgICAgICAgICBzcGFuID4gaSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRyb3Bkb3duLW1lbnUtY29sbGFwc2V7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLWRyb3Bkb3duLW9wZW4tYmctb24tc2Vjb25kYXJ5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5jbGllbnQtYWxlcnRze1xyXG4gICAgICAgICAgICA+bGl7XHJcbiAgICAgICAgICAgICAgICA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRleHQtcHJpbWFyeXtjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyLTIpIWltcG9ydGFudDt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYudGV4dC1pbmZve2NvbG9yOiB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMikhaW1wb3J0YW50O31cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi50ZXh0LWRhbmdlcntjb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMikhaW1wb3J0YW50O31cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi50ZXh0LXdhcm5pbmd7Y29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci0yKSFpbXBvcnRhbnQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRleHQtc3VjY2Vzc3tjb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTIpIWltcG9ydGFudDt9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gbGk6bm90KDpsYXN0LW9mLXR5cGUpe1xyXG4gICAgICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogRm9yIHNjcmVlbnMgYWJvdmUgOTkycHggT05MWSAqL1xyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5hcHAtbmF2LWRlZmF1bHQge1xyXG4gICAgICAgICAgICAuYXBwLW5hdi1tZW51IC5tZW51IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxlZnQtd2lkZS1uYXYtbWVudS1kZWZhbHQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYXBwLW5hdi1wcmltYXJ5IHtcclxuICAgICAgICAgICAgLmFwcC1uYXYtbWVudSAubWVudSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZWZ0LXdpZGUtbmF2LW1lbnUtcHJpbWFyeSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hcHAtbmF2LXNlY29uZGFyeSB7XHJcbiAgICAgICAgICAgIC5hcHAtbmF2LW1lbnUgLm1lbnUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGVmdC13aWRlLW5hdi1tZW51LXNlY29uZGFyeSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IFdpZGUgLSBCb2R5XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi8qIEZvciBzY3JlZW5zIGFib3ZlIDk5MnB4IE9OTFkgKi9cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAobGcpIHtcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIHtcclxuICAgICAgICAuYXBwLW1haW4ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtd2lkdGgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXdpZHRoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYWxlcnQuYWxlcnQtZmxvYXRpbmd7XHJcbiAgICAgICAgICAgIGxlZnQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXdpZHRoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5wYWdlLXR5cGUtZnVsbCB7XHJcbiAgICAgICAgICAgIC5hcHAtbWFpbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnBhZ2UtdHlwZS1mdWxsIHtcclxuICAgICAgICAgICAgLmFwcC1tYWluIHtcclxuICAgICAgICAgICAgICAgIC5tYWluLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCBXaWRlIC0gQ29udGVudFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwICh4bCkge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5pcy1hZmZpeGVkIC5vcmRlci1zdW1tYXJ5IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCBXaWRlIC0gQ29udGFpbmVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZyl7XHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSB7XHJcbiAgICAgICAgLm9yZGVyLXN1bW1hcnktbW9iIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgLnN1bW1hcnktY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAub3JkZXItc3VtbWFyeS1hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5tYWluLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAobWQpIHtcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIHtcclxuICAgICAgICAub3JkZXItc3VtbWFyeS1tb2Ige1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgLnN1bW1hcnktY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICBcclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCBXaWRlIC0gQm90dG9tIFN0aWNreVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4vKiBGb3Igc2NyZWVucyBhYm92ZSA5OTJweCBPTkxZICovXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAgKGxnKSB7XHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSB7XHJcbiAgICAgICAgLmJvdHRvbS1hY3Rpb24tc3RpY2t5LmlzLWZpeGVkIHsgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtd2lkdGgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWFwcC1uYXYtbGVmdC13aWRlLXdpZHRoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCBXaWRlIC0gTWFpblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5sYWdvbS1sYXlvdXQtd2lkZSB7XHJcbiAgICAubWFpbi1zaWRlYmFyIHtcclxuICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbiAobWQsIG1kKSB7XHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSB7XHJcbiAgICAgICAgLnBhbmVsLXNpZGViYXIgPiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygzMyUgLSAxNnB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmhpZGRlbi1zbSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxheW91dCBMZWZ0IFdpZGUgLSBPcmRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIHtcclxuICAgICAgICAjc3RpY2t5LXNpZGViYXIuaXMtYWZmaXhlZCAuaW5uZXItd3JhcHBlci1zdGlja3l7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1haW4tZ3JpZC1vcmRlciAubWFpbi1jb250ZW50IC5vcmRlci1zaWRlYmFyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWFpbi1ncmlkLW9yZGVyIC5tYWluLWNvbnRlbnQgLm9yZGVyLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBmbGV4OiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm9yZGVyLXN1bW1hcnktbW9iIC50b3RhbC1kdWUtdG9kYXkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5vcmRlci1zdW1tYXJ5LW1vYiAuYnRuLmhpZGRlbi1tZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNhdGVnb3JpZXMtY29sbGFwc2VkLnZpc2libGUteHMge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKGxnKSB7XHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSB7XHJcbiAgICAgICAgLm9yZGVyLXN1bW1hcnktbW9iIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgbGVmdDogdmFyKC0tYXBwLW5hdi1sZWZ0LXdpZGUtd2lkdGgpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbmF2YmFyLWZpeGVkKTtcclxuICAgICAgICAgICAgd2lkdGg6IHVuc2V0IWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5vcmRlci1zdW1tYXJ5LW1vYiB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk5hdmlnYXRpb24gTWVudSBvbiBNb2JpbGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgXHJcbiAgICAubGFnb217XHJcbiAgICAgICAgJjpub3QoLm5hdi1tb2JpbGUtZHJvcGRvd24pe1xyXG5cclxuICAgICAgICAgICAgLmFwcC1uYXYtbWVudSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgei1pbmRleDogdmFyKC0temluZGV4LW5hdmJhci1maXhlZCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tbW9iLWFwcC1uYXYtd2lkdGgpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tbW9iLWFwcC1uYXYtbWVudS1wYWRkaW5nLWgpIDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1hcHAtbmF2LWxlZnQtYm94LXNoYWRvdyk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW1vYi1hcHAtbmF2LWJnKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTEgKiB2YXIoLS1tb2ItYXBwLW5hdi13aWR0aCkgLSAyNHB4KSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1tb2ItYXBwLW5hdi13aWR0aCkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5sb2dvIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxlZnQtbmF2LW1lbnUtZGVmYXVsdCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxlZnQtd2lkZS1uYXYtbWVudSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxlZnQtd2lkZS1uYXYtbWVudS1kZWZhbHQoKTtcclxuICAgICAgICAgICAgICAgICAgICAmID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gYTpub3QoLmJ0bikgeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYXBwLW5hdi1sZWZ0LWxpbmstZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtbGluay1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gaSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWFwcC1uYXYtbGVmdC1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJiA+IC5pdGVtLXRleHQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5pdGVtLXRleHQtYmFkZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpID4gYSA+IGkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi1sZWZ0LWRyb3Bkb3duLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxlZnQtZHJvcGRvd24taWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWFwcC1uYXYtbGVmdC1kcm9wZG93bi1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVnYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmFwcC1uYXYtcHJpbWFyeSB7XHJcbiAgICAgICAgICAgICAgICAuYXBwLW5hdi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxlZnQtbmF2LW1lbnUtcHJpbWFyeSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZWZ0LXdpZGUtbmF2LW1lbnUtcHJpbWFyeSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93bi1tZWdhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW0tY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbS1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJiA+IGE6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gLmxzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gLmxzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYXBwLW5hdi1zZWNvbmRhcnkge1xyXG4gICAgICAgICAgICAgICAgLmFwcC1uYXYtbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKTtcclxuICAgICAgICAgICAgICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxlZnQtbmF2LW1lbnUtc2Vjb25kYXJ5KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxlZnQtd2lkZS1uYXYtbWVudS1zZWNvbmRhcnkoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiA+IC5scyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gLmxzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5MYXlvdXQgTGVmdCBXaWRlIC0gUGFja2FnZSAtIHBhZ2UgdXBncmFkZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbkBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTYyMHB4KSB7XHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQtd2lkZSB7XHJcbiAgICAgICAgJi5wYWdlLXVwZ3JhZGUge1xyXG4gICAgICAgICAgICAubWFpbi1jb250ZW50ICB7XHJcbiAgICAgICAgICAgICAgICAuc2VjdGlvbi1ib2R5IHtcclxuICAgICAgICAgICAgICAgICAgICAucGFja2FnZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYtYWN0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQteGxnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblRvcCBOYXYgLSBHZW5lcmFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbnVsLnRvcC1uYXYge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAvLyBAaW5jbHVkZSBsdHIge1xyXG4gICAgLy8gICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgLy8gfVxyXG4gICAgLy8gQGluY2x1ZGUgcnRsIHtcclxuICAgIC8vICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAvLyB9ICAgIFxyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICA+IGxpLFxyXG4gICAgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgID4gbGkgeyAgXHJcbiAgICAgICAgJi5zaG93ID4gYTpub3QoLmJ0biksXHJcbiAgICAgICAgJi5vcGVuID4gYTpub3QoLmJ0biksXHJcbiAgICAgICAgJi5hY3RpdmUgPiBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgICAgICYsXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAuaXRlbS10ZXh0IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10b3AtbmF2LWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICYgPiBpLFxyXG4gICAgICAgICAgICAgICAgJiA+IC5scy1jYXJldCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRvcC1uYXYtbGluay1pY29uLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpub3QoLm5hdi1pdGVtLXRleHQtb25seSl7XHJcbiAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICAgIC5pdGVtLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5pdGVtLXRleHQtYmFkZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5iYWRnZS1kb3QsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5iYWRnZS1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpub3QoLm5hdi1pdGVtLWljb24tb25seSl7XHJcbiAgICAgICAgICAgID4gYXtcclxuICAgICAgICAgICAgICAgID5pOm5vdCgubHMtY2FyZXQpe1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7ICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLm5hdi1pdGVtLWljb24tb25seXtcclxuICAgICAgICAgICAgPmE6aGFzKD4gc3Bhbi5iYWRnZTpub3QoLmhpZGRlbiwub3BhY2l0eS0wKSl7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgIC5iYWRnZXtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gYTpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdG9wLW5hdi1saW5rLXBhZGRpbmctdikgdmFyKC0tdG9wLW5hdi1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10b3AtbmF2LWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICYgPiBpLFxyXG4gICAgICAgICAgICAmID4gLmxzLWNhcmV0LFxyXG4gICAgICAgICAgICAmID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciA+IGl7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdG9wLW5hdi1saW5rLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10b3AtbmF2LWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgJiA+IGksXHJcbiAgICAgICAgICAgICAgICAmID4gLmxzLWNhcmV0LFxyXG4gICAgICAgICAgICAgICAgJiA+IC5ub3RpZmljYXRpb24taWNvbi1jb250YWluZXIgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdG9wLW5hdi1saW5rLWljb24taG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmID4gLmxzLWNhcmV0IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYgPiBpOm5vdCgubHMtY2FyZXQpIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLW5hdi1saW5rLWljb24tc2l6ZSk7ICAgXHJcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgKyAuYmFkZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogLTRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYgPiBzdmcsXHJcbiAgICAgICAgICAgICYubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtc3ZnLWljb24tc2l6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJiA+IC5jbGllbnQtYXZhdGFyLFxyXG4gICAgICAgICAgICAmID4gLm5vdGlmaWNhdGlvbi1pY29uLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICArIC5pdGVtLXRleHQ6bm90KDplbXB0eSksXHJcbiAgICAgICAgICAgICAgICArIC5hY3RpdmUtY2xpZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktbmF2LWxpbmstaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1uYXYtbGluay1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmJ0bi1sb2dnZWQtaW4tYWRtaW4ge1xyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRvcC1uYXYtbGluay1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxhYmVsIHtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5sbS1iYXNrZXQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4OyAvLyB2aXN1YWwgcG9zaXRpb24gZml4XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5vcmRlci1uZWctMXtcclxuICAgICAgICAgICAgPiBhOm5vdCguYnRuKXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IGxhYmVsLnN3aXRjaHtcclxuICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy12KSB2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICA+IGE6bm90KC5idG4pe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IGxhYmVsLnN3aXRjaHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmID4gLmJ0biB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5uYXYtaXRlbS1jYXJ0e1xyXG4gICAgICAgICAgICAuYmFkZ2V7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudG9vbHRpcC1pbm5lciB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMDBweDtcclxuICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xyXG4gICAgICAgIHdpZHRoOiAyNTBweDtcclxuICAgIH1cclxuICAgICNsYW5ndWFnZUNob29zZXJDb250ZW50IHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAyODhweDtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgIH1cclxuICAgIC5hY2NvdW50IHtcclxuICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjAycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFkbWluLW1hc3F1ZXJhZGUtbm90aWNlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgcGFkZGluZzogMTJweDtcclxuICAgICAgICBtYXJnaW46IDEycHg7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICB0b3A6IGNhbGMoMTAwJSArIHZhcigtLXNwYWNpbmctMXgpKTtcclxuICAgICAgICAmOm5vdCguZHJvcGRvd24tbGlzdCkge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1uYXZiYXItZHJvcGRvd24tbWF4LWhlaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Ub3AgTmF2IC0gUmVzcG9uc2l2ZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgdWwudG9wLW5hdiB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAmLm5hdi1pdGVtLXRleHQtb25seXtcclxuICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1mbGFne1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5uYXYtaXRlbS1jYXJ0e1xyXG4gICAgICAgICAgICAgICAgLy8gVE9ETyByZW1vdmUgYWZ0ZXIgQ01TIDEuMC4yIHJlbGVhc2VcclxuICAgICAgICAgICAgICAgID4gYTpub3QoLmJ0bil7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdG9wLW5hdi1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvL1xyXG4gICAgICAgICAgICAgICAgJi5uYXYtaXRlbS1pY29uLW9ubHl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuYmFkZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogY2FsYyh2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy12KSAtIDJweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogY2FsYyh2YXIoLS10b3AtbmF2LWxpbmstcGFkZGluZy1oKSAtIDE0cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKHZhcigtLXRvcC1uYXYtbGluay1wYWRkaW5nLWgpIC0gMTRweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYubmF2LWl0ZW0tdGV4dC1vbmx5IHtcclxuICAgICAgICAgICAgICAgIGE6bm90KC5idG4pe1xyXG4gICAgICAgICAgICAgICAgICAgIGksXHJcbiAgICAgICAgICAgICAgICAgICAgc3ZnLFxyXG4gICAgICAgICAgICAgICAgICAgIGltZyxcclxuICAgICAgICAgICAgICAgICAgICAubm90aWZpY2F0aW9uLWljb24tY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAobWQpIHtcclxuICAgIHVsLnRvcC1uYXYge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgJi5hY2NvdW50IHtcclxuICAgICAgICAgICAgICAgIC5pdGVtLXRleHQsXHJcbiAgICAgICAgICAgICAgICAmID4gYSA+IGIge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bm90KC5uYXYtaXRlbS1jdXJyZW5jeSkgPiBhIHtcclxuICAgICAgICAgICAgICAgIC5pdGVtLXRleHQsXHJcbiAgICAgICAgICAgICAgICAuYWN0aXZlLWNsaWVudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuY2xpZW50LWF2YXRhciB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXYtaXRlbS1jYXJ0IHtcclxuICAgICAgICAgICAgLmJhZGdlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMHB4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogLTRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXHJcblxyXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL21haW4uY3NzL2Jsb2IvbWFzdGVyL3NyYy9fcHJpbnQuY3NzXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBQcmludCBzdHlsZXMuXHJcbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxyXG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5AbWVkaWEgcHJpbnQge1xyXG4gICAgKixcclxuICAgICo6OmJlZm9yZSxcclxuICAgICo6OmFmdGVyIHtcclxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXHJcbiAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxyXG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICY6bm90KC5idG4pIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcclxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xyXG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xyXG4gICAgLy99XHJcblxyXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcclxuICAgIC8vXHJcbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxyXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxyXG4gICAgLy9cclxuXHJcbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcclxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XHJcbiAgICAvLyBjb250ZW50OiBcIlwiO1xyXG4gICAgLy99XHJcblxyXG4gICAgcHJlIHtcclxuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgcHJlLFxyXG4gICAgYmxvY2txdW90ZSB7XHJcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1iYXNlKSBzb2xpZCAjYWRiNWJkOyAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxyXG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIC8vXHJcbiAgICAvLyBQcmludGluZyBUYWJsZXM6XHJcbiAgICAvLyBodHRwczovL3dlYi5hcmNoaXZlLm9yZy93ZWIvMjAxODA4MTUxNTA5MzQvaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXHJcbiAgICAvL1xyXG5cclxuICAgIHRoZWFkIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcclxuICAgIH1cclxuXHJcbiAgICB0cixcclxuICAgIGltZyB7XHJcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCxcclxuICAgIGgyLFxyXG4gICAgaDMge1xyXG4gICAgb3JwaGFuczogMztcclxuICAgIHdpZG93czogMztcclxuICAgIH1cclxuXHJcbiAgICBoMixcclxuICAgIGgzIHtcclxuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XHJcblxyXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXHJcbiAgICAvLyBXZSBkb24ndCBzZXQgbWFyZ2luIGhlcmUgYmVjYXVzZSBpdCBicmVha3MgYHNpemVgIGluIENocm9tZS4gV2UgYWxzb1xyXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cclxuICAgIEBwYWdlIHtcclxuICAgIHNpemU6IHZhcigtLXByaW50LXBhZ2Utc2l6ZSk7XHJcbiAgICB9XHJcbiAgICBib2R5IHtcclxuICAgIG1pbi13aWR0aDogdmFyKC0tcHJpbnQtYm9keS1taW4td2lkdGgpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgIG1pbi13aWR0aDogdmFyKC0tcHJpbnQtYm9keS1taW4td2lkdGgpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcclxuICAgIC5uYXZiYXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5iYWRnZSB7XHJcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1iYXNlKSBzb2xpZCAjMDAwO1xyXG4gICAgfVxyXG5cclxuICAgIC50YWJsZSB7XHJcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgdGQsXHJcbiAgICB0aCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50YWJsZS1ib3JkZXJlZCB7XHJcbiAgICB0aCxcclxuICAgIHRkIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYmxlLWRhcmsge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcblxyXG4gICAgdGgsXHJcbiAgICB0ZCxcclxuICAgIHRoZWFkIHRoLFxyXG4gICAgdGJvZHkgKyB0Ym9keSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10YWJsZS1ib3JkZXItY29sb3IpO1xyXG4gICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50YWJsZSAudGhlYWQtZGFyayB0aCB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGFibGUtYm9yZGVyLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBlbmRcclxufVxyXG4gICIsInByZSxcclxuY29kZSxcclxua2JkLFxyXG5zYW1wIHtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1tb25vc3BhY2UpO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cclxufVxyXG5cclxuY29kZSB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWNvZGUtZm9udC1zaXplKTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2RlLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvZGUtYmcpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICBwYWRkaW5nOiAwIDRweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb2RlLWxpbmUtaGVpZ2h0KTtcclxuICAgIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxyXG4gICAgYT4mIHtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcclxua2JkIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLWtiZC1wYWRkaW5nLXkpIHZhcigtLWtiZC1wYWRkaW5nLXgpO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLWNvZGUtZm9udC1zaXplKSk7XHJcbiAgICBjb2xvcjogdmFyKC0ta2JkLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWtiZC1iZyk7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLWJvcmRlci1yYWRpdXMtc20pKTtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0ta2JkLWJveC1zaGFkb3cpKTtcclxuXHJcbiAgICBrYmQge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLW5lc3RlZC1rYmQtZm9udC1zaXplKSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLW5lc3RlZC1rYmQtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbnByZSB7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1wcmUtcGFkZGluZyk7XHJcbiAgICBtYXJnaW46IDAgMCAxMnB4O1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1wcmUtZm9udC1zaXplKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmUtbGluZS1oZWlnaHQpO1xyXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gICAgY29sb3I6IHZhcigtLXByZS1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmUtYmcpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJlLWJvcmRlci1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wcmUtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBjb2RlIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmNvZGUge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZSk7XHJcbn0iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcclxuXHJcbi8vIFNDU1MgUkZTIG1peGluXHJcbi8vXHJcbi8vIEF1dG9tYXRlZCBmb250LXJlc2l6aW5nXHJcbi8vXHJcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcclxuXHJcbi8vIENvbmZpZ3VyYXRpb25cclxuXHJcbi8vIEJhc2UgZm9udCBzaXplXHJcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XHJcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcclxuXHJcbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgZm9udC1zaXplIHN0YXJ0cyBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXHJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xyXG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XHJcblxyXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXHJcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcclxuXHJcbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxyXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XHJcblxyXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcclxuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcclxufVxyXG5cclxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcclxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XHJcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcclxuXHJcbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxyXG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xyXG5cclxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxyXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxyXG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XHJcblxyXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xyXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XHJcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xyXG59XHJcbkBlbHNlIGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInJlbVwiIHtcclxuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcclxufVxyXG5cclxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xyXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xyXG5cclxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xyXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcclxuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XHJcbn1cclxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xyXG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xyXG59XHJcblxyXG4vLyBSZXNwb25zaXZlIGZvbnQtc2l6ZSBtaXhpblxyXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcclxuICAvLyBDYWNoZSAkZnMgdW5pdFxyXG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XHJcblxyXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcclxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcclxuXHJcbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXHJcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xyXG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXHJcbiAgICAkcmZzLXN0YXRpYzogbnVsbDtcclxuICAgICRyZnMtZmx1aWQ6IG51bGw7XHJcblxyXG4gICAgLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xyXG4gICAgQGlmICRmcy11bml0ID09IFwicHhcIiB7XHJcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xyXG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcclxuICAgIEBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSB7XHJcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmcyAvICRyZnMtcmVtLXZhbHVlfXJlbSN7JHJmcy1zdWZmaXh9O1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSBweCB7XHJcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmc31weCN7JHJmcy1zdWZmaXh9O1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICBAZXJyb3IgXCJgI3skcmZzLWZvbnQtc2l6ZS11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1mb250LXNpemUtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gT25seSBhZGQgbWVkaWEgcXVlcnkgaWYgZm9udC1zaXplIGlzIGJpZ2dlciBhcyB0aGUgbWluaW11bSBmb250LXNpemVcclxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcclxuICAgIEBpZiAkZnMgPiAkcmZzLWJhc2UtZm9udC1zaXplIGFuZCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XHJcbiAgICAgICRtaW4td2lkdGg6IG51bGw7XHJcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xyXG5cclxuICAgICAgLy8gQ2FsY3VsYXRlIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcclxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xyXG5cclxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiBnaXZlbiBmb250LXNpemUgYW5kIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcclxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XHJcblxyXG4gICAgICAvLyBCYXNlIGZvbnQtc2l6ZSBmb3JtYXR0aW5nXHJcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXHJcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAjeyRmcy1taW4gLyAkcmZzLXJlbS12YWx1ZX1yZW0sICN7JGZzLW1pbn1weCk7XHJcblxyXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxyXG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcclxuXHJcbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcclxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAjeyRmcy1kaWZmICogMTAwIC8gJHJmcy1icmVha3BvaW50fSN7JHZhcmlhYmxlLXVuaXR9O1xyXG5cclxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cclxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBSZW5kZXJpbmdcclxuICAgIEBpZiAkcmZzLWZsdWlkID09IG51bGwge1xyXG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcclxuICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgJG1xLXZhbHVlOiBudWxsO1xyXG5cclxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xyXG4gICAgICBAaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcmVtIHtcclxuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50IC8gJHJmcy1yZW0tdmFsdWV9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH07XHJcbiAgICAgIH1cclxuICAgICAgQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgge1xyXG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnR9cHg7XHJcbiAgICAgIH1cclxuICAgICAgQGVsc2Uge1xyXG4gICAgICAgIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImRpc2FibGVcIiB7XHJcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcclxuICAgICAgICAvLyB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxyXG4gICAgICAgICYsXHJcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcclxuICAgICAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGVsc2Uge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcclxuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xyXG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXHJcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xyXG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGVsc2Uge1xyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcclxuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xyXG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXHJcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xyXG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbiB1c2VzIFJGUyB0byByZXNjYWxlIGZvbnQgc2l6ZXNcclxuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XHJcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XHJcbn1cclxuXHJcbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XHJcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XHJcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcclxuXHJcbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcclxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgJHJldHVybjogKCk7XHJcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xyXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xyXG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAcmV0dXJuICRyZXR1cm47XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcclxuICB9XHJcbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcclxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XHJcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XHJcbiAgfVxyXG59XHJcbiIsIkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcclxuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcclxuICAgICRyZXN1bHQ6ICgpO1xyXG5cclxuICAgIEBpZiAobGVuZ3RoKCRzaGFkb3cpID09IDEpIHtcclxuICAgICAgLy8gV2UgY2FuIHBhc3MgYEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7YFxyXG4gICAgICAkcmVzdWx0OiAkc2hhZG93O1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIC8vIEZpbHRlciB0byBhdm9pZCBpbnZhbGlkIHByb3BlcnRpZXMgZm9yIGV4YW1wbGUgYGJveC1zaGFkb3c6IG5vbmUsIDFweCAxcHggYmxhY2s7YFxyXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkc2hhZG93KSB7XHJcbiAgICAgICAgQGlmIG50aCgkc2hhZG93LCAkaSkgIT0gXCJub25lXCIge1xyXG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIG50aCgkc2hhZG93LCAkaSksIFwiY29tbWFcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgKGxlbmd0aCgkcmVzdWx0KSA+IDApIHtcclxuICAgICAgYm94LXNoYWRvdzogJHJlc3VsdDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiXHJcbnRhYmxlLCBcclxuLnRhYmxlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLWJnKTtcclxuICAgIGJvcmRlci1jb2xsYXBzZTogdW5zZXQ7XHJcbiAgICBib3JkZXItc3BhY2luZzogMDtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogN3B4O1xyXG4gICAgICAgIHRvcDogN3B4O1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICB9XHJcbiAgICAvKiBJRSAxMSAqL1xyXG4gICAgLnNzbC1pbmZvIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5jYXB0aW9uIHtcclxuICAgIHBhZGRpbmctdG9wOiB2YXIoLS10YWJsZS10ZC1wYWRkaW5nKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS10YWJsZS10ZC1wYWRkaW5nKTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG50YWJsZSxcclxuLnRhYmxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XHJcbiAgICB9XHJcbiAgICA+IHRoZWFkLFxyXG4gICAgPiB0Ym9keSB7XHJcbiAgICAgICAgPiB0ciB7XHJcbiAgICAgICAgICAgID4gdGgge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGFibGUtdGgtYmcpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXRhYmxlLXRoLWhlaWdodCk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS10YWJsZS10aC1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB2YXIoLS10YWJsZS12ZXJ0aWNhbC1hbGlnbik7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGFibGUtdGgtZm9udC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXRhYmxlLXRoLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tdGFibGUtdGgtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogdmFyKC0tdGFibGUtaG9yaXpvbnRhbC1hbGlnbik7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS10YWJsZS10aC1maXJzdC1sYXN0LXBhZGRpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXRhYmxlLXRoLWZpcnN0LWxhc3QtcGFkZGluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogdmFyKC0tdGFibGUtaG9yaXpvbnRhbC1hbGlnbi1ydGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdGFibGUtdGgtZmlyc3QtbGFzdC1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXRhYmxlLXRoLWZpcnN0LWxhc3QtcGFkZGluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiB0Ym9keSxcclxuICAgID4gdGZvb3Qge1xyXG4gICAgICAgID4gdHIge1xyXG4gICAgICAgICAgICA+IHRkIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLXRkLWJnKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS10YWJsZS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS10YWJsZS10ZC1oZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdGFibGUtdGQtcGFkZGluZyk7XHJcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdmFyKC0tdGFibGUtdmVydGljYWwtYWxpZ24pO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRhYmxlLXRkLWZvbnQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS10YWJsZS10ZC1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiB2YXIoLS10YWJsZS1ob3Jpem9udGFsLWFsaWduKTtcclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXRhYmxlLXRkLWZpcnN0LWxhc3QtcGFkZGluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdGFibGUtdGQtZmlyc3QtbGFzdC1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiB2YXIoLS10YWJsZS1ob3Jpem9udGFsLWFsaWduLXJ0bCk7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdGFibGUtdGQtZmlyc3QtbGFzdC1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXRhYmxlLXRkLWZpcnN0LWxhc3QtcGFkZGluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIGE6bm90KC5idG4pOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLWJnKSAwcHggMHB4IDBweCAzcHgsIHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlcikgMHB4IDBweCAwcHggNHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiB0Ym9keSB7XHJcbiAgICAgICAgPiB0cltkYXRhLXVybF0ge1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aGFzKHRkOmZvY3VzLXZpc2libGUpIHtcclxuICAgICAgICAgICAgICAgIG91dGxpbmU6IGJsYWNrIHNvbGlkIDFweDtcclxuICAgICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10YWJsZS1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLWJnLWhvdmVyKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgID4gY2FwdGlvbiArIHRoZWFkLFxyXG4gICAgPiBjb2xncm91cCArIHRoZWFkLFxyXG4gICAgPiB0aGVhZDpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgID4gdGgsXHJcbiAgICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgID4gdGJvZHkgKyB0Ym9keSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50YWJsZS1jb25kZW5zZWQge1xyXG4gICAgPiB0aGVhZCxcclxuICAgID4gdGJvZHksXHJcbiAgICA+IHRmb290IHtcclxuICAgICAgICA+IHRyIHtcclxuICAgICAgICAgICAgPiB0aCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS10YWJsZS1jb25kZW5zZWQtY2VsbC10aC1wYWRkaW5nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IHRkIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gdGgsXHJcbiAgICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRhYmxlLWJvcmRlcmVkIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XHJcbiAgICA+IHRoZWFkLFxyXG4gICAgPiB0Ym9keSxcclxuICAgID4gdGZvb3Qge1xyXG4gICAgICAgID4gdHIge1xyXG4gICAgICAgICAgICA+IHRoLFxyXG4gICAgICAgICAgICA+IHRkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwcHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICA+IHRoZWFkID4gdHIge1xyXG4gICAgICAgID4gdGgsXHJcbiAgICAgICAgPiB0ZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50YWJsZS1zdHJpcGVkIHtcclxuICAgID50Ym9keT50cjpudGgtb2YtdHlwZShvZGQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWJsZS1iZy1hY2NlbnQpO1xyXG4gICAgfVxyXG59XHJcbi50YWJsZS1ob3ZlciB7XHJcbiAgICA+dGJvZHk+dHI6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhYmxlLWJnLWhvdmVyKTtcclxuICAgIH1cclxufVxyXG5cclxudGFibGUgY29sW2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgZGlzcGxheTogdGFibGUtY29sdW1uO1xyXG59XHJcbnRhYmxlIHtcclxuICAgIHRkLFxyXG4gICAgdGgge1xyXG4gICAgICAgICZbY2xhc3MqPVwiY29sLVwiXSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2FjdGl2ZScsIHZhcigtLXRhYmxlLWJnLWFjdGl2ZSksIHZhcigtLXRhYmxlLWJnLWhvdmVyKSk7XHJcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdzdWNjZXNzJywgdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTQpLCB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMykpO1xyXG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnaW5mbycsIHZhcigtLWJyYW5kLWluZm8tbGlnaHRlci0zKSwgdmFyKC0tYnJhbmQtaW5mby1saWdodGVyLTIpKTtcclxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3dhcm5pbmcnLCB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItNCksIHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci0zKSk7XHJcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCdkYW5nZXInLCB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KSwgdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMykpO1xyXG5cclxuLnRhYmxlLXJlc3BvbnNpdmUge1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIG1pbi1oZWlnaHQ6IDAuMDElO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbGluZS1oZWlnaHQtYmFzZSkgKiAwLjc1KTtcclxuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IFxyXG5cclxuICAgICAgICA+IC50YWJsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIEVuc3VyZSB0aGUgY29udGVudCBkb2Vzbid0IHdyYXBcclxuICAgICAgICAgICAgPiB0aGVhZCxcclxuICAgICAgICAgICAgPiB0Ym9keSxcclxuICAgICAgICAgICAgPiB0Zm9vdCB7XHJcbiAgICAgICAgICAgICAgICA+IHRyIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPnRoLFxyXG4gICAgICAgICAgICAgICAgICAgID50ZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4udGFibGUtYm9yZGVyZWQge1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgID50aGVhZCxcclxuICAgICAgICAgICAgPnRib2R5LFxyXG4gICAgICAgICAgICA+dGZvb3Qge1xyXG4gICAgICAgICAgICAgICAgPnRyIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPnRoOmZpcnN0LWNoaWxkLFxyXG4gICAgICAgICAgICAgICAgICAgID50ZDpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPnRoOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgICAgICAgICAgICAgPnRkOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gdGJvZHksXHJcbiAgICAgICAgICAgID4gdGZvb3Qge1xyXG4gICAgICAgICAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICA+IHRoLFxyXG4gICAgICAgICAgICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4jbGlua2VkLWFjY291bnRzIHtcclxuICAgIC50YWJsZS1jb250YWluZXIge1xyXG4gICAgICAgICYudGFibGUtcmVzcG9uc2l2ZSB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IHZpc2libGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLy8gVGFibGVzXHJcblxyXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGhvdmVyLWJhY2tncm91bmQsICRib3JkZXI6IG51bGwpIHtcclxuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxyXG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXHJcbiAgLnRhYmxlLSN7JHN0YXRlfSB7XHJcbiAgICAmLFxyXG4gICAgPiB0aCxcclxuICAgID4gdGQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICAgIH1cclxuXHJcbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcclxuICAgICAgdGgsXHJcbiAgICAgIHRkLFxyXG4gICAgICB0aGVhZCB0aCxcclxuICAgICAgdGJvZHkgKyB0Ym9keSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXHJcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXHJcbiAgLnRhYmxlLWhvdmVyIHtcclxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xyXG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcclxuXHJcbiAgICAgICAgPiB0ZCxcclxuICAgICAgICA+IHRoIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxyXG4vL1xyXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcclxuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcclxuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxyXG4vL1xyXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xyXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXHJcbi8vXHJcbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XHJcblxyXG5AbWl4aW4gaG92ZXIoKSB7XHJcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XHJcbn1cclxuXHJcbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMtdmlzaWJsZSxcclxuICAmOmZvY3VzIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzLXZpc2libGUsXHJcbiAgJjpmb2N1cyB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzLFxyXG4gICY6Zm9jdXMtdmlzaWJsZSxcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuIiwiZmllbGRzZXQge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG1pbi13aWR0aDogMDtcclxufVxyXG5cclxubGVnZW5kIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgY29sb3I6IHZhcigtLWxlZ2VuZC1jb2xvcik7XHJcbiAgICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbmxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taW5wdXQtbGFiZWwtbWFyZ2luLWJvdHRvbSk7XHJcbiAgICBjb2xvcjogdmFyKC0taW5wdXQtbGFiZWwtY29sb3IpO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1sYWJlbC1mb250LXNpemUpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWlucHV0LWxhYmVsLWZvbnQtd2VpZ2h0KTtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5zZWxlY3RbbXVsdGlwbGVdLFxyXG5zZWxlY3Rbc2l6ZV0ge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4vLyBBZGp1c3Qgb3V0cHV0IGVsZW1lbnRcclxub3V0cHV0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZy10b3A6ICh2YXIoLS11aS1wYWRkaW5nLWJhc2UtdikgKyAxKTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yKTtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5mb3JtLWNvbnRyb2wpLFxyXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KC5mb3JtLWNvbnRyb2wpLFxyXG5zZWxlY3Q6bm90KC5mb3JtLWNvbnRyb2wpLFxyXG4uZm9ybS1jb250cm9sIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0taW5wdXQtZm9udC1zaXplKSk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0taW5wdXQtZm9udC13ZWlnaHQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LWxpbmUtaGVpZ2h0KTtcclxuICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1iZyk7XHJcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSk7XHJcbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXM7XHJcblxyXG4gICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvci1wbGFjZWhvbGRlcik7XHJcbiAgICAgICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1ob3Zlci1iZyk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1ob3Zlci1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1ob3Zlci1jb2xvcik7XHJcblxyXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYmcpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtY29sb3IpO1xyXG5cclxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6Oi1tcy1leHBhbmQge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuXHJcbiAgICAmOmRpc2FibGVkLFxyXG4gICAgJltkaXNhYmxlZF0sXHJcbiAgICAmW3JlYWRvbmx5XSxcclxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuXHJcbiAgICAgICAgJixcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtZGlzYWJsZWQtY29sb3IpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1kaXNhYmxlZC1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1kaXNhYmxlZC1jb2xvci1wbGFjZWhvbGRlcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltkaXNhYmxlZF0sXHJcbiAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICAgICAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItZGlzYWJsZWQpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBSZXNldCBoZWlnaHQgZm9yIGB0ZXh0YXJlYWBzXHJcbnRleHRhcmVhOm5vdCgjbWVzc2FnZSkuZm9ybS1jb250cm9sIHtcclxuICAgIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuc2VsZWN0LmZvcm0tY29udHJvbCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2Fycm93LWRyb3Auc3ZnJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDUwJTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2FsYygxMDAlIC0gMTFweCk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgcGFkZGluZy1yaWdodDogMjRweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAmOmZvY3VzOjotbXMtdmFsdWUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtYmcpO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYXJyb3ctZHJvcC5zdmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogNTAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogY2FsYygxMDAlIC0gMTFweCk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIH1cclxuXHJcbiAgICBvcHRpb24ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWxlY3Qtb3B0aW9uLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWxlY3Qtb3B0aW9uLWJnKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXHJcbi8vXHJcbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXHJcbi5yYWRpbyxcclxuLmNoZWNrYm94IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLWNoZWNrYm94LXNwYWNpbmcpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2hlY2tib3gtc3BhY2luZyk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcclxuICAgICAgICAvL3BhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXHJcbi5yYWRpby1pbmxpbmUsXHJcbi5jaGVja2JveC1pbmxpbmUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgLy8gQGluY2x1ZGUgbHRyIHtcclxuICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAvLyB9XHJcbiAgICAvLyBAaW5jbHVkZSBydGwge1xyXG4gICAgLy8gICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAvLyB9XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5yYWRpby1pbmxpbmUrLnJhZGlvLWlubGluZSxcclxuLmNoZWNrYm94LWlubGluZSsuY2hlY2tib3gtaW5saW5lIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDsgLy8gc3BhY2Ugb3V0IGNvbnNlY3V0aXZlIGlubGluZSBjb250cm9sc1xyXG59XHJcblxyXG4vLyBBcHBseSBzYW1lIGRpc2FibGVkIGN1cnNvciB0d2VhayBhcyBmb3IgaW5wdXRzXHJcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXHJcbi8vXHJcbi8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG5cclxuICAgICZbZGlzYWJsZWRdLFxyXG4gICAgJi5kaXNhYmxlZCxcclxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICAgICBjdXJzb3I6IHZhcigtLWN1cnNvci1kaXNhYmxlZCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgZGlyZWN0bHkgb24gPGxhYmVsPnNcclxuLnJhZGlvLWlubGluZSxcclxuLmNoZWNrYm94LWlubGluZSB7XHJcblxyXG4gICAgJi5kaXNhYmxlZCxcclxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICAgICBjdXJzb3I6IHZhcigtLWN1cnNvci1kaXNhYmxlZCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgb24gZWxlbWVudHMgd2l0aCA8bGFiZWw+IGRlc2NlbmRhbnRzXHJcbi5yYWRpbyxcclxuLmNoZWNrYm94IHtcclxuXHJcbiAgICAmLmRpc2FibGVkLFxyXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItZGlzYWJsZWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgaW5wdXQtc2l6ZSgnLmlucHV0LWxnJywgdmFyKC0tdWktaGVpZ2h0LWxnKSwgdmFyKC0tdWktcGFkZGluZy1sZy12KSwgdmFyKC0tdWktcGFkZGluZy1sZy1oKSwgdmFyKC0tZm9udC1zaXplLWxnKSwgdmFyKC0tbGluZS1oZWlnaHQtbGcpLCB2YXIoLS1pbnB1dC1sZy1ib3JkZXItcmFkaXVzKSk7XHJcblxyXG4uZm9ybS1ncm91cC1sZyB7XHJcbiAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XHJcbiAgICAgICAgcGFkZGluZzogMCB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xyXG4gICAgICAgIC8vZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgIC8vbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1sZy1ib3JkZXItcmFkaXVzKTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3QuZm9ybS1jb250cm9sIHtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XHJcbiAgICB9XHJcblxyXG4gICAgdGV4dGFyZWEuZm9ybS1jb250cm9sLFxyXG4gICAgc2VsZWN0W211bHRpcGxlXS5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuZm9ybS1jb250cm9sLXN0YXRpYyB7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6ICh2YXIoLS1saW5lLWhlaWdodC1iYXNlKSArIHZhcigtLWZvbnQtc2l6ZS1sZykpO1xyXG4gICAgICAgIHBhZGRpbmc6ICh2YXIoLS1wYWRkaW5nLWxnLXZlcnRpY2FsKSArIDEpIHZhcigtLXVpLXBhZGRpbmctbGctaCk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oYXMtZmVlZGJhY2sge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKVxyXG4gICAgfVxyXG59XHJcblxyXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uaW5wdXQteHMsXHJcbi5mb3JtLWNvbnRyb2wteHMsXHJcbi5pbnB1dC1ncm91cC14cz4uZm9ybS1jb250cm9sLFxyXG4uaW5wdXQtZ3JvdXAteHM+LmlucHV0LWdyb3VwLWFkZG9uLFxyXG4uaW5wdXQtZ3JvdXAteHM+LmlucHV0LWdyb3VwLWJ0bj4uYnRuIHtcclxuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhzKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmcteHMtdikgdmFyKC0tdWktcGFkZGluZy14cy1oKTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQteHMtZm9udC1zaXplKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbnB1dC14cy1saW5lLWhlaWdodCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC14cy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLmlucHV0LXNtLFxyXG4uZm9ybS1jb250cm9sLXNtLFxyXG4uaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbCxcclxuLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1hZGRvbixcclxuLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1idG4+LmJ0biB7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLXNtLXYpIHZhcigtLXVpLXBhZGRpbmctc20taCk7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWlucHV0LXNtLWZvbnQtc2l6ZSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtc20tbGluZS1oZWlnaHQpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5pbnB1dC1sZyxcclxuLmZvcm0tY29udHJvbC1sZyxcclxuLmlucHV0LWdyb3VwLWxnPi5mb3JtLWNvbnRyb2wsXHJcbi5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtYnRuPi5idG4ge1xyXG4gICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1sZy12KSB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1sZy1mb250LXNpemUpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LWxnLWxpbmUtaGVpZ2h0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4vLyBGZWVkYmFjayBzdGF0ZXNcclxuLmhhcy1zdWNjZXNzIHtcclxuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvciksIHZhcigtLWJyYW5kLXN1Y2Nlc3MpLCB2YXIoLS1icmFuZC1zdWNjZXNzLWRhcmtlciksIHZhcigtLWJyYW5kLXN1Y2Nlc3MtbGlnaHRlciksIHZhcigtLWJyYW5kLXN1Y2Nlc3MtbGlnaHRlci00KSk7XHJcblxyXG4gICAgLmNoZWNrYm94IGxhYmVsIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAucmFkaW8tc3R5bGVkLFxyXG4gICAgLmNoZWNrYm94LXN0eWxlZCB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzKTtcclxuXHJcbiAgICAgICAgJi5jaGVja2VkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaGFzLXdhcm5pbmcge1xyXG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24odmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKSwgdmFyKC0tYnJhbmQtd2FybmluZyksIHZhcigtLWJyYW5kLXdhcm5pbmctZGFya2VyKSwgdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXIpLCB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItNCkpO1xyXG5cclxuICAgIC5jaGVja2JveCBsYWJlbCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2FybmluZy1jb2xvcik7XHJcbiAgICB9XHJcblxyXG4gICAgLnJhZGlvLXN0eWxlZCxcclxuICAgIC5jaGVja2JveC1zdHlsZWQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtd2FybmluZyk7XHJcblxyXG4gICAgICAgICYuY2hlY2tlZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmcpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmhhcy1lcnJvciB7XHJcbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbih2YXIoLS10ZXh0LWRhbmdlci1jb2xvciksIHZhcigtLWJyYW5kLWRhbmdlciksIHZhcigtLWJyYW5kLWRhbmdlci1kYXJrZXIpLCB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlciksIHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpKTtcclxuXHJcbiAgICAuY2hlY2tib3ggbGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XHJcbiAgICB9XHJcblxyXG4gICAgLnJhZGlvLXN0eWxlZCxcclxuICAgIC5jaGVja2JveC1zdHlsZWQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyKTtcclxuXHJcbiAgICAgICAgJi5jaGVja2VkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gSGVscCB0ZXh0XHJcbi8vXHJcbi8vIEFwcGx5IHRvIGFueSBlbGVtZW50IHlvdSB3aXNoIHRvIGNyZWF0ZSBsaWdodCB0ZXh0IGZvciBwbGFjZW1lbnQgaW1tZWRpYXRlbHlcclxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXHJcbi5oZWxwLWJsb2NrIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBhY2NvdW50IGZvciBhbnkgZWxlbWVudCB1c2luZyBoZWxwLWJsb2NrXHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpOyAvLyBsaWdodGVuIHRoZSB0ZXh0IHNvbWUgZm9yIGNvbnRyYXN0XHJcbn1cclxuXHJcbi5mb3JtLWlubGluZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXHJcblxyXG4gICAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxyXG4gICAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcclxuICAgIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cclxuICAgIC5mb3JtLWNoZWNrIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXHJcbiAgICAgICAgLmZvcm0tZ3JvdXAge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXHJcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xyXG4gICAgICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmlucHV0LWdyb3VwLFxyXG4gICAgICAgIC5jdXN0b20tc2VsZWN0IHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcclxuICAgICAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cclxuICAgICAgICAuZm9ybS1jaGVjayB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvcm0tY2hlY2staW5wdXQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWZvcm0tdGV4dC1tYXJnaW4tdG9wKTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY3VzdG9tLWNvbnRyb2wge1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxyXG4uZm9ybS1jb250cm9sLWZpbGUsXHJcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy9cclxuLy8gTGFiZWxzXHJcbi8vXHJcbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXHJcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cclxuLmNvbC1mb3JtLWxhYmVsIHtcclxuICAgIHBhZGRpbmctdG9wOiBhZGQodmFyKC0tdWktcGFkZGluZy1iYXNlLXYpLCB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiBhZGQodmFyKC0tdWktcGFkZGluZy1iYXNlLXYpLCB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpKTtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGluZS1oZWlnaHQpO1xyXG4gICAgJi5jb2wtY2hlY2tib3h7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgPiAuY2hlY2tib3gtc3R5bGVke1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY29sLWZvcm0tbGFiZWwtbGcge1xyXG4gICAgcGFkZGluZy10b3A6IGFkZCh2YXIoLS11aS1wYWRkaW5nLWxnLXYpLCB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiBhZGQodmFyKC0tdWktcGFkZGluZy1sZy12KSwgdmFyKC0taW5wdXQtYm9yZGVyLXdpZHRoKSk7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0taW5wdXQtbGctZm9udC1zaXplKSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGctbGluZS1oZWlnaHQpO1xyXG59XHJcblxyXG4uY29sLWZvcm0tbGFiZWwtc20ge1xyXG4gICAgcGFkZGluZy10b3A6IGFkZCh2YXIoLS11aS1wYWRkaW4tc20tdiksIHZhcigtLWlucHV0LWJvcmRlci13aWR0aCkpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IGFkZCh2YXIoLS11aS1wYWRkaW4tc20tdiksIHZhcigtLWlucHV0LWJvcmRlci13aWR0aCkpO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLWlucHV0LXNtLWZvbnQtc2l6ZSkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LXNtLWxpbmUtaGVpZ2h0KTtcclxufVxyXG5cclxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxyXG4vL1xyXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxyXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcclxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0taW5wdXQtZm9udC1zaXplKSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGluZS1oZWlnaHQpO1xyXG4gICAgY29sb3I6IHZhcigtLWlucHV0LWxhYmVsLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci13aWR0aDogdmFyKC0taW5wdXQtYm9yZGVyLXdpZHRoKSAwO1xyXG5cclxuICAgICYuZm9ybS1jb250cm9sLXNtLFxyXG4gICAgJi5mb3JtLWNvbnRyb2wtbGcge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xyXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcclxuXHJcbiAgICAmW3NpemVdLFxyXG4gICAgJlttdWx0aXBsZV0ge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcclxuICAgIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLy8gRm9ybSBncm91cHNcclxuLy9cclxuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxyXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxyXG4uZm9ybS1ncm91cCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1mb3JtLWdyb3VwLW1hcmdpbi1ib3R0b20pO1xyXG59XHJcblxyXG4uZm9ybS10ZXh0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZm9ybS10ZXh0LW1hcmdpbi10b3ApO1xyXG59XHJcblxyXG4vLyBGb3JtIGdyaWRcclxuLy9cclxuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cclxuLmZvcm0tcm93IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0gdmFyKC0tZm9ybS1ncmlkLWd1dHRlci13aWR0aCkgLyAyO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0gdmFyKC0tZm9ybS1ncmlkLWd1dHRlci13aWR0aCkgLyAyO1xyXG5cclxuICAgID4uY29sLFxyXG4gICAgPltjbGFzcyo9XCJjb2wtXCJdIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1mb3JtLWdyaWQtZ3V0dGVyLXdpZHRoKSAvIDI7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1mb3JtLWdyaWQtZ3V0dGVyLXdpZHRoKSAvIDI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xyXG4vL1xyXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxyXG4uZm9ybS1jaGVjayB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXIpO1xyXG59XHJcblxyXG4uZm9ybS1jaGVjay1pbnB1dCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1mb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15KTtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXIpKTtcclxuXHJcbiAgICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIGZvciB3b3JrYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcclxuICAgICZbZGlzYWJsZWRdfi5mb3JtLWNoZWNrLWxhYmVsLFxyXG4gICAgJjpkaXNhYmxlZH4uZm9ybS1jaGVjay1sYWJlbCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mb3JtLWNoZWNrLWxhYmVsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cclxufVxyXG5cclxuLmZvcm0tY2hlY2staW5saW5lIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xyXG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1mb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teCk7XHJcblxyXG4gICAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXHJcbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XHJcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXgpO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBGb3JtIHZhbGlkYXRpb25cclxuLy9cclxuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xyXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxyXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxyXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxyXG5AZWFjaCAkc3RhdGUsXHJcbiRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcclxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xyXG59IiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XHJcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XHJcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XHJcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcclxuICB9XHJcblxyXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XHJcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xyXG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xyXG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcclxuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xyXG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XHJcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcclxuLy9cclxuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcclxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cclxuLy9cclxuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXHJcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXHJcbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcclxuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxyXG4vL1xyXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXHJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cclxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XHJcbiAgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYmcpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xyXG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLWlucHV0LWJveC1zaGFkb3cpLCB2YXIoLS1pbnB1dC1mb2N1cy1ib3gtc2hhZG93KSk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxyXG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1pbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmb3JtLWNvbnRyb2wtZm9jdXMoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xyXG59XHJcblxyXG4vLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXHJcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xyXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xyXG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcclxuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXHJcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xyXG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wKTtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS1mb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSkpO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICB9XHJcblxyXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEwMCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogNTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcclxuICAgIHBhZGRpbmc6IHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkpIHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXgpO1xyXG4gICAgbWFyZ2luLXRvcDogLjFyZW07XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodCk7XHJcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgdmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpKTtcclxuXHJcbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzE1NTdcclxuICAgIC8vIEFsaWduIHRvb2x0aXAgdG8gZm9ybSBlbGVtZW50c1xyXG4gICAgLmZvcm0tcm93ID4gLmNvbCA+ICYsXHJcbiAgICAuZm9ybS1yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSA+ICYge1xyXG4gICAgICBsZWZ0OiB2YXIoLS1mb3JtLWdyaWQtZ3V0dGVyLXdpZHRoKSAvIDI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XHJcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXHJcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG5cclxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXIpO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItcXVhcnRlcikgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItaGFsZikgdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItaGFsZik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWlucHV0LWZvY3VzLXdpZHRoKSByZ2JhKCRjb2xvciwgLjI1KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxyXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XHJcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XHJcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlLWlubmVyKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItcXVhcnRlcikgcmlnaHQgdmFyKC0tdWktaGVpZ2h0LWJhc2UtaW5uZXItcXVhcnRlcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jdXN0b20tc2VsZWN0IHtcclxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kKSwgdmFyKC0tY3VzdG9tLXNlbGVjdC1iZykgZXNjYXBlLXN2ZygkaWNvbikgdmFyKC0tY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uKSAvIHZhcigtLWN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplKSBuby1yZXBlYXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWlucHV0LWZvY3VzLXdpZHRoKSByZ2JhKCRjb2xvciwgLjI1KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm0tY2hlY2staW5wdXQge1xyXG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xyXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXHJcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcclxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xyXG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XHJcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1pbnB1dC1mb2N1cy13aWR0aCkgcmdiYSgkY29sb3IsIC4yNSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIGN1c3RvbSBmaWxlXHJcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcclxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcclxuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWlucHV0LWZvY3VzLXdpZHRoKSByZ2JhKCRjb2xvciwgLjI1KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBpbnB1dC1zaXplKCRpbnB1dC1zaXplLCAkaW5wdXQtaGVpZ2h0LCAkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xyXG4gICN7JGlucHV0LXNpemV9e1xyXG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xyXG4gICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcclxuICBcclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcclxuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XHJcbiAgICB9XHJcbiAgXHJcbiAgICB0ZXh0YXJlYSxcclxuICAgIHNlbGVjdFttdWx0aXBsZV0ge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRib3JkZXItZm9jdXM6ICNjY2MsICRib3JkZXItc2hhZG93OiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xyXG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XHJcbiAgLmhlbHAtYmxvY2ssXHJcbiAgLmNvbnRyb2wtbGFiZWwsXHJcbiAgLnJhZGlvLFxyXG4gIC5jaGVja2JveCxcclxuICAucmFkaW8taW5saW5lLFxyXG4gIC5jaGVja2JveC1pbmxpbmUsXHJcbiAgJi5yYWRpbyBsYWJlbCxcclxuICAmLmNoZWNrYm94IGxhYmVsLFxyXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxyXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgfVxyXG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWZvY3VzO1xyXG4gICAgICAkc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDZweCAkYm9yZGVyLXNoYWRvdztcclxuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xyXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICB9XHJcbiAgLy8gT3B0aW9uYWwgZmVlZGJhY2sgaWNvblxyXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIH1cclxufSIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcclxuLy9cclxuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cclxuLy8gQXNjZW5kaW5nXHJcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXHJcbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcclxuICAgICRwcmV2LWtleTogbnVsbDtcclxuICAgICRwcmV2LW51bTogbnVsbDtcclxuXHJcbiAgICBAZWFjaCAka2V5LFxyXG4gICAgJG51bSBpbiAkbWFwIHtcclxuICAgICAgICBAaWYgJHByZXYtbnVtPT1udWxsIG9yIHVuaXQoJG51bSk9PVwiJVwib3IgdW5pdCgkcHJldi1udW0pPT1cIiVcIiB7XHJcbiAgICAgICAgICAgIC8vIERvIG5vdGhpbmdcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xyXG4gICAgICAgICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGVsc2UgaWYgJHByZXYtbnVtPj0kbnVtIHtcclxuICAgICAgICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAkcHJldi1rZXk6ICRrZXk7XHJcbiAgICAgICAgJHByZXYtbnVtOiAkbnVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBTdGFydHMgYXQgemVyb1xyXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cclxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcclxuICAgIEBpZiBsZW5ndGgoJG1hcCk+MCB7XHJcbiAgICAgICAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcclxuICAgICAgICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcclxuXHJcbiAgICAgICAgQGlmICRmaXJzdC12YWx1ZSAhPTAge1xyXG4gICAgICAgICAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXHJcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXHJcbi8vXHJcbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXHJcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2VcclxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcclxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXHJcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xyXG4gICAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XHJcblxyXG4gICAgQGlmICRpbmRleCB7XHJcbiAgICAgICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkrJHJlcGxhY2Urc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiAkc3RyaW5nO1xyXG59XHJcblxyXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xyXG4vL1xyXG4vLyBSZXF1aXJlcyB0aGUgdXNlIG9mIHF1b3RlcyBhcm91bmQgZGF0YSBVUklzLlxyXG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XHJcbiAgICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcclxuXHJcbiAgICAgICAgQGVhY2ggJGNoYXIsXHJcbiAgICAgICAgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XHJcblxyXG4gICAgICAgICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcclxuICAgICAgICAgICAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcInVybChcIik9PTEge1xyXG4gICAgICAgICAgICAgICAgJHN0cmluZzogdXJsKFwiI3tzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgNiwgLTMpLCAkY2hhciwgJGVuY29kZWQpfVwiKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgJHN0cmluZzogc3RyLXJlcGxhY2UoJHN0cmluZywgJGNoYXIsICRlbmNvZGVkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAcmV0dXJuICRzdHJpbmc7XHJcbn1cclxuXHJcbi8vIENvbG9yIGNvbnRyYXN0XHJcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yLCAkZGFyazogJHlpcS10ZXh0LWRhcmssICRsaWdodDogJHlpcS10ZXh0LWxpZ2h0KSB7XHJcbiAgICAkcjogcmVkKCRjb2xvcik7XHJcbiAgICAkZzogZ3JlZW4oJGNvbG9yKTtcclxuICAgICRiOiBibHVlKCRjb2xvcik7XHJcbiAgICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAvIDEwMDA7XHJcblxyXG4gICAgQGlmICgkeWlxID49JHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xyXG4gICAgICAgIEByZXR1cm4gJGRhcms7XHJcbiAgICB9XHJcblxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIEByZXR1cm4gJGxpZ2h0O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcclxuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcclxufVxyXG5cclxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXHJcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xyXG4gICAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XHJcbiAgICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xyXG4gICAgJGxldmVsOiBhYnMoJGxldmVsKTtcclxuICAgIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XHJcbn1cclxuXHJcbi8vIFJldHVybiB2YWxpZCBjYWxjXHJcbkBmdW5jdGlvbiBhZGQoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XHJcbiAgICBAaWYgJHZhbHVlMT09bnVsbCB7XHJcbiAgICAgICAgQHJldHVybiAkdmFsdWUyO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkdmFsdWUyPT1udWxsIHtcclxuICAgICAgICBAcmV0dXJuICR2YWx1ZTE7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlMSk9PW51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKT09bnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcclxuICAgICAgICBAcmV0dXJuICR2YWx1ZTErJHZhbHVlMjtcclxuICAgIH1cclxuXHJcbiAgICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYz09dHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcclxuICAgIEBpZiAkdmFsdWUxPT1udWxsIGFuZCAkdmFsdWUyPT1udWxsIHtcclxuICAgICAgICBAcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICR2YWx1ZTE9PW51bGwge1xyXG4gICAgICAgIEByZXR1cm4gLSR2YWx1ZTI7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICR2YWx1ZTI9PW51bGwge1xyXG4gICAgICAgIEByZXR1cm4gJHZhbHVlMTtcclxuICAgIH1cclxuXHJcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUxKT09bnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpPT1udW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xyXG4gICAgICAgIEByZXR1cm4gJHZhbHVlMSAtICR2YWx1ZTI7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiBpZigkcmV0dXJuLWNhbGM9PXRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xyXG59IiwiLy8gR3JhZGllbnRzXHJcblxyXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XHJcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcclxuICB9IEBlbHNlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxyXG4vL1xyXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxyXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICM0OTUwNTcsICRlbmQtY29sb3I6ICMzNDNhNDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbn1cclxuXHJcbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cclxuLy9cclxuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cclxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAjNDk1MDU3LCAkZW5kLWNvbG9yOiAjMzQzYTQwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxufVxyXG5cclxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzQ5NTA1NywgJGVuZC1jb2xvcjogIzM0M2E0MCwgJGRlZzogNDVkZWcpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbn1cclxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwN2JmZiwgJG1pZC1jb2xvcjogIzZmNDJjMSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2RjMzU0NSkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMDdiZmYsICRtaWQtY29sb3I6ICM2ZjQyYzEsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNkYzM1NDUpIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG59XHJcbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNDk1MDU3LCAkb3V0ZXItY29sb3I6ICMzNDNhNDApIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxufVxyXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoI2ZmZiwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcclxufVxyXG4iLCJpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpub3QoLmJ0biksXHJcbi5idG4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tYnRuLWJhc2UtZm9udC13ZWlnaHQpO1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWJ0bi1mb250LWZhbWlseSk7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1idG4tYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIHdoaXRlLXNwYWNlOiB2YXIoLS1idG4td2hpdGUtc3BhY2UpO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSwgdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpLCB2YXIoLS1idG4tYmFzZS1mb250LXNpemUpLCB2YXIoLS1saW5lLWhlaWdodC1iYXNlKSwgdmFyKC0tYnRuLWJhc2UtYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS1idG4tdHJhbnNpdGlvbikpO1xyXG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XHJcbiAgICBjb2xvcjogdmFyKC0tYnRuLWRlZmF1bHQtY29sb3IpO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfSAgICBcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmLmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1idG4tZm9jdXMtYm94LXNoYWRvdyk7XHJcbiAgICB9XHJcbiAgICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcclxuICAgICYuZGlzYWJsZWQsXHJcbiAgICAmOmRpc2FibGVkIHtcclxuICAgICAgICAvL29wYWNpdHk6IHZhcigtLWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcclxuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xyXG4gICAgfVxyXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XHJcbiAgICAgICAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcclxuICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1ib3JkZXIpO1xyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tYnRuLWZvY3VzLWJveC1zaGFkb3cpLCB2YXIoLS1idG4tYWN0aXZlLWJveC1zaGFkb3cpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGksXHJcbiAgICAubHMsXHJcbiAgICAubG0sXHJcbiAgICAuZmEsXHJcbiAgICAuZmFzIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWJ0bi1iYXNlLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1idG4tYmFzZS1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWJ0bi1iYXNlLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1idG4tYmFzZS1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ0bi1pY29ue1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgICYuZmxleC1yb3ctcmV2ZXJzZXtcclxuICAgICAgICBpLFxyXG4gICAgICAgIC5scyxcclxuICAgICAgICAubG0sXHJcbiAgICAgICAgLmZhLFxyXG4gICAgICAgIC5mYXMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWJ0bi1iYXNlLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYnRuLWJhc2UtaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYnRuLWJhc2UtaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1idG4tYmFzZS1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5pY29uLWFuaW1hdGlvbntcclxuICAgICAgICBpLFxyXG4gICAgICAgIC5scyxcclxuICAgICAgICAubG0sXHJcbiAgICAgICAgLmZhLFxyXG4gICAgICAgIC5mYXMge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5idG4tdGV4dHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogcGFkZGluZy1yaWdodCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBwYWRkaW5nLWxlZnQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bi1pY29ue1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyBcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tYmFzZSksIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGV7IFxyXG4gICAgICAgICAgICAuYnRuLXRleHR7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuZmxleC1yb3ctcmV2ZXJzZXtcclxuICAgICAgICAgICAgICAgIC5idG4tdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuLWljb257XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tYW5pbWF0aW9uLXNpemVzKHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKSk7XHJcbn1cclxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpub3QoLmJ0biksXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pe1xyXG4gICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWJnKTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYm9yZGVyKTtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYmcpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKTtcclxuICAgIH1cclxufVxyXG4uYnRuLmJ0bi1pY29uIHtcclxuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgfVxyXG4gICAgPiBpIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXHJcbmEuYnRuLmRpc2FibGVkLFxyXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi8vIEFsdGVybmF0ZSBidXR0b25zIFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uYnRuLWRlZmF1bHQge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQodmFyKC0tYnRuLWRlZmF1bHQtY29sb3IpLCB2YXIoLS1idG4tZGVmYXVsdC1iZyksIHZhcigtLWJ0bi1kZWZhdWx0LWJvcmRlciksIHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItYmcpLCB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1ib3JkZXIpLCB2YXIoLS1idG4tZGVmYXVsdC1hY3RpdmUtYmcpLCB2YXIoLS1idG4tZGVmYXVsdC1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG4gICAgaSB7XHJcbiAgICAgICAgJi5scy1jYXJldCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kZWNvcmF0aW9uLWljb25zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJ0bi1wcmltYXJ5IHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvciksIHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxufVxyXG4uYnRuLXByaW1hcnktZmFkZWQge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQodmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlciksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG59XHJcbi5idG4tc2Vjb25kYXJ5IHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1zZWNvbmRhcnktY29sb3IpLCB2YXIoLS1idG4tc2Vjb25kYXJ5LWJnKSwgdmFyKC0tYnRuLXNlY29uZGFyeS1ib3JkZXIpLCB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1iZyksIHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXNlY29uZGFyeS1hY3RpdmUtYmcpLCB2YXIoLS1idG4tc2Vjb25kYXJ5LWFjdGl2ZS1ib3JkZXIpLCB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtYmcpLCB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKSk7XHJcbn1cclxuLmJ0bi1zdWNjZXNzIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1zdWNjZXNzLWNvbG9yKSwgdmFyKC0tYnRuLXN1Y2Nlc3MtYmcpLCB2YXIoLS1idG4tc3VjY2Vzcy1ib3JkZXIpLCB2YXIoLS1idG4tc3VjY2Vzcy1ob3Zlci1jb2xvciksIHZhcigtLWJ0bi1zdWNjZXNzLWhvdmVyLWJnKSwgdmFyKC0tYnRuLXN1Y2Nlc3MtaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXN1Y2Nlc3MtYWN0aXZlLWJnKSwgdmFyKC0tYnRuLXN1Y2Nlc3MtYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxufVxyXG4uYnRuLWluZm8ge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQodmFyKC0tYnRuLWluZm8tY29sb3IpLCB2YXIoLS1idG4taW5mby1iZyksIHZhcigtLWJ0bi1pbmZvLWJvcmRlciksIHZhcigtLWJ0bi1pbmZvLWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLWluZm8taG92ZXItYmcpLCB2YXIoLS1idG4taW5mby1ob3Zlci1ib3JkZXIpLCB2YXIoLS1idG4taW5mby1hY3RpdmUtYmcpLCB2YXIoLS1idG4taW5mby1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG59XHJcbi5idG4td2FybmluZyB7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCh2YXIoLS1idG4td2FybmluZy1jb2xvciksIHZhcigtLWJ0bi13YXJuaW5nLWJnKSwgdmFyKC0tYnRuLXdhcm5pbmctYm9yZGVyKSwgdmFyKC0tYnRuLXdhcm5pbmctaG92ZXItY29sb3IpLCB2YXIoLS1idG4td2FybmluZy1ob3Zlci1iZyksIHZhcigtLWJ0bi13YXJuaW5nLWhvdmVyLWJvcmRlciksIHZhcigtLWJ0bi13YXJuaW5nLWFjdGl2ZS1iZyksIHZhcigtLWJ0bi13YXJuaW5nLWFjdGl2ZS1ib3JkZXIpLCB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtYmcpLCB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKSk7XHJcbn1cclxuLmJ0bi1kYW5nZXIge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQodmFyKC0tYnRuLWRhbmdlci1jb2xvciksIHZhcigtLWJ0bi1kYW5nZXItYmcpLCB2YXIoLS1idG4tZGFuZ2VyLWJvcmRlciksIHZhcigtLWJ0bi1kYW5nZXItaG92ZXItY29sb3IpLCB2YXIoLS1idG4tZGFuZ2VyLWhvdmVyLWJnKSwgdmFyKC0tYnRuLWRhbmdlci1ob3Zlci1ib3JkZXIpLCB2YXIoLS1idG4tZGFuZ2VyLWFjdGl2ZS1iZyksIHZhcigtLWJ0bi1kYW5nZXItYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxufVxyXG4uYnRuLWxpZ2h0Om5vdCguYnRuLWRlZmF1bHQpIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1saWdodC1jb2xvciksIHZhcigtLWJ0bi1saWdodC1iZyksIHZhcigtLWJ0bi1saWdodC1ib3JkZXIpLCB2YXIoLS1idG4tbGlnaHQtaG92ZXItY29sb3IpLCB2YXIoLS1idG4tbGlnaHQtaG92ZXItYmcpLCB2YXIoLS1idG4tbGlnaHQtaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLWxpZ2h0LWFjdGl2ZS1iZyksIHZhcigtLWJ0bi1saWdodC1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG59XHJcbi5idG4tZGFyayB7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCh2YXIoLS1idG4tZGFyay1jb2xvciksIHZhcigtLWJ0bi1kYXJrLWJnKSwgdmFyKC0tYnRuLWRhcmstYm9yZGVyKSwgdmFyKC0tYnRuLWRhcmstaG92ZXItY29sb3IpLCB2YXIoLS1idG4tZGFyay1ob3Zlci1iZyksIHZhcigtLWJ0bi1kYXJrLWhvdmVyLWJvcmRlciksIHZhcigtLWJ0bi1kYXJrLWFjdGl2ZS1iZyksIHZhcigtLWJ0bi1kYXJrLWFjdGl2ZS1ib3JkZXIpLCB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtYmcpLCB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKSk7XHJcbn1cclxuXHJcbi8vQnV0dG9ucyBvdXRsaW5lIHZlcnNpb25cclxuXHJcbi5idG4tb3V0bGluZSxcclxuLmJ0bi1kZWZhdWx0LmJ0bi1vdXRsaW5lIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQodmFyKC0tYnRuLWRlZmF1bHQtY29sb3IpLCB2YXIoLS1idG4tZGVmYXVsdC1iZyksIHZhcigtLWJ0bi1kZWZhdWx0LWJvcmRlciksIHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItYmcpLCB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1ib3JkZXIpLCB2YXIoLS1idG4tZGVmYXVsdC1hY3RpdmUtYmcpLCB2YXIoLS1idG4tZGVmYXVsdC1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG4gICAgaSB7XHJcbiAgICAgICAgJi5scy1jYXJldCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJ0bi1wcmltYXJ5LW91dGxpbmUsXHJcbi5idG4tcHJpbWFyeS5idG4tb3V0bGluZXtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQodmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktb3V0bGluZS1iZyksIHZhcigtLXRleHQtcHJpbWFyeS1jb2xvciksIHZhcigtLXRleHQtcHJpbWFyeS1jb2xvciksIHZhcigtLWJ0bi1wcmltYXJ5LW91dGxpbmUtYmctaG92ZXIpLCB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpLCB2YXIoLS1idG4tcHJpbWFyeS1hY3RpdmUtYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG59XHJcbi5idG4tcHJpbWFyeS1mYWRlZC1vdXRsaW5lLFxyXG4uYnRuLXByaW1hcnktZmFkZWQuYnRuLW91dGxpbmUge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCh2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYm9yZGVyKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlciksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWFjdGl2ZS1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWFjdGl2ZS1ib3JkZXIpLCB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtYmcpLCB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKSk7XHJcbn1cclxuLmJ0bi1zZWNvbmRhcnktb3V0bGluZSxcclxuLmJ0bi1zZWNvbmRhcnkuYnRuLW91dGxpbmUge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCh2YXIoLS1icmFuZC1zZWNvbmRhcnkpLCB2YXIoLS1idG4tc2Vjb25kYXJ5LWJnKSwgdmFyKC0tYnRuLXNlY29uZGFyeS1ib3JkZXIpLCB2YXIoLS1idG4tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLXNlY29uZGFyeS1ob3Zlci1iZyksIHZhcigtLWJ0bi1zZWNvbmRhcnktaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXNlY29uZGFyeS1hY3RpdmUtYmcpLCB2YXIoLS1idG4tc2Vjb25kYXJ5LWFjdGl2ZS1ib3JkZXIpLCB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtYmcpLCB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKSk7XHJcbn1cclxuLmJ0bi1zdWNjZXNzLW91dGxpbmUsXHJcbi5idG4tc3VjY2Vzcy5idG4tb3V0bGluZSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvciksIHZhcigtLWJ0bi1zdWNjZXNzLW91dGxpbmUtYmcpLCB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpLCB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpLCB2YXIoLS1idG4tc3VjY2Vzcy1vdXRsaW5lLWJnLWhvdmVyKSwgdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKSwgdmFyKC0tYnRuLXN1Y2Nlc3MtYWN0aXZlLWJnKSwgdmFyKC0tYnRuLXN1Y2Nlc3MtYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxufVxyXG4uYnRuLWluZm8tb3V0bGluZSxcclxuLmJ0bi1pbmZvLmJ0bi1vdXRsaW5lIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQodmFyKC0tdGV4dC1pbmZvLWNvbG9yKSwgdmFyKC0tYnRuLWluZm8tb3V0bGluZS1iZyksIHZhcigtLXRleHQtaW5mby1jb2xvciksIHZhcigtLXRleHQtaW5mby1jb2xvciksIHZhcigtLWJ0bi1pbmZvLW91dGxpbmUtYmctaG92ZXIpLCB2YXIoLS10ZXh0LWluZm8tY29sb3IpLCB2YXIoLS1idG4taW5mby1hY3RpdmUtYmcpLCB2YXIoLS1idG4taW5mby1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG59XHJcbi5idG4td2FybmluZy1vdXRsaW5lLFxyXG4uYnRuLXdhcm5pbmcuYnRuLW91dGxpbmUge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCh2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpLCB2YXIoLS1idG4td2FybmluZy1vdXRsaW5lLWJnKSwgdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKSwgdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKSwgdmFyKC0tYnRuLXdhcm5pbmctb3V0bGluZS1iZy1ob3ZlciksIHZhcigtLXRleHQtd2FybmluZy1jb2xvciksIHZhcigtLWJ0bi13YXJuaW5nLWFjdGl2ZS1iZyksIHZhcigtLWJ0bi13YXJuaW5nLWFjdGl2ZS1ib3JkZXIpLCB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtYmcpLCB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKSk7XHJcbn1cclxuLmJ0bi1kYW5nZXItb3V0bGluZSxcclxuLmJ0bi1kYW5nZXIuYnRuLW91dGxpbmUge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCh2YXIoLS10ZXh0LWRhbmdlci1jb2xvciksIHZhcigtLWJ0bi1kYW5nZXItb3V0bGluZS1iZyksIHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKSwgdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpLCB2YXIoLS1idG4tZGFuZ2VyLW91dGxpbmUtYmctaG92ZXIpLCB2YXIoLS10ZXh0LWRhbmdlci1jb2xvciksIHZhcigtLWJ0bi1kYW5nZXItYWN0aXZlLWJnKSwgdmFyKC0tYnRuLWRhbmdlci1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG59XHJcbi5idG4tbGlnaHQtb3V0bGluZSxcclxuLmJ0bi1saWdodC5idG4tb3V0bGluZSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KHZhcigtLWJ0bi1saWdodC1jb2xvciksIHZhcigtLWJ0bi1saWdodC1iZyksIHZhcigtLWJ0bi1saWdodC1ib3JkZXIpLCB2YXIoLS1idG4tbGlnaHQtaG92ZXItY29sb3IpLCB2YXIoLS1idG4tbGlnaHQtaG92ZXItYmcpLCB2YXIoLS1idG4tbGlnaHQtaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLWxpZ2h0LWFjdGl2ZS1iZyksIHZhcigtLWJ0bi1saWdodC1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG59XHJcbi8vIExpbmsgYnV0dG9uc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rICguYnRuLW91dGxpbmUgb3ZlcnJpZGVzIHRoaXMpXHJcblxyXG4uYnRuLmJ0bi1saW5rIHtcclxuICAgICY6bm90KC5idG4tb3V0bGluZSl7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ0bi1saW5rLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgXHJcbiAgICAgICAgJjpub3QoLmJ0bi1wcmltYXJ5LWZhZGVkKTpub3QoLmJ0bi1zZWNvbmRhcnkpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4td2FybmluZyk6bm90KC5idG4tZGFyayk6bm90KC5idG4tbGlnaHQpe1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBob3ZlcigpIHtcclxuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1saW5rLWhvdmVyLWRlY29yYXRpb24pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICYuZm9jdXMge1xyXG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbGluay1ob3Zlci1kZWNvcmF0aW9uKTtcclxuICAgICAgICAgICAgfSAgXHJcbiAgICAgICAgICAgICY6ZGlzYWJsZWQsXHJcbiAgICAgICAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tbGluay1kaXNhYmxlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5idG4tc3VjY2Vzc3tcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYnRuLXdhcm5pbmd7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJ0bi1kYW5nZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcclxuICB9XHJcblxyXG4vLyBCdXR0b24gU2l6ZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmJ0bi14bGcge1xyXG4gICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQteGxnKTtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKHZhcigtLXVpLXBhZGRpbmcteGxnLXYpLCB2YXIoLS11aS1wYWRkaW5nLXhsZy1oKSwgdmFyKC0tYnRuLXhsZy1mb250LXNpemUpLCB2YXIoLS1idG4teGxnLWxpbmUtaGVpZ2h0KSwgdmFyKC0tYnRuLXhsZy1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tYnRuLXhsZy1mb250LXdlaWdodCk7XHJcbiAgICBAaW5jbHVkZSBidXR0b24taWNvbi1hbmltYXRpb24tc2l6ZXModmFyKC0tdWktcGFkZGluZy14bGctaCkpO1xyXG4gICAgJi5idG4taWNvbiB7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQteGxnKTtcclxuICAgICAgICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0LXhsZyk7XHJcbiAgICB9XHJcbiAgICBpIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWJ0bi14bGctaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWJ0bi14bGctaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1idG4teGxnLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1idG4teGxnLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJ0bi1sZyB7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZSh2YXIoLS11aS1wYWRkaW5nLWJhc2UtdiksIHZhcigtLXVpLXBhZGRpbmctbGctaCksIHZhcigtLWJ0bi1sZy1mb250LXNpemUpLCB2YXIoLS1idG4tbGctbGluZS1oZWlnaHQpLCB2YXIoLS1idG4tbGctYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ0bi1sZy1mb250LXdlaWdodCk7XHJcbiAgICBAaW5jbHVkZSBidXR0b24taWNvbi1hbmltYXRpb24tc2l6ZXModmFyKC0tdWktcGFkZGluZy1sZy1oKSk7XHJcbiAgICAmLmJ0bi1pY29uIHtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodC1sZyk7XHJcbiAgICB9XHJcbiAgICBpIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWJ0bi1sZy1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLWxnLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLWxnLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1idG4tbGctaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYnRuLXNtIHtcclxuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXNtKTtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKHZhcigtLXVpLXBhZGRpbmctc20tdiksIHZhcigtLXVpLXBhZGRpbmctc20taCksIHZhcigtLWJ0bi1zbS1mb250LXNpemUpLCB2YXIoLS1idG4tc20tbGluZS1oZWlnaHQpLCB2YXIoLS1idG4tc20tYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ0bi1zbS1mb250LXdlaWdodCk7XHJcbiAgICBAaW5jbHVkZSBidXR0b24taWNvbi1hbmltYXRpb24tc2l6ZXModmFyKC0tdWktcGFkZGluZy1zbS1oKSk7XHJcbiAgICAmLmJ0bi1pY29uIHtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodC1zbSk7XHJcbiAgICB9XHJcbiAgICBpIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWJ0bi1zbS1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLXNtLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLXNtLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1idG4tc20taWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYnRuLXhzIHtcclxuICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhzKTtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKHZhcigtLXVpLXBhZGRpbmcteHMtdiksIHZhcigtLXVpLXBhZGRpbmcteHMtaCksIHZhcigtLWJ0bi14cy1mb250LXNpemUpLCB2YXIoLS1idG4teHMtbGluZS1oZWlnaHQpLCB2YXIoLS1idG4teHMtYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ0bi14cy1mb250LXdlaWdodCk7XHJcbiAgICBAaW5jbHVkZSBidXR0b24taWNvbi1hbmltYXRpb24tc2l6ZXModmFyKC0tdWktcGFkZGluZy14cy1oKSk7XHJcbiAgICAmLmJ0bi1pY29uIHtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC14cyk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodC14cyk7XHJcbiAgICB9XHJcbiAgICBpIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWJ0bi14cy1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLXhzLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tYnRuLXhzLWljb24tc3BhY2luZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1idG4teHMtaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi1ibG9jayB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLmJ0bi1ibG9jaysuYnRuLWJsb2NrIHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLWJ0bi1ibG9jay1zcGFjaW5nLXkpO1xyXG59XHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXHJcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XHJcbiAgICAmLmJ0bi1ibG9jayB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuLmJ0bi5idG4taWNvbntcclxuICAgICYuYnRuLWhvdmVyLWRhbmdlcntcclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8vIEJ1dHRvbiB2YXJpYW50c1xyXG4vL1xyXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXHJcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xyXG5cclxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvci1ob3ZlciwgJGJhY2tncm91bmQtaG92ZXIsICRib3JkZXItaG92ZXIsICRiYWNrZ3JvdW5kLWFjdGl2ZSwgJGJvcmRlci1hY3RpdmUsICRjb2xvci1kaXNhYmxlZCwgJGJhY2tncm91bmQtZGlzYWJsZWQsICRib3JkZXItZGlzYWJsZWQpIHtcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuICAmOmZvY3VzLFxyXG4gICY6Zm9jdXMtdmlzaWJsZSxcclxuICAmLmZvY3VzIHtcclxuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1ob3ZlcjtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItaG92ZXI7XHJcbiAgfVxyXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmLmFjdGl2ZSxcclxuICAgIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1hY3RpdmU7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1hY3RpdmU7XHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMsXHJcbiAgICAgICY6Zm9jdXMtdmlzaWJsZSxcclxuICAgICAgJi5mb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItaG92ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5idG4tbGlua3sgXHJcbiAgICAmOm5vdCguYnRuLW91dGxpbmUpe1xyXG4gICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgJjpmb2N1cyxcclxuICAgICAgJjpmb2N1cy12aXNpYmxlLFxyXG4gICAgICAmLmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICB9XHJcbiAgICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xyXG4gICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICYuYWN0aXZle1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgJjpmb2N1cy12aXNpYmxlLFxyXG4gICAgICAgICAgJi5mb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlLFxyXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICB9XHJcbiAgJi5kaXNhYmxlZDpub3QoLmJ0bi13YXJuaW5nKTpub3QoLmJ0bi1zdWNjZXNzKTpub3QoLmJ0bi1kYW5nZXIpOm5vdCguYnRuLWluZm8pOm5vdCguYnRuLXByaW1hcnktZmFkZWQpLFxyXG4gICZbZGlzYWJsZWRdOm5vdCguYnRuLXdhcm5pbmcpOm5vdCguYnRuLXN1Y2Nlc3MpOm5vdCguYnRuLWRhbmdlcik6bm90KC5idG4taW5mbyk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItZGlzYWJsZWQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWRpc2FibGVkO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItZGlzYWJsZWQ7XHJcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgIC5sb2FkZXIge1xyXG4gICAgICAgIC5zcGlubmVyID4gZGl2IHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1kaXNhYmxlZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICB9XHJcbiAgJi5kaXNhYmxlZDpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KSxcclxuICAmW2Rpc2FibGVkXTpub3QoLmJ0bi1wcmltYXJ5KTpub3QoLmJ0bi1kZWZhdWx0KXtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBvcGFjaXR5OiAwLjY7XHJcbiAgfVxyXG4gIC5iYWRnZSB7XHJcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yLWhvdmVyLCAkYmFja2dyb3VuZC1ob3ZlciwgJGJvcmRlci1ob3ZlciwgJGJhY2tncm91bmQtYWN0aXZlLCAkYm9yZGVyLWFjdGl2ZSwgJGNvbG9yLWRpc2FibGVkLCAkYmFja2dyb3VuZC1kaXNhYmxlZCwgJGJvcmRlci1kaXNhYmxlZCkge1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gICY6Zm9jdXMsXHJcbiAgJjpmb2N1cy12aXNpYmxlLFxyXG4gICYuZm9jdXMge1xyXG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWhvdmVyO1xyXG4gIH1cclxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWhvdmVyO1xyXG4gICAgfVxyXG4gIH1cclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSxcclxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1hY3RpdmU7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItYWN0aXZlO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmZvY3VzLXZpc2libGUsXHJcbiAgICAmLmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1ob3ZlcjtcclxuICAgIH1cclxuICB9XHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIH1cclxuICAmLmRpc2FibGVkLFxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICAgICBvcGFjaXR5OiB2YXIoLS1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItZGlzYWJsZWQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpICFpbXBvcnRhbnQ7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6Zm9jdXMtdmlzaWJsZSxcclxuICAgICYuZm9jdXMge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWRpc2FibGVkO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1kaXNhYmxlZDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWRpc2FibGVkO1xyXG4gICAgfVxyXG4gIH1cclxuICAuYmFkZ2Uge1xyXG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEJ1dHRvbiBzaXplc1xyXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcclxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcclxuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xyXG59XHJcblxyXG4vLyBCdXR0b24gSWNvbiBBbmltYXRpb25cclxuQG1peGluIGJ1dHRvbi1pY29uLWFuaW1hdGlvbi1zaXplcygkcGFkZGluZy14KSB7XHJcbiAgJi5pY29uLWFuaW1hdGlvbntcclxuICAgIC5idG4taWNvbntcclxuICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgIGxlZnQ6ICRwYWRkaW5nLXg7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgIHJpZ2h0OiAkcGFkZGluZy14O1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgfVxyXG4gICAgJi5mbGV4LXJvdy1yZXZlcnNle1xyXG4gICAgICAuYnRuLWljb257XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgcmlnaHQ6ICRwYWRkaW5nLXg7XHJcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgbGVmdDogJHBhZGRpbmcteDtcclxuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gRHJvcGRvd24gbWVudXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRHJvcGRvd24gYXJyb3cvY2FyZXRcclxuLy9UT0RPIC0gc3ByYXdkemnEhyBrbGFzxJkgY2FyZXRcclxuLmNhcmV0IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBib3JkZXItdG9wOiB2YXIoLS1jYXJldC13aWR0aC1iYXNlKSBkYXNoZWQ7XHJcbiAgICBib3JkZXItdG9wOiB2YXIoLS1jYXJldC13aWR0aC1iYXNlKSBzb2xpZDsgLy8gSUU4XHJcbiAgICBib3JkZXItcmlnaHQ6IHZhcigtLWNhcmV0LXdpZHRoLWJhc2UpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLWxlZnQ6IHZhcigtLWNhcmV0LXdpZHRoLWJhc2UpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoZGl2KVxyXG4uZHJvcHVwLFxyXG4uZHJvcHJpZ2h0LFxyXG4uZHJvcGRvd24sXHJcbi5kcm9wbGVmdCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLy8gUHJldmVudCB0aGUgZm9jdXMgb24gdGhlIGRyb3Bkb3duIHRvZ2dsZSB3aGVuIGNsb3NpbmcgZHJvcGRvd25zXHJcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogMDtcclxufVxyXG4vLyBNdWx0aSBMZXZlbCBEcm9wZG93blxyXG4uZHJvcGRvd24tbXVsdGktbGV2ZWx7XHJcbiAgICAuZHJvcGRvd24tbWVudS1zZWFyY2ggLmRyb3Bkb3duLWhlYWRlcntcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcclxuICAgICAgICBib3JkZXI6dW5zZXQ7XHJcbiAgICB9XHJcbiAgICA+IC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24tZGl2aWRlcntcclxuICAgICAgICBtYXJnaW4tYmxvY2s6ICBjYWxjKHZhcigtLW5hdi1kaXZpZGVyLW1hcmdpbi15KSAqIDAuNSk7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHJvcGRvd24tZGl2aWRlci1iZyk7XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd257XHJcbiAgICAgICAgPiAuZHJvcGRvd24tdG9nZ2xle1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLXYpIHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tYmFzZSkgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zaG93e1xyXG4gICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xle1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ubGFnb20tZnV0dXJpc3RpY3tcclxuICAgIC5kcm9wZG93bi1tdWx0aS1sZXZlbHtcclxuICAgICAgICA+IC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICA+IC5kcm9wZG93bntcclxuICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gVGhlIGRyb3Bkb3duIG1lbnUgKHVsKVxyXG4uZHJvcGRvd24tbWVudSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgIC8vIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgei1pbmRleDogdmFyKC0temluZGV4LWRyb3Bkb3duKTtcclxuICAgIC8vIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1pbi13aWR0aDogdmFyKC0tZHJvcGRvd24tbWluLXdpZHRoKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLW5hdi1kaXZpZGVyLW1hcmdpbi15KSAwO1xyXG4gICAgbWFyZ2luOiAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1iZyk7XHJcbiAgICBib3JkZXI6IHZhcigtLWRyb3Bkb3duLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1kcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWRyb3Bkb3duLWJveC1zaGFkb3cpO1xyXG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICAgIEBpbmNsdWRlIHNob3ctYW5pbWF0aW9uLWJvdHRvbS1zdGFydDsgLy9pbiBiczMgZmlsZVxyXG4gICAgdHJhbnNpdGlvbjogdmFyKC0tc2hvdy1hbmltYXRpb24pO1xyXG4gICAgJi5wdWxsLXJpZ2h0IHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIHRoZSBkcm9wZG93blxyXG4gICAgLmRpdmlkZXIsXHJcbiAgICAubmF2LWRpdmlkZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyKHZhcigtLWRyb3Bkb3duLWRpdmlkZXItYmcpKTtcclxuICAgIH1cclxuICAgIC8vIExpbmtzIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxyXG4gICAgPmxpPmEsXHJcbiAgICBsaS5uYXYtaGVhZGVyLWNvbGxhcHNlID4gLm5hdi1oZWFkZXItaXRlbSxcclxuICAgIC5kcm9wZG93bi1pdGVtLFxyXG4gICAgLmRyb3Bkb3duLW1lbnUtaXRlbSA+IGEge1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICBkaXNwbGF5OiBmbGV4IWltcG9ydGFudDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy12KSB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstY29sb3IpO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgLm5hdi1oZWFkZXItdGV4dCA+IGksXHJcbiAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICAgICAgLm5hdi1oZWFkZXItdGV4dCA+IHN2ZyxcclxuICAgICAgICAubmF2LWhlYWRlci10ZXh0ID4gaW1nLFxyXG4gICAgICAgIC5zdmctaWNvbixcclxuICAgICAgICA+IHN2ZyxcclxuICAgICAgICA+IGltZyB7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1hcHAtbmF2LXRvcC1tZW51LXN2Zy1pY29uLXNpemUpO1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tYXBwLW5hdi10b3AtbWVudS1zdmctaWNvbi1zaXplKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubmF2LWhlYWRlci10ZXh0ID4gaW1nLFxyXG4gICAgICAgID4gaW1nIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnN0YXR1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICA+bGk+YS5hY3RpdmV7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgIH1cclxuICAgIC5kcm9wZG93bi1tZW51LWl0ZW0uaXMtZGlzYWJsZWR7XHJcbiAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRyb3Bkb3duLW1lbnUtaXRlbS1jaGVja2JveHtcclxuICAgICAgICAmOmhhcyguZGlzYWJsZWQpe1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjY7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgbGFiZWx7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy12KSB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNoZWNrYm94LXN0eWxlZHtcclxuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgIGxhYmVse1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuZHJvcGRvd24tbWVudS1jb2xsYXBzZXtcclxuICAgICAgICA+IGxpID4gYSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWRyb3Bkb3duLWNvbGxhcHNlLWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1kcm9wZG93bi1jb2xsYXBzZS1saW5rLXBhZGRpbmctaCkgKyB2YXIoLS11aS1uYXYtdi1saW5rLWhvdmVyLXBhZGRpbmctaCkpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1kcm9wZG93bi1jb2xsYXBzZS1saW5rLXBhZGRpbmctaCkgLSB2YXIoLS11aS1uYXYtdi1saW5rLWhvdmVyLXBhZGRpbmctaCkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRyb3Bkb3duLW1lbnUtaGVhZGVye1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy12KSB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXIpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAwO1xyXG4gICAgfVxyXG4gICAgLmRyb3Bkb3duLW1lbnUtaXRlbXM6aGFzKC5kcm9wZG93bi1tZW51LWhlYWRlcil7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICA+IC5kcm9wZG93bi1tZW51LWhlYWRlcjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5kcm9wZG93biB7XHJcbiAgICAmLmlzLWVtcHR5IHtcclxuICAgICAgICAuZHJvcGRvd24taXRlbXMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZHJvcGRvd24tbWVudS1uby1kYXRhIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc3RhdHVzLWljb25zLWVuYWJsZWR7XHJcbiAgICAuZHJvcGRvd257XHJcbiAgICAgICAgJi52aWV3LWZpbHRlci1idG5ze1xyXG4gICAgICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICAgICAgPi5zdGF0dXN7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbntcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcclxuICAgICAgICAgICAgICAgICAgICA+c3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEhvdmVyL0ZvY3VzIHN0YXRlXHJcbi5kcm9wZG93bi1tZW51PmxpPmEsXHJcbi5kcm9wZG93bi1pdGVtLFxyXG4uZHJvcGRvd24tbWVudS1pdGVtID4gYSB7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XHJcbiAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy1oKSArIHZhcigtLXVpLW5hdi12LWxpbmstaG92ZXItcGFkZGluZy1oKSk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpIC0gdmFyKC0tdWktbmF2LXYtbGluay1ob3Zlci1wYWRkaW5nLWgpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tZHJvcGRvd24tbGluay1wYWRkaW5nLWgpIC0gdmFyKC0tdWktbmF2LXYtbGluay1ob3Zlci1wYWRkaW5nLWgpKTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCkgKyB2YXIoLS11aS1uYXYtdi1saW5rLWhvdmVyLXBhZGRpbmctaCkpO1xyXG4gICAgICAgIH0gXHJcbiAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaWNvbi1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbmxpLm5hdi1oZWFkZXItY29sbGFwc2V7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgPiAubmF2LWhlYWRlci1pdGVte1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgLmxzLWNhcmV0e1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaWNvbi1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gQWN0aXZlIHN0YXRlXHJcbi5kcm9wZG93bi1pdGVtLmFjdGl2ZSxcclxuLmRyb3Bkb3duLW1lbnUtaXRlbS5hY3RpdmUgPiBhLFxyXG4uZHJvcGRvd24tbWVudT4uYWN0aXZlPmEge1xyXG4gICAgJixcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaWNvbi1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc3RhdHVzIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmRyb3Bkb3duLW1lZ2F7XHJcbiAgICAuZHJvcGRvd24tbWVudS1pdGVtLmFjdGl2ZSA+IGF7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XHJcbiAgICB9XHJcbn1cclxubGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW17XHJcbiAgICAubHMtY2FyZXR7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWFwcC1uYXYtdG9wLW1lbnUtaWNvbi1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgLmxzLWNhcmV0e1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1pY29uLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXYtaGVhZGVyLXRleHR7XHJcbiAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1pY29uLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxubGkubmF2LWhlYWRlci1jb2xsYXBzZSA+IC5uYXYtaGVhZGVyLWl0ZW06bm90KC5jb2xsYXBzZWQpe1xyXG4gICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAubHMtY2FyZXR7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaWNvbi1hY3RpdmUtY29sb3IpO1xyXG4gICAgfVxyXG4gICAgLm5hdi1oZWFkZXItdGV4dHtcclxuICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1pY29uLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gRGlzYWJsZWQgc3RhdGVcclxuLy9cclxuLy8gR3JheSBvdXQgdGV4dCBhbmQgZW5zdXJlIHRoZSBob3Zlci9mb2N1cyBzdGF0ZSByZW1haW5zIGdyYXlcclxuLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsXHJcbi5kcm9wZG93bi1tZW51LWl0ZW0uZGlzYWJsZWQgPiBhLFxyXG4uZHJvcGRvd24tbWVudT4uZGlzYWJsZWQ+YSB7XHJcbiAgICAmLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBOdWtlIGhvdmVyL2ZvY3VzIGVmZmVjdHNcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIENTUyBncmFkaWVudFxyXG4gICAgICAgIGN1cnNvcjogdmFyKC0tY3Vyc29yLWRpc2FibGVkKTtcclxuICAgIH1cclxufVxyXG4uZHJvcGRvd24tdGl0bGUge1xyXG4gICAgcGFkZGluZzogMTBweCAxNnB4IDA7XHJcbiAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbn1cclxuLy8gT3BlbiBzdGF0ZSBmb3IgdGhlIGRyb3Bkb3duXHJcbi5vcGVuLC5zaG93IHtcclxuICAgIC8vIFNob3cgdGhlIG1lbnVcclxuICAgID4uZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1hbmltYXRpb24tYm90dG9tLWVuZDtcclxuICAgIH1cclxuICAgIC8vIFJlbW92ZSB0aGUgb3V0bGluZSB3aGVuIDpmb2N1cyBpcyB0cmlnZ2VyZWRcclxuICAgID5hIHtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBNZW51IHBvc2l0aW9uaW5nXHJcbi8vXHJcbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cclxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXHJcbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcclxuICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcclxuICAgICAgICByaWdodDogMDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbltkaXI9XCJydGxcIl17XHJcbiAgICAuZHJvcGRvd24tbWVudS1yaWdodCB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogYXV0bztcclxuICAgIH0gXHJcbn1cclxuLmRyb3Bkb3duLW1lbnUtY2VudGVye1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gV2l0aCB2Mywgd2UgZW5hYmxlZCBhdXRvLWZsaXBwaW5nIGlmIHlvdSBoYXZlIGEgZHJvcGRvd24gd2l0aGluIGEgcmlnaHRcclxuLy8gYWxpZ25lZCBuYXYgY29tcG9uZW50LiBUbyBlbmFibGUgdGhlIHVuZG9pbmcgb2YgdGhhdCwgd2UgcHJvdmlkZSBhbiBvdmVycmlkZVxyXG4vLyB0byByZXN0b3JlIHRoZSBkZWZhdWx0IGRyb3Bkb3duIG1lbnUgYWxpZ25tZW50LlxyXG4vL1xyXG4vLyBUaGlzIGlzIG9ubHkgZm9yIGxlZnQtYWxpZ25pbmcgYSBkcm9wZG93biBtZW51IHdpdGhpbiBhIGAubmF2YmFyLXJpZ2h0YCBvclxyXG4vLyBgLnB1bGwtcmlnaHRgIG5hdiBjb21wb25lbnQuXHJcbi5kcm9wZG93bi1tZW51LWxlZnQge1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG59XHJcbi5kcm9wZG93bi1tZW51e1xyXG4gICAgJi5zZkhvdmVyLFxyXG4gICAgJi5zaG93e1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXHJcbi5kcm9wZG93bi1oZWFkZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAzcHggMTVweDtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWhlYWRlci1jb2xvcik7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXHJcbiAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICB9XHJcbiAgICAmLWRlc2Mge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgfVxyXG4gICAgJi0tYWNjb3VudHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCB2YXIoLS1zcGFjaW5nLTN4KSB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAuY2xpZW50LWF2YXRhcntcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQycHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEJhY2tkcm9wIHRvIGNhdGNoIGJvZHkgY2xpY2tzIG9uIG1vYmlsZSwgZXRjLlxyXG4uZHJvcGRvd24tYmFja2Ryb3Age1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogOTk7XHJcbn1cclxuXHJcbi8vIFJpZ2h0IGFsaWduZWQgZHJvcGRvd25zXHJcbi5wdWxsLXJpZ2h0Pi5kcm9wZG93bi1tZW51IHtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogYXV0bztcclxufVxyXG5cclxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXHJcbi8vXHJcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldCwgYnJvLlxyXG4vLyBUT0RPOiBhYnN0cmFjdCB0aGlzIHNvIHRoYXQgdGhlIG5hdmJhciBmaXhlZCBzdHlsZXMgYXJlIG5vdCBwbGFjZWQgaGVyZT9cclxuLmRyb3B1cCxcclxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcclxuICAgIC8vIERpZmZlcmVudCBwb3NpdGlvbmluZyBmb3IgYm90dG9tIHVwIG1lbnVcclxuICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgYm90dG9tOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxyXG4vL1xyXG4vLyBSZWl0ZXJhdGUgcGVyIG5hdmJhci5sZXNzIGFuZCB0aGUgbW9kaWZpZWQgY29tcG9uZW50IGFsaWdubWVudCB0aGVyZS5cclxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgIC5uYXZiYXItcmlnaHQge1xyXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBOZWNlc3NhcnkgZm9yIG92ZXJyaWRlcyBvZiB0aGUgZGVmYXVsdCByaWdodCBhbGlnbmVkIG1lbnUuXHJcbiAgICAgICAgLy8gV2lsbCByZW1vdmUgY29tZSB2NCBpbiBhbGwgbGlrZWxpaG9vZC5cclxuICAgICAgICAuZHJvcGRvd24tbWVudS1sZWZ0IHtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vIE90aGVyXHJcblxyXG4ubGFnb20tZnV0dXJpc3RpYyB7XHJcbiAgICAuaW50bC10ZWwtaW5wdXQge1xyXG4gICAgICAgIC5jb3VudHJ5LWxpc3Qge1xyXG4gICAgICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmRyb3Bkb3duLXNlbGVjdC1saXN0e1xyXG4gICAgLmRyb3Bkb3duLXRvZ2dsZXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGNvbHVtbi1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIC8vIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogd3JhcDtcclxuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyLCY6Zm9jdXMsJjphY3RpdmV7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjp2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAuZHJvcGRvd24tY2FyZXR7XHJcbiAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMtaG92ZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtY29udGVudHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgICAgICAgICAmLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kcm9wZG93bi1pY29ue1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgJjpoYXMoLmdyYXBoaWMtaXRlbSl7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kcm9wZG93bi1jYXJldHtcclxuICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1kaXNhYmxlZHtcclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5kcm9wZG93bi1saXN0e1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB0b3A6IGNhbGMoMTAwJSArIHZhcigtLXNwYWNpbmctMXgpKTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgJi1pdGVte1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbS12KSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICAgICAgJi1ib3JkZXJ7XHJcbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWRyb3Bkb3duLWRpdmlkZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgc3Bhbjpub3QoLmxhYmVsKSxcclxuICAgICAgICAgICAgZGl2e1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubGFiZWx7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMtdmlzaWJsZXtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dmFyKC0tdWktbmF2LWxpbmstYWN0aXZlLWJnKTtcclxuICAgICAgICAgICAgICAgIC5pdGVtLWRlc2N7XHJcbiAgICAgICAgICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAubGFiZWx7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLml0ZW0tZGVzY3tcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgcm93LWdhcDogNHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBkaXZ7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBwe1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcclxuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXNteyAgICAgICAgICAgICAgICBcclxuICAgICAgICAuZHJvcGRvd24tdG9nZ2xle1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZHJvcGRvd24tbGlzdHtcclxuICAgICAgICAgICAgJi1pdGVte1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy14cykgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWljb257XHJcbiAgICAgICAgLmRyb3Bkb3duLWxpc3QtaXRlbXtcclxuICAgICAgICAgICAgLml0ZW0taWNvbntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMThweDtcclxuICAgICAgICAgICAgICAgICY6aGFzKC5ncmFwaGljLWl0ZW0pe1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJAbWl4aW4gc2hvdy1hbmltYXRpb24tdG9wLXN0YXJ0KCkge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNnB4KTtcclxufVxyXG5AbWl4aW4gc2hvdy1hbmltYXRpb24tdG9wLWVuZCgpIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG59XHJcblxyXG5AbWl4aW4gc2hvdy1hbmltYXRpb24tYm90dG9tLXN0YXJ0KCkge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTZweCk7XHJcbn1cclxuQG1peGluIHNob3ctYW5pbWF0aW9uLWJvdHRvbS1lbmQoKSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxufSIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcclxuLy9cclxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXHJcblxyXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiB2YXIoLS1uYXYtZGl2aWRlci1jb2xvciksICRtYXJnaW4teTogdmFyKC0tbmF2LWRpdmlkZXItbWFyZ2luLXkpLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xyXG4gIC8vIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xyXG59XHJcbiIsIi8vXHJcbi8vIEJ1dHRvbiBncm91cHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXHJcbi5idG4tZ3JvdXAsXHJcbi5idG4tZ3JvdXAtdmVydGljYWwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tYnRuLWJveC1zaGFkb3cpO1xyXG5cclxuICAgID4uYnRuIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICAgICAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XHJcbiAgICAgICAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcclxuICAgICAgICBAaW5jbHVkZSBob3ZlcigpIHtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxyXG4uYnRuLXRvb2xiYXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHJcbiAgICAuaW5wdXQtZ3JvdXAge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgICY+LmJ0bi1ncm91cCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi1ncm91cCB7XHJcblxyXG4gICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxyXG4gICAgPi5idG46bm90KDpmaXJzdC1jaGlsZCksXHJcbiAgICA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1idG4tYm9yZGVyLXdpZHRoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXHJcbiAgICA+LmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcclxuICAgID4uYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCk+LmJ0biB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgPi5idG46bm90KDpmaXJzdC1jaGlsZCksXHJcbiAgICA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gU2l6aW5nXHJcbi8vXHJcbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxyXG4uYnRuLWdyb3VwLXNtPi5idG4ge1xyXG4gICAgQGV4dGVuZCAuYnRuLXNtO1xyXG59XHJcblxyXG4uYnRuLWdyb3VwLWxnPi5idG4ge1xyXG4gICAgQGV4dGVuZCAuYnRuLWxnO1xyXG59XHJcblxyXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxyXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuXHJcbiAgICAmOjphZnRlcixcclxuICAgIC5kcm9wdXAgJjo6YWZ0ZXIsXHJcbiAgICAuZHJvcHJpZ2h0ICY6OmFmdGVyIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tc20rLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbn1cclxuXHJcbi5idG4tbGcrLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbn1cclxuXHJcbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxyXG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXHJcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tYnRuLWFjdGl2ZS1ib3gtc2hhZG93KSk7XHJcblxyXG4gICAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxyXG4gICAgJi5idG4tbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcclxuICAgIH1cclxufVxyXG5cclxuLy9cclxuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xyXG4vL1xyXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgID4uYnRuLFxyXG4gICAgPi5idG4tZ3JvdXAge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgID4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxyXG4gICAgPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0gdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXHJcbiAgICA+LmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcclxuICAgID4uYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCk+LmJ0biB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XHJcbiAgICB9XHJcblxyXG4gICAgPi5idG46bm90KDpmaXJzdC1jaGlsZCksXHJcbiAgICA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuIHtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcclxuLy9cclxuLy8gSW4gb3JkZXIgdG8gc3VwcG9ydCB0aGUgYnJvd3NlcidzIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFjaywgcG93ZXJlZCBieSB0aGVcclxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXHJcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cclxuLy8gU2ltcGx5IHZpc3VhbGx5IGhpZGluZyB0aGUgaW5wdXRzIHZpYSBgb3BhY2l0eWAgd291bGQgbGVhdmUgdGhlbSBjbGlja2FibGUgaW5cclxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxyXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxyXG4vL1xyXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXHJcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxyXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdLFxyXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XHJcblxyXG4gICAgPi5idG4sXHJcbiAgICA+LmJ0bi1ncm91cD4uYnRuIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCB2YWx1ZVxyXG5cclxuICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbiAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIlxyXG4uaW5wdXQtZ3JvdXAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcclxuICAgICZbY2xhc3MqPVwiY29sLVwiXSB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgICBcclxuXHJcbiAgICA+IC5mb3JtLWNvbnRyb2wsXHJcbiAgICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxyXG4gICAgPiAuY3VzdG9tLXNlbGVjdCxcclxuICAgID4gLmN1c3RvbS1maWxlIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICBmbGV4OiAxIDEgYXV0bzsgXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICsgLmZvcm0tY29udHJvbCxcclxuICAgICAgICArIC5jdXN0b20tc2VsZWN0LFxyXG4gICAgICAgICsgLmN1c3RvbS1maWxlIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLSB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xyXG4gICAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxyXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcclxuICAgID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuXHJcbiAgICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXHJcbiAgICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xyXG4gICAgICAgIHotaW5kZXg6IDQ7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuZm9ybS1jb250cm9sLFxyXG4gICAgPiAuY3VzdG9tLXNlbGVjdCB7XHJcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxyXG4gICAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXHJcbiAgICA+IC5jdXN0b20tZmlsZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxyXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgID4gLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICAgICAgKy5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMtc20pIHZhcigtLWJvcmRlci1yYWRpdXMtc20pIDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgPi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pIDAgIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcclxuLy9cclxuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxyXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxyXG4vLyAzKSBzdXBwb3J0IEhUTUw1IGZvcm0gdmFsaWRhdGlvbi5cclxuXHJcbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxyXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxyXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcclxuICAvLyBhcyBvdXIgaW5wdXRzLlxyXG4gIC5idG4ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5idG4gKyAuYnRuLFxyXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcclxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxyXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XHJcbiAgICBtYXJnaW4tbGVmdDogLSB2YXIoLS1pbnB1dC1ib3JkZXItd2lkdGgpO1xyXG4gIH1cclxufVxyXG5cclxuLmlucHV0LWdyb3VwLXByZXBlbmQgeyBtYXJnaW4tcmlnaHQ6IC0gdmFyKC0taW5wdXQtYm9yZGVyLXdpZHRoKTsgfVxyXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHsgbWFyZ2luLWxlZnQ6IC0gdmFyKC0taW5wdXQtYm9yZGVyLXdpZHRoKTsgfVxyXG5cclxuLy8gVGV4dHVhbCBhZGRvbnNcclxuLy9cclxuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXHJcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxyXG5cclxuLmlucHV0LWdyb3VwLXRleHQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtdikgdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0taW5wdXQtZm9udC1zaXplKSk7IC8vIE1hdGNoIGlucHV0c1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWlucHV0LWZvbnQtd2VpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbnB1dC1saW5lLWhlaWdodCk7XHJcbiAgICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3IpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWdyb3VwLWFkZG9uLWJnKTtcclxuICAgIGJvcmRlcjogdmFyKC0taW5wdXQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1pbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3IpO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKSk7XHJcbiAgXHJcbiAgICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXHJcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbi8vIFNpemluZ1xyXG4vL1xyXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXHJcbi8vIG1hbmlwdWxhdGlvbi5cclxuXHJcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcclxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xyXG4gIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWxnKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1sZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcclxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXHJcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXHJcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcclxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XHJcbiAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1sZy12KSB2YXIoLS11aS1wYWRkaW5nLWxnLWgpO1xyXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS1mb250LXNpemUtbGcpKTtcclxuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0taW5wdXQtbGctYm9yZGVyLXJhZGl1cykpO1xyXG59XHJcblxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXHJcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcclxuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XHJcbn1cclxuXHJcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXHJcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxyXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXHJcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xyXG4gICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1zbS12KSB2YXIoLS11aS1wYWRkaW5nLXNtLWgpO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLWZvbnQtc2l6ZS1zbSkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cykpO1xyXG59XHJcblxyXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcclxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xyXG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWN1c3RvbS1zZWxlY3QtcGFkZGluZy14KSArIHZhcigtLWN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpO1xyXG59XHJcblxyXG5cclxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xyXG4vL1xyXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xyXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXHJcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxyXG5cclxuXHJcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcclxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcclxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcclxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXHJcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmJ0bixcclxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcclxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcclxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxufVxyXG5cclxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXHJcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcclxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxyXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxyXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXHJcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxufVxyXG5cclxuXHJcblxyXG4uaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1idG4sXHJcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcclxuICAgICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxufVxyXG4uaW5wdXQtZ3JvdXAtYWRkb24sXHJcbi5pbnB1dC1ncm91cC1idG4ge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IFxyXG59XHJcbi5pbnB1dC1ncm91cC1hZGRvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMCB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1ncm91cC1hZGRvbi1iZyk7XHJcbiAgICBib3JkZXI6IHZhcigtLWlucHV0LWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcclxuICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcclxuICAgICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xyXG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgfVxyXG4gICAgJi5pbnB1dC1zbSB7XHJcbiAgICAgICAgcGFkZGluZzogMCB2YXIoLS11aS1wYWRkaW5nLXNtLWgpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1zbS1ib3JkZXItcmFkaXVzKTtcclxuICAgIH1cclxuICAgICYuaW5wdXQtbGcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tdWktcGFkZGluZy1sZy1oKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtbGctYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB9XHJcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbnB1dC1ncm91cC1idG4ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgID4gLmJ0biB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1pbnB1dC1ncm91cC1zcGFjaW5nLWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWlucHV0LWdyb3VwLXNwYWNpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoc20pIHtcclxuICAgIC5pbnB1dC1ncm91cC12ZXJ0aWNhbC1zbSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAuaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQrLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLTFweCAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLm5hdiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgYSxcclxuICAgIC5uYXYtbGluayB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLW5hdi1saW5rLWhlaWdodCk7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tbmF2LWxpbmstcGFkZGluZy12KSB2YXIoLS1uYXYtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgIGNvbG9yOiBuYXYoLS1uYXYtbGluay1jb2xvcik7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcclxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmRpc2FibGVkIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLW5hdi1kaXNhYmxlZC1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXYge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGEsXHJcbiAgICAgICAgLm5hdi1saW5rIHtcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLW5hdi1saW5rLXBhZGRpbmctaCkgKyB2YXIoLS11aS1uYXYtbGluay1ob3Zlci1wYWRkaW5nLWgpKTtcclxuICAgICAgICAgICAgY29sb3I6IG5hdigtLW5hdi1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29uZGVuc2VkIHtcclxuICAgICAgICBhLFxyXG4gICAgICAgIC5uYXYtbGluayB7ICAgICBcclxuICAgICAgICAgICAgbWluLWhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLW5hdi1saW5rLXBhZGRpbmctdikgdmFyKC0tbmF2LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vXHJcbi8vIFRhYnNcclxuLy9cclxuXHJcbi5uYXYtdGFicyB7XHJcbiAgICAvL2JvcmRlci1ib3R0b206IHZhcigtLW5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tbmF2LXRhYnMtYm9yZGVyLWNvbG9yKTtcclxuICAgIGEsXHJcbiAgICAubmF2LWxpbmsge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbmF2LXRhYnMtbGluay1uZWdhdGl2ZS1tYXJnaW4pO1xyXG4gICAgICAgIC8vYm9yZGVyOiB2YXIoLS1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLW5hdi10YWJzLWJvcmRlci1yYWRpdXMpKTtcclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1ob3Zlci1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICA+aSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1hY3RpdmUtaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1uYXYtZGlzYWJsZWQtbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICA+aSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1uYXYtdGFicy1saW5rLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYteHN7XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGksXHJcbiAgICAubmF2LWl0ZW0ge1xyXG4gICAgICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1uYXYtdGFicy1pdGVtLW1hcmdpbi1yaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYS5hY3RpdmUsXHJcbiAgICAubmF2LWxpbmsuYWN0aXZlLFxyXG4gICAgbGkuc2hvdyBhLFxyXG4gICAgbGkuYWN0aXZlIGEsXHJcbiAgICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1hY3RpdmUtYmcpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiB2YXIoLS1uYXYtbGluay1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICByaWdodDogdmFyKC0tbmF2LWxpbmstcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItd2lkdGgpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+aSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1uYXYtdGFicy1saW5rLWFjdGl2ZS1pY29uLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLSB2YXIoLS1uYXYtdGFicy1ib3JkZXItd2lkdGgpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xyXG4gICAgfVxyXG4gICAgJi5uYXYtdGFicy1mZWF0dXJlc3tcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTh4KTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmLm5hdi10YWJzLWNvbGxhcHNle1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIC5wbHVzLXZlcnR7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGk6bm90KC5jb2xsYXBzZWQpe1xyXG4gICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOnZhcigtLW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAucGx1cy12ZXJ0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsaS5jb2xsYXBzZWR7XHJcbiAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbmF2LXRhYnMtbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxleyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjp2YXIoLS1uYXYtdGFicy1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOnZhcigtLW5hdi10YWJzLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJiArIC50YWItY29udGVudHtcclxuICAgICAgICAgICAgLnRhYi1wYW5le1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXBhbmVsLWJvcmRlci1kaXZpZGVyLWNvbG9yKTsgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gIFxyXG59XHJcblxyXG4vL1xyXG4vLyBQaWxsc1xyXG4vL1xyXG5cclxuLm5hdi1waWxscyB7XHJcbiAgICAubmF2LWxpbmsge1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpKTtcclxuICAgIH1cclxuXHJcbiAgICAubmF2LWxpbmsuYWN0aXZlLFxyXG4gICAgLnNob3c+Lm5hdi1saW5rIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1uYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vL1xyXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcclxuLy9cclxuXHJcbi5uYXYtZmlsbCB7XHJcbiAgICA+Lm5hdi1saW5rLFxyXG4gICAgPmxpLFxyXG4gICAgLm5hdi1pdGVtLFxyXG4gICAgPmEge1xyXG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLm5hdi1qdXN0aWZpZWQge1xyXG4gICAgPi5uYXYtbGluayxcclxuICAgIC5uYXYtaXRlbSB7XHJcbiAgICAgICAgZmxleC1iYXNpczogMDtcclxuICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBUYWJiYWJsZSB0YWJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXHJcbi50YWItY29udGVudCB7XHJcbiAgICA+LnRhYi1wYW5lIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgID4uYWN0aXZlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG4udGFiIHtcclxuICAgICYudGFiLWJveGVkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XHJcbiAgICAgICAgLnBhbmVsLFxyXG4gICAgICAgIC50YWJsZS1jb250YWluZXIge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50YWItcGFuZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXYtdGFicyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2staGVhZGVyLWJnKTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG5cclxuICAgICAgICAgICAgJj5saSB7XHJcbiAgICAgICAgICAgICAgICAmPmEge1xyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm5hdiB7XHJcbiAgICAmLWxnIHtcclxuICAgICAgICA+bGksXHJcbiAgICAgICAgLm5hdi1pdGVtIHtcclxuICAgICAgICAgICAgPmEsXHJcbiAgICAgICAgICAgIC5uYXYtbGluayB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnRhYi1wYW5lIHtcclxuICAgICYjdHdvZmEge1xyXG4gICAgICAgIC5hbGVydCB7XHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgJi5hbGVydC1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICArIC5hbGVydC1ib2R5IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiXHJcbi5uYXZiYXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xyXG4gICAgcGFkZGluZzogdmFyKC0tbmF2YmFyLXBhZGRpbmctdikgdmFyKC0tbmF2YmFyLXBhZGRpbmctaCk7XHJcbiAgICBcclxuICAgICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxuICAgIC5jb250YWluZXIsXHJcbiAgICAuY29udGFpbmVyLWZsdWlkIHtcclxuICAgICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xyXG4gICAgfVxyXG5cclxuICAgIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xyXG4gICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xyXG4gICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLy8gTmF2YmFyIGJyYW5kXHJcbi8vXHJcbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxyXG5cclxuLm5hdmJhci1icmFuZCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tbmF2YmFyLXBhZGRpbmctdik7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbmF2YmFyLXBhZGRpbmctdik7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLW5hdmJhci1wYWRkaW5nLWgpO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLWZvbnQtc2l6ZS1sZykpO1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIFxyXG4gICAgJjpob3ZlciwmOmZvY3VzIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBcclxuLy8gTmF2YmFyIG5hdlxyXG4vL1xyXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cclxuXHJcbi5uYXZiYXItbmF2IHtcclxuZGlzcGxheTogZmxleDtcclxuZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXHJcbnBhZGRpbmctbGVmdDogMDtcclxubWFyZ2luLWJvdHRvbTogMDtcclxubGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbi5uYXYtbGluayB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG59XHJcblxyXG4uZHJvcGRvd24tbWVudSB7XHJcbiAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbn1cclxufVxyXG5cclxuXHJcbi8vIE5hdmJhciB0ZXh0XHJcbi8vXHJcbi8vXHJcblxyXG4ubmF2YmFyLXRleHQge1xyXG5kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbnBhZGRpbmctdG9wOiB2YXIoLS1uYXZiYXItcGFkZGluZy12KTtcclxucGFkZGluZy1ib3R0b206IHZhcigtLW5hdmJhci1wYWRkaW5nLXYpO1xyXG59XHJcbiAgXHJcbiAgXHJcbi5uYXZiYXItY29sbGFwc2Uge1xyXG4gICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgIGZsZXgtZ3JvdzogMTtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8vb2xkIG5hdmJhclxyXG4ubmF2YmFyLXRvZ2dsZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xyXG4gIH1cclxuICBAaW5jbHVkZSBydGx7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XHJcbiAgfVxyXG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gIHdpZHRoOiAzOHB4O1xyXG4gIGhlaWdodDogMzRweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTsgLy8gV2UgcmVtb3ZlIHRoZSBgb3V0bGluZWAgaGVyZSwgYnV0IGxhdGVyIGNvbXBlbnNhdGUgYnkgYXR0YWNoaW5nIGA6aG92ZXJgXHJcbiAgLy8gc3R5bGVzIHRvIGA6Zm9jdXNgLlxyXG4gICY6Zm9jdXMge1xyXG4gICAgICBvdXRsaW5lOiAwO1xyXG4gIH0gLy8gQmFyc1xyXG4gIC5pY29uLWJhciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMThweDtcclxuICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgfVxyXG4gIC5pY29uLWJhciB7XHJcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgIHRvcDogOHB4XHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgdG9wOiAxNnB4XHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgICAgdG9wOiAyNHB4XHJcbiAgICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXHJcbi5uYXZiYXItdG9nZ2xlciB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkpIHZhcigtLW5hdmJhci10b2dnbGVyLXBhZGRpbmcteCk7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFhcigtLW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXHJcbiAgICBib3JkZXI6IHZhcigtLW5hdmJhci10b2dnbGVyLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKSk7XHJcbiAgXHJcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAvLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXHJcbiAgLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXHJcbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IHZhcigtLW5hdmJhci10b2dnbGVyLWljb24td2lkdGgpO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1uYXZiYXItdG9nZ2xlci1pY29uLWhlaWdodCk7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgY29udGVudDogdmFyKC0tbmF2YmFyLXRvZ2dsZXItaWNvbi1jb250ZW50KTtcclxuICAgIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XHJcbiAgfVxyXG4gIFxyXG4gIC5uYXZiYXItbmF2LXNjcm9sbCB7XHJcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1uYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0KTtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgfVxyXG5cclxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXHJcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cclxuLy8gVE9ETyAtIHogYnM0IHByemVyb2JpY1xyXG4ubmF2YmFyLWV4cGFuZCB7XHJcbiAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xyXG4gICAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XHJcbiAgICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xyXG4gIFxyXG4gICAgICAmI3skaW5maXh9IHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgIH1cclxuICBcclxuICAgICAgICAgID4gLmNvbnRhaW5lcixcclxuICAgICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xyXG4gICAgICAgICAgfVxyXG4gIFxyXG4gICAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XHJcbiAgICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xyXG4gICAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gIFxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcclxuICAgICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgIFxyXG4gICAgICAgICAgLm5hdmJhci1uYXYge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyAgXHJcbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIH0gIFxyXG4gICAgICAgICAgICAubmF2LWxpbmsge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICBcclxuICAgICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcclxuICAgICAgICAgICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fSB7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgICAgfVxyXG4gIFxyXG4gICAgICAgICAgPiAuY29udGFpbmVyLFxyXG4gICAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XHJcbiAgICAgICAgICB9XHJcbiAgXHJcbiAgICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcclxuICAgICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XHJcbiAgICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICBcclxuICAgICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICAgICAgfVxyXG4gIFxyXG4gICAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcclxuICBcclxuICAgICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xyXG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xyXG4gICAgICAgICAgfVxyXG4gIFxyXG4gICAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIE5hdmJhciB0aGVtZXNcclxuLy9cclxuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxyXG4gIFxyXG4ubWVudS1vcGVuIHtcclxuICAgIC5hcHAtbmF2LXRvZ2dsZSB7XHJcbiAgICAgICAgLmljb24tYmFyIHtcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSksXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcclxuICAgICAgICAgICAgICAgIHRvcDogMThweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNnB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDZweDtcclxuICAgICAgICAgICAgICAgIHRvcDogMTRweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5uYXZiYXItdG9nZ2xle1xyXG4gICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXXtcclxuICAgICAgLmljb24tYmFyIHtcclxuICAgICAgICAmOm50aC1jaGlsZCgxKSxcclxuICAgICAgICAmOm50aC1jaGlsZCg0KSB7XHJcbiAgICAgICAgICAgIHRvcDogMThweDtcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgICAgbGVmdDogNnB4O1xyXG4gICAgICAgICAgICB0b3A6IDE0cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgICAgIGxlZnQ6IDZweDtcclxuICAgICAgICAgICAgdG9wOiAxNHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiXHJcbi5icmVhZGNydW1iIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1icmVhZGNydW1iLXBhZGRpbmctdmVydGljYWwpIHZhcigtLWJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsKTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS1icmVhZGNydW1iLWZvbnQtc2l6ZSkpOy8vXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmVhZGNydW1iLWJnKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKSk7Ly9cclxuICAgIFxyXG4gICAgPiBsaSwgLmJyZWFkY3J1bWItaXRlbSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgK2xpLCsuYnJlYWRjcnVtYi1pdGVte1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXZlcnRpY2FsKTtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiB2YXIoLS1icmVhZGNydW1iLXNlcGFyYXRvcik7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbCkgdmFyKC0tYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJlYWRjcnVtYi1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuYWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnJlYWRjcnVtYi1hY3RpdmUtY29sb3IpO1xyXG4gICAgfVxyXG59IiwiLnBhZ2luYXRpb24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBhZGRpbmc6IDhweCAxNnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGFibGUtY29udGFpbmVyLXBhZ2luYXRpb24tYmcpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLWJhc2UtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICA+IGxpLCAucGFnZS1pdGVtIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICAgIC5wYWdlLWxpbmssXHJcbiAgICAgICAgPiBhLFxyXG4gICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhzKTtcclxuICAgICAgICAgICAgcGFkZGluZzogNHB4IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcGFnaW5hdGlvbi1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXBhZ2luYXRpb24tYm9yZGVyKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLWJhc2UtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIC5wYWdlLWxpbmssXHJcbiAgICAgICAgICAgID4gYSxcclxuICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhZ2UtaXRlbSAucGFnZS1saW5rLFxyXG4gICAgPiBsaSAucGFnZS1pdGVtLFxyXG4gICAgPiBsaSA+IGEsXHJcbiAgICA+IGxpID4gc3BhbiB7XHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24taG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWhvdmVyLWJvcmRlcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuYWN0aXZlIC5wYWdlLWxpbmssXHJcbiAgICA+IC5hY3RpdmUgPiBhLFxyXG4gICAgPiAuYWN0aXZlID4gc3BhbiB7XHJcbiAgICAgICAgJixcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWFjdGl2ZS1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyKTtcclxuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgID4gLmFjdGl2ZSAucGFnZS1saW5re1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgICA+IC5kaXNhYmxlZCB7XHJcbiAgICAgICAgPiAucGFnZS1saW5rLFxyXG4gICAgICAgID4gLnBhZ2UtbGluazpob3ZlcixcclxuICAgICAgICA+IC5wYWdlLWxpbms6Zm9jdXMsXHJcbiAgICAgICAgPiBzcGFuLFxyXG4gICAgICAgID4gc3Bhbjpob3ZlcixcclxuICAgICAgICA+IHNwYW46Zm9jdXMsXHJcbiAgICAgICAgPiBhLFxyXG4gICAgICAgID4gYTpob3ZlcixcclxuICAgICAgICA+IGE6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhZ2luYXRpb24tZGlzYWJsZWQtYmcpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyKTtcclxuICAgICAgICAgICAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItZGlzYWJsZWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBhZ2luYXRpb24tbGcge1xyXG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKHZhcigtLXBhZGRpbmctbGctdmVydGljYWwpLCB2YXIoLS11aS1wYWRkaW5nLWxnLWgpLCB2YXIoLS1mb250LXNpemUtbGcpLCB2YXIoLS1saW5lLWhlaWdodC1sZyksIHZhcigtLWJvcmRlci1yYWRpdXMtbGcpKTtcclxufVxyXG4ucGFnaW5hdGlvbi1zbSB7XHJcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUodmFyKC0tdWktcGFkZGluZy1zbS12KSwgdmFyKC0tdWktcGFkZGluZy1zbS1oKSwgdmFyKC0tZm9udC1zaXplLXNtKSwgdmFyKC0tbGluZS1oZWlnaHQtc20pLCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSk7XHJcbn0iLCIvLyBQYWdpbmF0aW9uXHJcblxyXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcclxuICAucGFnZS1saW5rIHtcclxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgfVxyXG5cclxuICAucGFnZS1pdGVtIHtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAucGFnZS1saW5rIHtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAucGFnZS1saW5rIHtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBMYWJlbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IHZhcigtLWxhYmVsLXBhZGRpbmcpO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1sYWJlbC1mb250LXNpemUpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxhYmVsLWxpbmUtaGVpZ2h0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgY29sb3I6IHZhcigtLWxhYmVsLWNvbG9yKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1sYWJlbC1ib3JkZXItcmFkaXVzKTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1bnNldDtcclxuICAgIGNvbHVtbi1nYXA6IDZweDtcclxuICAgIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYgdG8gYS5sYWJlbFxyXG4gICAgLy8gRW1wdHkgbGFiZWxzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC8vIFF1aWNrIGZpeCBmb3IgbGFiZWxzIGluIGJ1dHRvbnNcclxuICAgIC5idG4gJiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRvcDogLTFweDtcclxuICAgIH1cclxuICAgICYubGFiZWwtc2F2ZXtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIHBhZGRpbmc6IDNweCA2cHg7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVuc2V0IWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxhYmVsLXNhdmluZ3MtYmcpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKTtcclxuICAgICAgICBjb2x1bW4tZ2FwOiAwO1xyXG4gICAgfVxyXG4gICAgICAgICYubGFiZWwtcm91bmRlZHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgfVxyXG4gICAgJi14c3tcclxuICAgICAgICBjb2x1bW4tZ2FwOiA0cHg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjBweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIC5zdGF0dXN7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4cyk7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNnB4O1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaXtcclxuICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtaW5uZXItYm9yZGVye1xyXG4gICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLy8gQWRkIGhvdmVyIGVmZmVjdHMsIGJ1dCBvbmx5IGZvciBsaW5rc1xyXG5hLmxhYmVsIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGFiZWwtbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQ29sb3JzXHJcbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGxhYmVscyBnZXQgZGFya2VyIG9uIDpob3ZlcilcclxuLmxhYmVsIHtcclxuICAgICYtZGVmYXVsdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCh2YXIoLS1sYWJlbC1kZWZhdWx0LWJnKSwgdmFyKC0tbGFiZWwtZGVmYXVsdC1jb2xvciksIHZhcigtLWxhYmVsLWRlZmF1bHQtY29sb3IpLCB2YXIoLS1sYWJlbC1jb2xvcikpO1xyXG4gICAgfVxyXG4gICAgJi1wcmltYXJ5IHtcclxuICAgICAgICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KHZhcigtLWxhYmVsLXByaW1hcnktYmcpLCB2YXIoLS1sYWJlbC1wcmltYXJ5LWNvbG9yKSwgdmFyKC0tbGFiZWwtcHJpbWFyeS1iZyksIHZhcigtLWxhYmVsLXByaW1hcnktY29sb3IpKTtcclxuICAgIH1cclxuICAgICYtc2Vjb25kYXJ5IHtcclxuICAgICAgICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KHZhcigtLWxhYmVsLXNlY29uZGFyeS1iZyksIHZhcigtLWxhYmVsLXNlY29uZGFyeS1jb2xvciksIHZhcigtLWxhYmVsLXNlY29uZGFyeS1iZyksIHZhcigtLWxhYmVsLXNlY29uZGFyeS1jb2xvcikpO1xyXG4gICAgfVxyXG4gICAgJi1wcmltYXJ5LWZhZGVkIHtcclxuICAgICAgICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KHZhcigtLWxhYmVsLXByaW1hcnktZmFkZWQtYmcpLCB2YXIoLS1sYWJlbC1wcmltYXJ5LWZhZGVkLWNvbG9yKSwgdmFyKC0tbGFiZWwtcHJpbWFyeS1mYWRlZC1iZyksIHZhcigtLWxhYmVsLWNvbG9yKSk7XHJcbiAgICB9XHJcbiAgICAmLXN1Y2Nlc3Mge1xyXG4gICAgICAgIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQodmFyKC0tbGFiZWwtc3VjY2Vzcy1iZyksIHZhcigtLWxhYmVsLXN1Y2Nlc3MtY29sb3IpLCB2YXIoLS1sYWJlbC1zdWNjZXNzLWNvbG9yKSwgdmFyKC0tbGFiZWwtY29sb3IpKTtcclxuICAgIH1cclxuICAgICYtaW5mbyB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCh2YXIoLS1sYWJlbC1pbmZvLWJnKSwgdmFyKC0tbGFiZWwtaW5mby1jb2xvciksIHZhcigtLWxhYmVsLWluZm8tY29sb3IpLCB2YXIoLS1sYWJlbC1jb2xvcikpO1xyXG4gICAgfVxyXG4gICAgJi13YXJuaW5nIHtcclxuICAgICAgICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KHZhcigtLWxhYmVsLXdhcm5pbmctYmcpLCB2YXIoLS1sYWJlbC13YXJuaW5nLWNvbG9yKSwgdmFyKC0tbGFiZWwtd2FybmluZy1jb2xvciksIHZhcigtLWxhYmVsLWNvbG9yKSk7XHJcbiAgICB9XHJcbiAgICAmLWRhbmdlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCh2YXIoLS1sYWJlbC1kYW5nZXItYmcpLCB2YXIoLS1sYWJlbC1kYW5nZXItY29sb3IpLCB2YXIoLS1sYWJlbC1kYW5nZXItY29sb3IpLCB2YXIoLS1sYWJlbC1jb2xvcikpO1xyXG4gICAgfVxyXG4gICAgJi1wdXJwbGV7XHJcbiAgICAgICAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCh2YXIoLS1sYWJlbC1wdXJwbGUtYmcpLCB2YXIoLS1sYWJlbC1wdXJwbGUtY29sb3IpLCB2YXIoLS1sYWJlbC1wdXJwbGUtYmcpLCB2YXIoLS1sYWJlbC1wdXJwbGUtY29sb3IpKTtcclxuICAgIH1cclxuICAgICYtc2F2aW5nc3tcclxuICAgICAgICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KHZhcigtLWxhYmVsLXNhdmluZ3MtYmcpLCB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKSwgdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvciksIHZhcigtLWxhYmVsLWNvbG9yKSk7XHJcbiAgICB9XHJcbiAgICAmLXJlcXVpcmVke1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnKic7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogLTNweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICAgICAgICAgICAgcmlnaHQ6IC05cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBTaXplc1xyXG5cclxuLmxhYmVse1xyXG4gICAgJi14eHN7XHJcbiAgICAgICAgQGluY2x1ZGUgbGFiZWwtc2l6ZSh2YXIoLS1sYWJlbC14eHMtZm9udC1zaXplKSwgdmFyKC0tbGFiZWwteHhzLWxpbmUtaGVpZ2h0KSwgdmFyKC0tbGFiZWwteHhzLXBhZGRpbmcpLCB2YXIoLS1sYWJlbC14eHMtYm9yZGVyLXJhZGl1cyksIHZhcigtLWxhYmVsLWljb24tc2l6ZSkpO1xyXG4gICAgfVxyXG4gICAgJi14c3tcclxuICAgICAgICBAaW5jbHVkZSBsYWJlbC1zaXplKHZhcigtLWxhYmVsLXh4cy1mb250LXNpemUpLCB2YXIoLS1sYWJlbC14eHMtbGluZS1oZWlnaHQpLCB2YXIoLS1sYWJlbC14cy1wYWRkaW5nKSwgdmFyKC0tbGFiZWwteHMtYm9yZGVyLXJhZGl1cyksIHZhcigtLWxhYmVsLWljb24tc2l6ZSkpO1xyXG4gICAgfVxyXG4gICAgJi1zbXtcclxuICAgICAgICBAaW5jbHVkZSBsYWJlbC1zaXplKHZhcigtLWxhYmVsLXNtLWZvbnQtc2l6ZSksIHZhcigtLWxhYmVsLXNtLWxpbmUtaGVpZ2h0KSwgdmFyKC0tbGFiZWwtc20tcGFkZGluZyksIHZhcigtLWxhYmVsLXNtLWJvcmRlci1yYWRpdXMpLCB2YXIoLS1sYWJlbC1pY29uLXNpemUpKTtcclxuICAgIH1cclxuICAgICYtbGcge1xyXG4gICAgICAgIEBpbmNsdWRlIGxhYmVsLXNpemUodmFyKC0tbGFiZWwtbGctZm9udC1zaXplKSwgdmFyKC0tbGFiZWwtbGctbGluZS1oZWlnaHQpLCB2YXIoLS1sYWJlbC1sZy1wYWRkaW5nKSwgdmFyKC0tbGFiZWwtbGctYm9yZGVyLXJhZGl1cyksIHZhcigtLWxhYmVsLWljb24tc2l6ZSkpO1xyXG4gICAgfVxyXG59IiwiLy8gTGFiZWxzXHJcblxyXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkYmFja2dyb3VuZC1jb2xvciwgJGNvbG9yLCAkYmFja2dyb3VuZC1zb2xpZCwgJGNvbG9yLXNvbGlkKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICAmW2hyZWZdIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yOy8vZGFya2VuKCRjb2xvciwgMTAlKTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5sYWJlbC1zb2xpZHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLXNvbGlkO1xyXG4gICAgY29sb3I6ICRjb2xvci1zb2xpZDtcclxuICB9XHJcbiAgJi5sYWJlbC1vdXRsaW5le1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJhY2tncm91bmQtc29saWQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAkYmFja2dyb3VuZC1zb2xpZDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBsYWJlbC1zaXplKCRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJHBhZGRpbmcsICRib3JkZXItcmFkaXVzLCAkaWNvbi1zaXplKXtcclxuICBmb250LXNpemU6ICRmb250LXNpemU7XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcclxuICBpe1xyXG4gICAgZm9udC1zaXplOiAkaWNvbi1zaXplO1xyXG4gIH1cclxuICBzdmd7XHJcbiAgICB3aWR0aDogJGljb24tc2l6ZTtcclxuICB9XHJcbn0iLCIvL1xyXG4vLyBCYWRnZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQmFzZSBjbGFzc1xyXG4uYmFkZ2Uge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1iYWRnZS1saW5lLWhlaWdodCk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1iYWRnZS1wYWRkaW5nLXkpIHZhcigtLWJhZGdlLXBhZGRpbmcteCk7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWJhZGdlLWZvbnQtc2l6ZSk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tYmFkZ2UtZm9udC13ZWlnaHQpO1xyXG4gICAgY29sb3I6IHZhcigtLWJhZGdlLWNvbG9yKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1iYWRnZS1saW5lLWhlaWdodCk7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhZGdlLWJnKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tYmFkZ2UtYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS1iYWRnZS10cmFuc2l0aW9uKSk7XHJcbiAgICBAYXQtcm9vdCBhI3smfSB7XHJcbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXHJcbiAgICAmOmVtcHR5IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xyXG4gICAgLmJ0biAmIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiAtMXB4O1xyXG4gICAgfVxyXG4gICAgLmJ0bi14cyAmLFxyXG4gICAgLmJ0bi1ncm91cC14cz4uYnRuICYge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBwYWRkaW5nOiAxcHggNXB4O1xyXG4gICAgfVxyXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYmFkZ2VcclxuICAgIC8vIEFjY291bnQgZm9yIGJhZGdlcyBpbiBuYXZzXHJcbiAgICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZT4mLFxyXG4gICAgLm5hdi1waWxscz4uYWN0aXZlPmE+JiB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJhZGdlLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFkZ2UtYWN0aXZlLWJnKTtcclxuICAgIH1cclxuICAgIC5saXN0LWdyb3VwLWl0ZW0+JiB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbT4mKyYge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgfVxyXG4gICAgLm5hdi1waWxscz5saT5hPiYge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XHJcbiAgICB9XHJcbiAgICAmLmJhZGdlLW5vLXJvdW5kIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgfVxyXG4gICAgJi5iYWRnZS1yaWdodCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYmFkZ2UtY2lyY2xlIHtcclxuICAgICYteHMge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgd2lkdGg6IDE4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogMTBweDtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICB9XHJcbiAgICAmLWxnIHsgICAgICAgIFxyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogMjRweDtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gSG92ZXIgc3RhdGUsIGJ1dCBvbmx5IGZvciBsaW5rc1xyXG5hLmJhZGdlIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYmFkZ2UtbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQ29sb3JzXHJcbi8vXHJcbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXHJcbi5iYWRnZS1zdWNjZXNzIHtcclxuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQodmFyKC0tYmFkZ2Utc3VjY2Vzcy1iZyksIHZhcigtLWJhZGdlLXN1Y2Nlc3MtaG92ZXItYmcpLCB2YXIoLS1iYWRnZS1zdWNjZXNzLWNvbG9yKSk7XHJcbn1cclxuLmJhZGdlLWluZm8ge1xyXG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCh2YXIoLS1iYWRnZS1pbmZvLWJnKSwgdmFyKC0tYmFkZ2UtaW5mby1ob3Zlci1iZyksIHZhcigtLWJhZGdlLWluZm8tY29sb3IpKTtcclxufVxyXG4uYmFkZ2Utd2FybmluZyB7XHJcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KHZhcigtLWJhZGdlLXdhcm5pbmctYmcpLCB2YXIoLS1iYWRnZS13YXJuaW5nLWhvdmVyLWJnKSwgdmFyKC0tYmFkZ2Utd2FybmluZy1jb2xvcikpO1xyXG59XHJcbi5iYWRnZS1kYW5nZXIge1xyXG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCh2YXIoLS1iYWRnZS1kYW5nZXItYmcpLCB2YXIoLS1iYWRnZS1kYW5nZXItaG92ZXItYmcpLCB2YXIoLS1iYWRnZS1kYW5nZXItY29sb3IpKTtcclxufVxyXG4uYmFkZ2UtcHJpbWFyeSB7XHJcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KHZhcigtLWJhZGdlLXByaW1hcnktYmcpLCB2YXIoLS1iYWRnZS1wcmltYXJ5LWhvdmVyLWJnKSwgdmFyKC0tYmFkZ2UtcHJpbWFyeS1jb2xvcikpO1xyXG59XHJcbi5iYWRnZS1wcmltYXJ5LWZhZGVkIHtcclxuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQodmFyKC0tYmFkZ2UtcHJpbWFyeS1mYWRlZC1iZyksIHZhcigtLWJhZGdlLXByaW1hcnktZmFkZWQtaG92ZXItYmcpLCB2YXIoLS1iYWRnZS1wcmltYXJ5LWZhZGVkLWNvbG9yKSk7XHJcbn1cclxuLmJhZGdlLWRlZmF1bHQge1xyXG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCh2YXIoLS1iYWRnZS1kZWZhdWx0LWJnKSwgdmFyKC0tYmFkZ2UtZGVmYXVsdC1iZyksIHZhcigtLWJhZGdlLWRlZmF1bHQtY29sb3IpKTtcclxufSIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZywgJGJnLWhvdmVyLCAkY29sb3IpIHtcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcclxuXHJcbiAgQGF0LXJvb3QgYSN7Jn0ge1xyXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ob3ZlcjtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJi5mb2N1cyB7XHJcbiAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWJhZGdlLWZvY3VzLXdpZHRoKSByZ2JhKCRiZywgLjUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuanVtYm90cm9uIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLWp1bWJvdHJvbi1wYWRkaW5nLXYpIHZhcigtLWp1bWJvdHJvbi1wYWRkaW5nLWgpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tanVtYm90cm9uLXBhZGRpbmcpO1xyXG4gICAgY29sb3I6IC0tanVtYm90cm9uLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tanVtYm90cm9uLWJnKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tYm9yZGVyLXJhZGl1cy1sZykpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAodmFyKC0tYnJlYWtwb2ludC1zbSkpIHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1qdW1ib3Ryb24tcGFkZGluZy12KSB2YXIoLS1qdW1ib3Ryb24tcGFkZGluZy1oKTtcclxuICAgIH1cclxufVxyXG5cclxuLmp1bWJvdHJvbi1mbHVpZCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcclxufSIsIi8vL1xyXG4vLyBCYXNlIHN0eWxlc1xyXG4vLy9cclxuXHJcbi5hbGVydCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1hbGVydC1wYWRkaW5nLXYpIHZhcigtLWFsZXJ0LXBhZGRpbmctaCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS1hbGVydC1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgICYuYWxlcnQtbGFnb217XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAvLyBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgICYtY29udGVudHtcclxuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAuYWxlcnQtYWN0aW9uc3tcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCkgMCAwIDA7XHJcbiAgICAgICAgICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcclxuICAgICYtaGVhZGluZywgaDQgeyBcclxuICAgICAgICBjb2xvcjogaW5oZXJpdDsgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxyXG4gICAgfVxyXG5cclxuICAgIC8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXHJcbiAgICAuYWxlcnQtbGluayB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWFsZXJ0LWxpbmstZm9udC13ZWlnaHQpO1xyXG4gICAgfSBcclxuXHJcbiAgICAvLyBJbXByb3ZlIGFsaWdubWVudCBhbmQgc3BhY2luZyBvZiBpbm5lciBjb250ZW50XHJcbiAgICA+cCxcclxuICAgID51bCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICA+cCtwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcbiAgICAmLXRpdGxle1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgKyAqOm5vdCguYWxlcnQtYWN0aW9ucyl7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAmLWljb257XHJcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJi1ib2R5IHtcclxuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgICAgICA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hbGVydC1hY3Rpb25ze1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSAwIDAgMDtcclxuICAgICAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwsb2x7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuYnRuLWljb257XHJcbiAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiAuYnRuW2RhdGEtZGlzbWlzcz1cImFsZXJ0XCJdLFxyXG4gICAgPiAuY2xvc2V7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogdmFyKC0tYWxlcnQtcGFkZGluZy12KTtcclxuICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgIHJpZ2h0OiB2YXIoLS1hbGVydC1wYWRkaW5nLXYpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgIGxlZnQ6IHZhcigtLWFsZXJ0LXBhZGRpbmctdik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgICAubHMubHMtY2xvc2UsXHJcbiAgICAgICAgLmxtLmxtLWNsb3Nle1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1hY3Rpb25zIHtcclxuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgICAgLmJ0bjpub3QoOmxhc3QtY2hpbGQpe1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tYWxlcnQtcGFkZGluZy12KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1hbGVydC1wYWRkaW5nLXYpO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5idG4taWNvbiB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogKHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpIC0gIHZhcigtLXVpLWhlaWdodC1iYXNlKSkvMjtcclxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5idG4teHMge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogKHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpIC0gIHZhcigtLXVpLWhlaWdodC14cykpLzI7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAodmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykgLSAgdmFyKC0tdWktaGVpZ2h0LXhzKSkvMjtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAodmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykgLSAgdmFyKC0tdWktaGVpZ2h0LXhzKSkvMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmJ0bi1zbSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAodmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykgLSAgdmFyKC0tdWktaGVpZ2h0LXNtKSkvMjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICh2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSAtICB2YXIoLS11aS1oZWlnaHQtc20pKS8yO1xyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICh2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSAtICB2YXIoLS11aS1oZWlnaHQtc20pKS8yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYnRuLWxnIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICh2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSAtICB2YXIoLS11aS1oZWlnaHQtbGcpKS8yO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogKHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpIC0gIHZhcigtLXVpLWhlaWdodC1sZykpLzI7XHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogKHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpIC0gIHZhcigtLXVpLWhlaWdodC1sZykpLzI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bltkYXRhLWRpc21pc3M9XCJhbGVydFwiXTpub3QoLmJ0bi1kaXNtaXNzLWNhKSxcclxuICAgICAgICAuY2xvc2U6bm90KC5idG4tZGlzbWlzcy1jYSl7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIC5scy5scy1jbG9zZSxcclxuICAgICAgICAgICAgLmxtLmxtLWNsb3Nle1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1kaXNtaXNzaWJsZSB7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tYWxlcnQtcGFkZGluZy0yeCkgKiAyKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1hbGVydC1wYWRkaW5nLTJ4KSAqIDIpIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cclxuICAgICAgICAuY2xvc2Uge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgcGFkZGluZzogdmFyKC0tYWxlcnQtcGFkZGluZy12KSB2YXIoLS1hbGVydC1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAmLWdyb3VwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAgdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICAgICAgLmFsZXJ0IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAmICsgLmFsZXJ0IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hbGVydC1pY29uICsgLmFsZXJ0LWJvZHksXHJcbiAgICAuYWxlcnQtaWNvbiArIC5hbGVydC1jb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWFsZXJ0LXBhZGRpbmctaCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWFsZXJ0LXBhZGRpbmctaCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5hbGVydC1zbXtcclxuICAgICAgICAuYWxlcnQtaWNvbiArIC5hbGVydC1ib2R5LCBcclxuICAgICAgICAuYWxlcnQtaWNvbiArIC5hbGVydC1jb250ZW50IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hbGVydC1ib2R5ICsgLmFsZXJ0LWljb24sXHJcbiAgICAuYWxlcnQtY29udGVudCArIC5hbGVydC1pY29uLFxyXG4gICAgLmFsZXJ0LWFjdGlvbnMgKyAuYWxlcnQtaWNvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1hbGVydC1wYWRkaW5nLWgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1hbGVydC1wYWRkaW5nLWgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hbGVydC1hY3Rpb25zICsgLmFsZXJ0LWljb24ge1xyXG4gICAgICAgIFxyXG4gICAgfVxyXG4gICAgJi5uZXR3b3JrLWlzc3VlLWFsZXJ0e1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgLmNvbnRhaW5lcntcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmFsZXJ0LWRvbWFpbi1yZW5ld2Fsc3tcclxuICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNHgpO1xyXG4gICAgICAgICYuYWxlcnQtcHJpbWFyeXtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKSB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgd2lkdGg6IDRweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hbGVydHtcclxuICAgICAgICAgICAgJi1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgIC5pY29ue1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgIGJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1hY3Rpb257XHJcbiAgICAgICAgICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1sZy1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoc20pIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy9cclxuLy8gQWxlcnQgUHJpbWFyeVxyXG4vL1xyXG4uYWxlcnR7XHJcbiAgICAmOm5vdCguYWxlcnQtcHJpbWFyeSl7XHJcbiAgICAgICAgLmFsZXJ0LXRpdGxle1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYWxlcnQtdmFyaWFudHMtdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYWxlcnQtcHJpbWFyeXtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWJhc2UpO1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLWFsZXJ0LXBhZGRpbmctdikgdmFyKC0tYWxlcnQtcGFkZGluZy12KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAmOm5vdCguYWxlcnQtZGVmYXVsdCl7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1hbGVydC1wYWRkaW5nLXYpICsgNHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWFsZXJ0LXBhZGRpbmctdikgKyA0cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYWxlcnR7XHJcbiAgICAgICAgICAgICYtYm9keXtcclxuICAgICAgICAgICAgICAgIHVsLG9se1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hbGVydC1pY29uICsgLmFsZXJ0LWJvZHksXHJcbiAgICAgICAgLmFsZXJ0LWljb24gKyAuYWxlcnQtY29udGVudCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYWxlcnQtYm9keSArIC5hbGVydC1pY29uLFxyXG4gICAgICAgIC5hbGVydC1jb250ZW50ICsgLmFsZXJ0LWljb24sXHJcbiAgICAgICAgLmFsZXJ0LWFjdGlvbnMgKyAuYWxlcnQtaWNvbiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hbGVydC1zdWNjZXNze1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXN1Y2Nlc3MpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5hbGVydC1pY29ue1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hbGVydC1pbmZve1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWluZm8pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5hbGVydC1pY29ue1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWluZm8pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWxlcnQtd2FybmluZ3tcclxuICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC13YXJuaW5nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYWxlcnQtaWNvbntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFsZXJ0LWRhbmdlcntcclxuICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYW5nZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5hbGVydC1pY29ue1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hbGVydC1kZWZhdWx0e1xyXG4gICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5hbGVydC1pY29ue1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5hbGVydC1mbG9hdGluZ3tcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB6LWluZGV4OiAxMDAzO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgPiAuY29udGFpbmVye1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYWxlcnQtcHJlZGVmaW5lZC1pY29uLWNvbnRhaW5lciwgXHJcbiAgICAgICAgLmFsZXJ0LXByZWRlZmluZWQtaWxsdXN0cmF0aW9uLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hbGVydC1ib2R5e1xyXG4gICAgICAgICAgICAudGltZXIteHMgLnRpbWVyLWJveC1udW0ge1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGModmFyKC0tbGluZS1oZWlnaHQtaDYpIC0gNnB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHNwYW4udGltZXJ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICB9XHJcbiAgICBwe1xyXG4gICAgICAgIHNwYW4udGltZXJ7IFxyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5hbGVydCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLmFsZXJ0LWljb24ge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgIFxyXG4gICAgICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4vL1xyXG4vLyBTaXplc1xyXG4vL1xyXG5cclxuLmFsZXJ0IHtcclxuICAgICYtc20ge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgLmFsZXJ0LWljb24ge1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDEzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXhze1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xyXG4vL1xyXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxyXG4uYWxlcnQtc3VjY2Vzczpub3QoLmFsZXJ0LXByaW1hcnkpIHtcclxuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodmFyKC0tYWxlcnQtc3VjY2Vzcy1iZyksIHZhcigtLWFsZXJ0LXN1Y2Nlc3MtYm9yZGVyKSwgdmFyKC0tYWxlcnQtc3VjY2Vzcy10ZXh0KSwgdmFyKC0tYWxlcnQtc3VjY2Vzcy1pY29uKSk7XHJcbn1cclxuXHJcbi5hbGVydC1pbmZvOm5vdCguYWxlcnQtcHJpbWFyeSkge1xyXG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh2YXIoLS1hbGVydC1pbmZvLWJnKSwgdmFyKC0tYWxlcnQtaW5mby1ib3JkZXIpLCB2YXIoLS1hbGVydC1pbmZvLXRleHQpLCB2YXIoLS1hbGVydC1pbmZvLWljb24pKTtcclxufVxyXG5cclxuLmFsZXJ0LXdhcm5pbmc6bm90KC5hbGVydC1wcmltYXJ5KSB7XHJcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHZhcigtLWFsZXJ0LXdhcm5pbmctYmcpLCB2YXIoLS1hbGVydC13YXJuaW5nLWJvcmRlciksIHZhcigtLWFsZXJ0LXdhcm5pbmctdGV4dCksIHZhcigtLWFsZXJ0LXdhcm5pbmctaWNvbikpO1xyXG59XHJcblxyXG4uYWxlcnQtZGFuZ2VyOm5vdCguYWxlcnQtcHJpbWFyeSkge1xyXG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh2YXIoLS1hbGVydC1kYW5nZXItYmcpLCB2YXIoLS1hbGVydC1kYW5nZXItYm9yZGVyKSwgdmFyKC0tYWxlcnQtZGFuZ2VyLXRleHQpLCB2YXIoLS1hbGVydC1kYW5nZXItaWNvbikpO1xyXG59XHJcblxyXG4uYWxlcnQtZ3JheTpub3QoLmFsZXJ0LXByaW1hcnkpIHtcclxuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodmFyKC0tYWxlcnQtZ3JheS1iZyksIHZhcigtLWFsZXJ0LWdyYXktYm9yZGVyKSwgdmFyKC0tYWxlcnQtZ3JheS10ZXh0KSwgdmFyKC0tYWxlcnQtZ3JheS1pY29uKSk7XHJcbn1cclxuXHJcbi5hbGVydC10eXBlLXByaW1hcnk6bm90KC5hbGVydC1wcmltYXJ5KSB7XHJcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHZhcigtLWFsZXJ0LXByaW1hcnktYmcpLCB2YXIoLS1hbGVydC1wcmltYXJ5LWJvcmRlciksIHZhcigtLWFsZXJ0LXByaW1hcnktdGV4dCksIHZhcigtLWFsZXJ0LXByaW1hcnktaWNvbikpO1xyXG59XHJcblxyXG4uYWxlcnQtc2Vjb25kYXJ5Om5vdCguYWxlcnQtcHJpbWFyeSkge1xyXG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh2YXIoLS1hbGVydC1zZWNvbmRhcnktYmcpLCB2YXIoLS1hbGVydC1zZWNvbmRhcnktYm9yZGVyKSwgdmFyKC0tYWxlcnQtc2Vjb25kYXJ5LXRleHQpLCB2YXIoLS1hbGVydC1zZWNvbmRhcnktaWNvbikpO1xyXG59XHJcbi5sYWdvbS1sYXlvdXQtdG9we1xyXG4gICAgLmFsZXJ0LWRlZmF1bHR7XHJcbiAgICAgICAgJi5hbGVydC1mbG9hdGluZ3tcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYXBwLW5hdi10b3AtYmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ubGFnb20tbGF5b3V0LWxlZnQsXHJcbi5sYWdvbS1sYXlvdXQtbGVmdC13aWRle1xyXG4gICAgLmFsZXJ0LWRlZmF1bHR7XHJcbiAgICAgICAgJi5hbGVydC1mbG9hdGluZ3tcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWFpbi10b3AtYmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmxhZ29tLnNjcm9sbC1kb3duIC5jbGllbnRBbGVydC5hbGVydC1mbG9hdGluZyAge1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stb3ZlcmxheS1zaGFkb3cpO1xyXG59XHJcbiIsIi8vVE9ETyAtIGt0w7NyYSB3ZXJzamE/XHJcbi8vYnM0XHJcbi8vIEBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcclxuLy8gICBjb2xvcjogJGNvbG9yO1xyXG4vLyAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcclxuLy8gICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcblxyXG4vLyAgIGhyIHtcclxuLy8gICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XHJcbi8vICAgfVxyXG5cclxuLy8gICAuYWxlcnQtbGluayB7XHJcbi8vICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcclxuLy8gICB9XHJcbi8vIH1cclxuXHJcbi8vYnMzXHJcbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkdGV4dC1jb2xvciwgJGljb24pIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIC5hbGVydC10aXRsZXtcclxuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIH1cclxuICBwe1xyXG4gICAgICBjb2xvcjogJHRleHQtY29sb3IhaW1wb3J0YW50O1xyXG4gIH1cclxuICBociB7XHJcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXIvL2RhcmtlbigkYm9yZGVyLCA1JSk7XHJcbiAgfVxyXG4gIC5hbGVydC1saW5rIHtcclxuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoOTAlKTtcclxuICB9XHJcbiAgJjpub3QoLmFsZXJ0LXByaW1hcnkpe1xyXG4gICAgLmJ0bltkYXRhLWRpc21pc3M9XCJhbGVydFwiXSB7XHJcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgfVxyXG4gICAgLmJ0bi5idG4taWNvbntcclxuICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYWxlcnQtaWNvbiB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6ICRpY29uO1xyXG4gICAgICB9XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgfVxyXG59IiwiLy9cclxuLy8gUHJvZ3Jlc3MgYmFyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuXHJcbi8vIEJhciBhbmltYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIFdlYktpdFxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xyXG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XHJcbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cclxufVxyXG5cclxuLy8gU3BlYyBhbmQgSUUxMCtcclxuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XHJcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cclxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxyXG59XHJcblxyXG5cclxuLy8gQmFyIGl0c2VsZlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBPdXRlciBjb250YWluZXJcclxuLnByb2dyZXNzIHtcclxuICBkaXNwbGF5OmZsZXg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBoZWlnaHQ6IHZhcigtLXByb2dyZXNzLWhlaWdodCk7Ly92YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcclxuICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAvL21hcmdpbi1ib3R0b206IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS1wcm9ncmVzcy1mb250LXNpemUpKTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcm9ncmVzcy1iZyk7XHJcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS1wcm9ncmVzcy1ib3JkZXItcmFkaXVzKSk7XHJcbiAgLy9AaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKSk7XHJcbn1cclxuLnBhc3N3b3JkLWNvbnRlbnQtZ3JvdXB7XHJcbiAgLmlucHV0LXBhc3N3b3JkLXN0cmVuZ3Roe1xyXG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xyXG4gIH1cclxuICBsYWJlbHtcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICB9XHJcbiAgLnByb2dyZXNze1xyXG4gICAgaGVpZ2h0OiA2cHg7XHJcbiAgICBtYXgtd2lkdGg6IHZhcigtLXByb2dyZXNzLXdpZHRoKTtcclxuICAgIHdpZHRoOiB2YXIoLS1wcm9ncmVzcy13aWR0aCk7XHJcbiAgICAvLyBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICArIC5wYXNzd29yZC1jb250ZW50LXRleHR7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLnBhc3N3b3JkLWNvbnRlbnQtdGV4dHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAvLyBtYXJnaW4tbGVmdDogYXV0bztcclxuICBpe1xyXG4gICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gQmFyIG9mIHByb2dyZXNzXHJcbi5wcm9ncmVzcy1iYXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGNvbG9yOiB2YXIoLS1wcm9ncmVzcy1iYXItY29sb3IpO1xyXG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJvZ3Jlc3MtYmFyLWJnKTtcclxuXHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbikpO1xyXG59XHJcblxyXG4vLyBTdHJpcGVkIGJhcnNcclxuLy9cclxuLy8gYC5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxyXG4vLyBgLnByb2dyZXNzLWJhci1zdHJpcGVkYCBjbGFzcywgd2hpY2ggeW91IGp1c3QgYWRkIHRvIGFuIGV4aXN0aW5nXHJcbi8vIGAucHJvZ3Jlc3MtYmFyYC5cclxuLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcixcclxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcclxuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcclxufVxyXG5cclxuLy8gQ2FsbCBhbmltYXRpb24gZm9yIHRoZSBhY3RpdmUgb25lXHJcbi8vXHJcbi8vIGAucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxyXG4vLyBgLnByb2dyZXNzLWJhci5hY3RpdmVgIGFwcHJvYWNoLlxyXG4ucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXIsXHJcbi5wcm9ncmVzcy1iYXIuYWN0aXZlIHtcclxuICAvLyBAaW5jbHVkZSBhbmltYXRpb24ocHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlKTsgLy8gYnMzXHJcbn1cclxuXHJcblxyXG4vLyBWYXJpYXRpb25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XHJcbiAgLy8gQGluY2x1ZGUgIC8vYnMzKHZhcigtLXByb2dyZXNzLWJhci1zdWNjZXNzLWJnKSk7IC8vYnMzXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2VzcylcclxufVxyXG5cclxuLnByb2dyZXNzLWJhci1pbmZvIHtcclxuICAvLyBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCh2YXIoLS1wcm9ncmVzcy1iYXItaW5mby1iZykpOyAvL2JzM1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWluZm8pXHJcbn1cclxuXHJcbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XHJcbiAgLy8gQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQodmFyKC0tcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmcpKTsgLy9iczNcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nKVxyXG59XHJcblxyXG4ucHJvZ3Jlc3MtYmFyLWRhbmdlciB7XHJcbiAgLy8gQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQodmFyKC0tcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZykpOyAvL2JzM1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcilcclxufVxyXG4iLCIubWVkaWEge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbn1cclxuXHJcbi5tZWRpYS1ib2R5IHtcclxuICBmbGV4OiAxO1xyXG59XHJcbiIsIi8vVE9ETyBwcnplZ2zEhWRuxIXEhyBrbGFzeVxyXG5cclxuLmxpc3QtZ3JvdXAge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWxpc3QtZ3JvdXAtYmcpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1saXN0LWdyb3VwLWJvcmRlcik7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tbGlzdC1ncm91cC1ib3gtc2hhZG93KTtcclxuICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xyXG4vL1xyXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcclxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cclxuXHJcbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcclxuICAgIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXHJcbiAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1hY3Rpb24tY29sb3IpO1xyXG4gICAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXHJcbiAgXHJcbiAgICAvLyBIb3ZlciBzdGF0ZVxyXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XHJcbiAgICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcclxuICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yKTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay1ob3Zlci1iZyk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3IpO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbi5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1jb2xvcik7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZyk7XHJcbiAgICAvKmJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtYmcpOyovXHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbGlzdC1ncm91cC1pdGVtLWJvcmRlci1jb2xvcik7XHJcbiAgICAvLyBSb3VuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXNhYmxlZCxcclxuICAgICY6ZGlzYWJsZWQge1xyXG4gICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1kaXNhYmxlZC1jb2xvcik7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1kaXNhYmxlZC1iZyk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcclxuICAgICYuYWN0aXZlIHtcclxuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXHJcbiAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlzdC1ncm91cC1hY3RpdmUtYmcpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgICYgKyAmIHtcclxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0gdmFyKC0tbGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xyXG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcclxuICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuYS5saXN0LWdyb3VwLWl0ZW0sXHJcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0sXHJcbi5saXN0LWdyb3VwLWl0ZW0tbGluayB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWxpbmstY29sb3IpO1xyXG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWhlYWRpbmctY29sb3IpO1xyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWxpbmstdGV4dC1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAvLyBIb3ZlciBzdGF0ZVxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWhvdmVyLWJnKTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4ubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICYtaGVhZGluZyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0ICB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtdGV4dCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLXRleHQtY29sb3IpO1xyXG4gICAgfVxyXG4gICAgJi1mb290ZXIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAuYnRuICsgLmJ0biB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtaWNvbiB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1pY29uLWNvbG9yKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSkhaW1wb3J0YW50O1xyXG4gICAgICAgICsubGlzdC1ncm91cC1pdGVtLWJvZHkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuaGFzLWljb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxyXG4gICAgJi5kaXNhYmxlZCxcclxuICAgICYuZGlzYWJsZWQ6aG92ZXIsXHJcbiAgICAmLmRpc2FibGVkOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay1kaXNhYmxlZC1iZyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1saW5rLWRpc2FibGVkLWNvbG9yKTtcclxuICAgICAgICBjdXJzb3I6IHZhcigtLWN1cnNvci1kaXNhYmxlZCk7XHJcbiAgICAgICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcclxuICAgICAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xyXG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtLWl0ZW1kaXNhYmxlZC10ZXh0LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBBY3RpdmUgY2xhc3Mgb24gaXRlbSBpdHNlbGYsIG5vdCBwYXJlbnRcclxuICAgICYuYWN0aXZlLFxyXG4gICAgJi5hY3RpdmU6aG92ZXIsXHJcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XHJcbiAgICAgICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay1hY3RpdmUtYmcpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWxpbmstYWN0aXZlLWJvcmRlcik7XHJcbiAgICAgICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcclxuICAgICAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXHJcbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nPnNtYWxsLFxyXG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZz4uc21hbGwge1xyXG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmxpc3QtZ3JvdXAtbGcge1xyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tbGlzdC1ncm91cC1pdGVtLWxnLXBhZGRpbmcpO1xyXG4gICAgICAgICYtaGVhZGluZyB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNCk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcclxuICAgICAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtLXRleHQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZm9vdGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogIHZhcigtLXVpLXBhZGRpbmctbGctaClcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEZsdXNoIGxpc3QgaXRlbXNcclxuLy9cclxuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxyXG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cclxuXHJcbi5saXN0LWdyb3VwLWZsdXNoIHtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XHJcbiAgXHJcbiAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICBib3JkZXItd2lkdGg6IDAgMCB2YXIoLS1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XHJcbiAgXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbi5saXN0LWdyb3VwLXNtIHtcclxuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICAgICYtaGVhZGluZyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICArIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmxpc3QtZ3JvdXAteHMge1xyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgJi1oZWFkaW5nIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDgpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDgpO1xyXG4gICAgICAgICAgICArIC5saXN0LWdyb3VwLWl0ZW0tdGV4dCAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5saXN0LWdyb3VwLXh4cyB7XHJcbiAgICAmLmhhcy1zY3JvbGx7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjI0cHg7XHJcbiAgICB9XHJcbiAgICAubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICYtaGVhZGluZyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg5KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg5KTtcclxuICAgICAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtLXRleHQgIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHhzKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ubGltaXRlZC1saXN0LWdyb3Vwe1xyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbXtcclxuICAgICAgICAmOm50aC1jaGlsZChuKzQpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTQpLCB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMyksIHZhcigtLWJyYW5kLXN1Y2Nlc3MpKTtcclxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbywgdmFyKC0tYnJhbmQtaW5mby1saWdodGVyLTMpLCB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMiksIHZhcigtLWJyYW5kLWluZm8pKTtcclxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQod2FybmluZywgdmFyKC0tYnJhbmQtd2FybmluZy1saWdodGVyLTQpLCB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItMyksIHZhcigtLWJyYW5kLXdhcm5pbmcpKTtcclxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KSwgdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMyksIHZhcigtLWJyYW5kLWRhbmdlcikpOyIsIi8vIExpc3QgR3JvdXBzXHJcblxyXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJnLWhvdmVyLCAkY29sb3IpIHtcclxuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XHJcblxyXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcclxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaG92ZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gUGFuZWxzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJhc2UgY2xhc3NcclxuLnBhbmVsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtYmcpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1wYW5lbC1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1wYW5lbC1ib3gtc2hhZG93KTtcclxuICAgIC5wYW5lbCxcclxuICAgIC50YWJsZS1jb250YWluZXIge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcGFuZWwtZGVmYXVsdC1ib3JkZXIpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBQYW5lbCBjb250ZW50c1xyXG4ucGFuZWwtYm9keSB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xyXG4gICAgLy9AaW5jbHVkZSBjbGVhcmZpeDtcclxufVxyXG5cclxuLy8gT3B0aW9uYWwgaGVhZGluZ1xyXG4ucGFuZWwtaGVhZGluZyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLXVpLWJsb2NrLWhlYWRlci1oZWlnaHQpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tcGFuZWwtaGVhZGluZy1wYWRkaW5nKTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCh2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKSkpO1xyXG4gICAgKy5wYW5lbC1mb290ZXIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICB9XHJcbiAgICA+LmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGFuZWwtdGl0bGUge1xyXG4gICAgZmxleDogMTtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICBjb2xvcjogdmFyKC0tcGFuZWwtdGl0bGUtY29sb3IpO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1wYW5lbC10aXRsZS1mb250LXNpemUpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXBhbmVsLXRpdGxlLWZvbnQtd2VpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wYW5lbC10aXRsZS1saW5lLWhlaWdodCk7XHJcbiAgICA+YSxcclxuICAgID5zbWFsbCxcclxuICAgID4uc21hbGwsXHJcbiAgICA+c21hbGw+YSxcclxuICAgID4uc21hbGw+YSB7XHJcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcclxuLnBhbmVsLWZvb3RlciB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1mb290ZXItcGFkZGluZyk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1mb290ZXItYmcpO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXBhbmVsLWJvcmRlci1kaXZpZGVyLWNvbG9yKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpKTtcclxufVxyXG5cclxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXHJcbi5wYW5lbDpub3QoLnBhbmVsLXNpZGViYXIpIHtcclxuICAgID4gLmxpc3QtZ3JvdXAsXHJcbiAgICA+IC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgLy8gQWRkIGJvcmRlciB0b3AgcmFkaXVzIGZvciBmaXJzdCBvbmVcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpIC0gMSkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCh2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKSAtIDEpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgID4ucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5saXN0LWdyb3VwIHtcclxuICAgICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBDb2xsYXBzZSBzcGFjZSBiZXR3ZWVuIHdoZW4gdGhlcmUncyBubyBhZGRpdGlvbmFsIGNvbnRlbnQuXHJcbi5wYW5lbC1oZWFkaW5nICsgLmxpc3QtZ3JvdXAge1xyXG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxuICAgIH1cclxufVxyXG4vLyBUYWJsZXMgaW4gcGFuZWxzXHJcbi5wYW5lbCB7XHJcbiAgICA+LnRhYmxlLFxyXG4gICAgPi50YWJsZS1yZXNwb25zaXZlPi50YWJsZSxcclxuICAgID4ucGFuZWwtY29sbGFwc2U+LnRhYmxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgICBjYXB0aW9uIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXHJcbiAgICA+LnRhYmxlOmZpcnN0LWNoaWxkLFxyXG4gICAgPi50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkPi50YWJsZTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpIC0gMSkpO1xyXG5cclxuICAgICAgICA+dGhlYWQ6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgPnRib2R5OmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgPnRyOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICh2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKSAtIDEpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICh2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKSAtIDEpO1xyXG5cclxuICAgICAgICAgICAgICAgIHRkOmZpcnN0LWNoaWxkLFxyXG4gICAgICAgICAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICh2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKSAtIDEpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRkOmxhc3QtY2hpbGQsXHJcbiAgICAgICAgICAgICAgICB0aDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpIC0gMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBBZGQgYm9yZGVyIGJvdHRvbSByYWRpdXMgZm9yIGxhc3Qgb25lXHJcbiAgICA+LnRhYmxlOmxhc3QtY2hpbGQsXHJcbiAgICA+LnRhYmxlLXJlc3BvbnNpdmU6bGFzdC1jaGlsZD4udGFibGU6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpIC0gMSkpO1xyXG4gICAgICAgID50Ym9keTpsYXN0LWNoaWxkLFxyXG4gICAgICAgID50Zm9vdDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgPnRyOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpIC0gMSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpIC0gMSk7XHJcblxyXG4gICAgICAgICAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpIC0gMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgdGQ6bGFzdC1jaGlsZCxcclxuICAgICAgICAgICAgICAgIHRoOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAodmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cykgLSAxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgID4ucGFuZWwtYm9keSsudGFibGUsXHJcbiAgICA+LnBhbmVsLWJvZHkrLnRhYmxlLXJlc3BvbnNpdmUsXHJcbiAgICA+LnRhYmxlKy5wYW5lbC1ib2R5LFxyXG4gICAgPi50YWJsZS1yZXNwb25zaXZlKy5wYW5lbC1ib2R5IHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdGFibGUtYm9yZGVyLWNvbG9yKTtcclxuICAgIH1cclxuICAgID4udGFibGU+dGJvZHk6Zmlyc3QtY2hpbGQ+dHI6Zmlyc3QtY2hpbGQgdGgsXHJcbiAgICA+LnRhYmxlPnRib2R5OmZpcnN0LWNoaWxkPnRyOmZpcnN0LWNoaWxkIHRkIHtcclxuICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgfVxyXG4gICAgPi50YWJsZS1ib3JkZXJlZCxcclxuICAgID4udGFibGUtcmVzcG9uc2l2ZT4udGFibGUtYm9yZGVyZWQge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICA+dGhlYWQsXHJcbiAgICAgICAgPnRib2R5LFxyXG4gICAgICAgID50Zm9vdCB7XHJcbiAgICAgICAgICAgID50ciB7XHJcblxyXG4gICAgICAgICAgICAgICAgPnRoOmZpcnN0LWNoaWxkLFxyXG4gICAgICAgICAgICAgICAgPnRkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICA+dGg6bGFzdC1jaGlsZCxcclxuICAgICAgICAgICAgICAgID50ZDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPnRoZWFkLFxyXG4gICAgICAgID50Ym9keSB7XHJcbiAgICAgICAgICAgID50cjpmaXJzdC1jaGlsZCB7XHJcblxyXG4gICAgICAgICAgICAgICAgPnRkLFxyXG4gICAgICAgICAgICAgICAgPnRoIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID50Ym9keSxcclxuICAgICAgICA+dGZvb3Qge1xyXG4gICAgICAgICAgICA+dHI6bGFzdC1jaGlsZCB7XHJcblxyXG4gICAgICAgICAgICAgICAgPnRkLFxyXG4gICAgICAgICAgICAgICAgPnRoIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgID4udGFibGUtcmVzcG9uc2l2ZSB7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIENvbGxhcHNpYmxlIHBhbmVscyAoYWthLCBhY2NvcmRpb24pXHJcbi5wYW5lbC1ncm91cCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcclxuICAgIC5wYW5lbCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICsucGFuZWw6bm90KC5wYW5lbC1jaGVjaykge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLWhlYWRpbmcge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keSxcclxuICAgICAgICArLnBhbmVsLWNvbGxhcHNlPi5saXN0LWdyb3VwIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXBhbmVsLWJvcmRlci1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucGFuZWwtZm9vdGVyIHtcclxuICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgICAgICsucGFuZWwtY29sbGFwc2UgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tcGFuZWwtYm9yZGVyLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogSUUgMTEgKi9cclxuLnBhbmVsLWZvcm0ge1xyXG4gICAgLnBhbmVsLWZvb3RlciB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcblxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIENvbnRleHR1YWwgdmFyaWF0aW9uc1xyXG4ucGFuZWwtZGVmYXVsdCB7XHJcbiAgICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KHZhcigtLXBhbmVsLWRlZmF1bHQtYmcpLCB2YXIoLS1wYW5lbC1kZWZhdWx0LWJvcmRlciksIHZhcigtLXBhbmVsLWRlZmF1bHQtdGV4dCksIHZhcigtLXBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZyksIHZhcigtLXBhbmVsLWRlZmF1bHQtYm9yZGVyKSk7XHJcbn1cclxuLnBhbmVsLXN1Y2Nlc3Mge1xyXG4gICAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCh2YXIoLS1wYW5lbC1zdWNjZXNzLWJnKSwgdmFyKC0tcGFuZWwtc3VjY2Vzcy1ib3JkZXIpLCB2YXIoLS1wYW5lbC1zdWNjZXNzLXRleHQpLCB2YXIoLS1wYW5lbC1zdWNjZXNzLWhlYWRpbmctYmcpLCB2YXIoLS1wYW5lbC1zdWNjZXNzLWJvcmRlcikpO1xyXG59XHJcbi5wYW5lbC1pbmZvIHtcclxuICAgIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQodmFyKC0tcGFuZWwtaW5mby1iZyksIHZhcigtLXBhbmVsLWluZm8tYm9yZGVyKSwgdmFyKC0tcGFuZWwtaW5mby10ZXh0KSwgdmFyKC0tcGFuZWwtaW5mby1oZWFkaW5nLWJnKSwgdmFyKC0tcGFuZWwtaW5mby1ib3JkZXIpKTtcclxufVxyXG4ucGFuZWwtd2FybmluZyB7XHJcbiAgICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KHZhcigtLXBhbmVsLXdhcm5pbmctYmcpLCB2YXIoLS1wYW5lbC13YXJuaW5nLWJvcmRlciksIHZhcigtLXBhbmVsLXdhcm5pbmctdGV4dCksIHZhcigtLXBhbmVsLXdhcm5pbmctaGVhZGluZy1iZyksIHZhcigtLXBhbmVsLXdhcm5pbmctYm9yZGVyKSk7XHJcbn1cclxuLnBhbmVsLWRhbmdlciB7XHJcbiAgICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KHZhcigtLXBhbmVsLWRhbmdlci1iZyksIHZhcigtLXBhbmVsLWRhbmdlci1ib3JkZXIpLCB2YXIoLS1wYW5lbC1kYW5nZXItdGV4dCksIHZhcigtLXBhbmVsLWRhbmdlci1oZWFkaW5nLWJnKSwgdmFyKC0tcGFuZWwtZGFuZ2VyLWJvcmRlcikpO1xyXG59IiwiLy8gUGFuZWxzXHJcbkBtaXhpbiBwYW5lbC12YXJpYW50KCRiZywgJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xyXG4gICAgYmFja2dyb3VuZDogJGJnO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgJj4ucGFuZWwtaGVhZGluZyB7XHJcbiAgICAgICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xyXG4gICAgICAgID4ucGFuZWwtdGl0bGUgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keSB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5iYWRnZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmPi5wYW5lbC1ib2R5IHsgICAgICAgIFxyXG4gICAgICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xyXG4gICAgfVxyXG4gICAgJj4ucGFuZWwtZm9vdGVyIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgICAgICAgKy5wYW5lbC1jb2xsYXBzZT4ucGFuZWwtYm9keSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLy9cclxuLy8gV2VsbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBCYXNlIGNsYXNzXHJcbi53ZWxsIHtcclxuICBtaW4taGVpZ2h0OiAyMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2VsbC1iZyk7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0td2VsbC1ib3JkZXIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xyXG4gIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XHJcbiAgYmxvY2txdW90ZSB7XHJcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFNpemVzXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAud2VsbC1sZyB7XHJcbiAgICBwYWRkaW5nOiA0OHB4O1xyXG4gICAgLy9ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWxnKTtcclxuICB9XHJcbn1cclxuXHJcbi53ZWxsLXNtIHtcclxuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAvL2JvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xyXG59IiwiLy9cclxuLy8gQ2xvc2UgaWNvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNsb3NlIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jbG9zZS1jb2xvcik7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1hcmdpbjogLTJweCAtNHB4IC0ycHggMDtcclxuICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWNsb3NlLWZvbnQtc2l6ZSk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tY2xvc2UtZm9udC13ZWlnaHQpO1xyXG4gICAgdGV4dC1zaGFkb3c6IHZhcigtLWNsb3NlLXRleHQtc2hhZG93KTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGhlaWdodDogMjhweDtcclxuICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICByaWdodDogMTJweDtcclxuICAgIH07XHJcbiAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgIGxlZnQ6IDEycHg7XHJcbiAgICB9O1xyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY2xvc2UtY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIH1cclxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNsb3NlLWNvbG9yLWhvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYnV0dG9uJiB0byBidXR0b24uY2xvc2VcclxufVxyXG5cclxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxyXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cclxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXHJcbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxyXG5idXR0b24uY2xvc2Uge1xyXG4gICAgcGFkZGluZzogNHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG5cclxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcclxuXHJcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcclxuYS5jbG9zZS5kaXNhYmxlZCB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICB9IiwiXHJcbi5tb2RhbC1vcGVuIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAubW9kYWwge1xyXG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubW9kYWwge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIHotaW5kZXg6IHZhcigtLXppbmRleC1tb2RhbCk7XHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLTJ4KSFpbXBvcnRhbnQ7XHJcbiAgICAmLmZhZGUgLm1vZGFsLWRpYWxvZyB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB2YXIoLS1tb2RhbC1mYWRlLXRyYW5zZm9ybSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tbW9kYWwtdHJhbnNpdGlvbik7XHJcbiAgICB9XHJcbiAgICAmLnNob3cgLm1vZGFsLWRpYWxvZyB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxufVxyXG5cclxuLm1vZGFsLW9wZW4ge1xyXG4gICAgLm1vZGFsIHtcclxuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuXHJcbiAgICAgICAgJi5mYWRlLnNob3csXHJcbiAgICAgICAgJi5zaG93IHtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLm1vZGFsLWRpYWxvZyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgLm1vZGFsLnNob3cgJiB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB2YXIoLS1tb2RhbC1zaG93LXRyYW5zZm9ybSk7XHJcbiAgICB9XHJcbiAgICAubW9kYWwubW9kYWwtc3RhdGljICYge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdmFyKC0tbW9kYWwtc2NhbGUtdHJhbnNmb3JtKTtcclxuICAgIH1cclxuICAgIC8vZnJvbSAubW9kYWwtZGlhbG9nLWNlbnRlcmVkXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLW1vZGFsLWRpYWxvZy1jZW50ZXJlZC1taW4taGVpZ2h0KTtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLW1vZGFsLWRpYWxvZy1jZW50ZXJlZC1iZWZvcmUtaGVpZ2h0KTtcclxuICAgICAgICBoZWlnaHQ6IG1pbi1jb250ZW50OyAvLyBSZXNldCBoZWlnaHQgdG8gMCBleGNlcHQgb24gSUVcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLW1vZGFsLWRpYWxvZy1jZW50ZXJlZC1taW4taGVpZ2h0LXNtKTtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLW1vZGFsLWRpYWxvZy1jZW50ZXJlZC1iZWZvcmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBtaW4tY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXHJcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1tb2RhbC1kaWFsb2ctbWF4LWhlaWdodCk7XHJcbiAgICAubW9kYWwtY29udGVudCB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogdmFyKC0tbW9kYWwtY29udGVudC1tYXgtaGVpZ2h0KTsgLy8gSUUxMC8xMVxyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgICAubW9kYWwtaGVhZGVyLFxyXG4gICAgLm1vZGFsLWZvb3RlciB7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB9XHJcbiAgICAubW9kYWwtYm9keSB7XHJcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLW1vZGFsLWRpYWxvZy1jZW50ZXJlZC1taW4taGVpZ2h0KTtcclxuXHJcbiAgICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1tb2RhbC1kaWFsb2ctY2VudGVyZWQtYmVmb3JlLWhlaWdodCk7XHJcbiAgICAgICAgaGVpZ2h0OiBtaW4tY29udGVudDsgLy8gUmVzZXQgaGVpZ2h0IHRvIDAgZXhjZXB0IG9uIElFXHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXHJcbiAgICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEFjdHVhbCBtb2RhbFxyXG4ubW9kYWwtY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxyXG4gICAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXHJcbiAgICBjb2xvcjogdmFyKC0tbW9kYWwtY29udGVudC1jb2xvcik7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1vZGFsLWNvbnRlbnQtYmcpO1xyXG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLW1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdykpO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIG1hcmdpbjogMzBweCBhdXRvO1xyXG4gICAgLy8gU2Nyb2xsIGZvciBtb2RhbCBib2R5IG9ubHlcclxuICAgIC5tb2RhbC1ib2R5e1xyXG4gICAgICAgID4gKjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIE1vZGFsIGJhY2tncm91bmRcclxuLm1vZGFsLWJhY2tkcm9wIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtbW9kYWwtYmFja2dyb3VuZCk7XHJcbiAgICB3aWR0aDogMTAwdnc7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbW9kYWwtYmFja2Ryb3AtYmcpO1xyXG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAvLyBGYWRlIGZvciBiYWNrZHJvcFxyXG4gICAgJi5mYWRlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYuc2hvdyB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gTW9kYWwgaGVhZGVyXHJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xyXG4ubW9kYWwtaGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogdmFyKC0tbW9kYWwtdGl0bGUtcGFkZGluZyk7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tb2RhbC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1tb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpIHZhcigtLW1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cykgMCAwO1xyXG5cclxuICAgIC5jbG9zZSB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tbW9kYWwtYnRuLWNsb3NlLXBhZGRpbmcpO1xyXG4gICAgICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZSBcclxuICAgICAgICA+c3BhbiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4IWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxyXG4ubW9kYWwtdGl0bGUge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1tb2RhbC10aXRsZS1mb250LXNpemUpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLW1vZGFsLXRpdGxlLWZvbnQtd2VpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1tb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XHJcbn1cclxuXHJcbi8vIE1vZGFsIGJvZHlcclxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxyXG4ubW9kYWwtYm9keSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1tb2RhbC1pbm5lci1wYWRkaW5nKTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgc3Ryb25ne1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vL01vZGFsIFZhcmlhbnRzXHJcbi5tb2RhbHtcclxuICAgIC8vTW9kYWwgVmFyaWFudHMgLSBJY29uc1xyXG4gICAgJi5tb2RhbHtcclxuICAgICAgICAmLWRlZmF1bHQsXHJcbiAgICAgICAgJi1wcmltYXJ5LFxyXG4gICAgICAgICYtc2Vjb25kYXJ5LFxyXG4gICAgICAgICYtZ3JheSxcclxuICAgICAgICAmLWluZm8sXHJcbiAgICAgICAgJi1zdWNjZXNzLFxyXG4gICAgICAgICYtZGFuZ2VyLFxyXG4gICAgICAgICYtd2FybmluZ3tcclxuICAgICAgICAgICAgLm1vZGFsLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdsYWdvbS1tZWRpdW0taWNvbnMnICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1kZWZhdWx0LFxyXG4gICAgICAgICYtZ3JheXtcclxuICAgICAgICAgICAgLm1vZGFsLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5NGNcIjtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1wcmltYXJ5LFxyXG4gICAgICAgICYtc2Vjb25kYXJ5e1xyXG4gICAgICAgICAgICAubW9kYWwtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTk0Y1wiO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWluZm97XHJcbiAgICAgICAgICAgIC5tb2RhbC10aXRsZXtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1zdWNjZXNze1xyXG4gICAgICAgICAgICAubW9kYWwtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwM1wiO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGFuZ2Vye1xyXG4gICAgICAgICAgICAubW9kYWwtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTk0Y1wiO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtcmVtb3Zle1xyXG4gICAgICAgICAgICAgICAgLm1vZGFsLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTM4XCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuY2hlY2tib3gtc3R5bGVke1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi13YXJuaW5ne1xyXG4gICAgICAgICAgICAubW9kYWwtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTk0Y1wiO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubW9kYWwtaGVhZGVyLW5vLWljb257XHJcbiAgICAgICAgICAgIC5tb2RhbC10aXRsZXtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy9Nb2RhbCBCRyBWYXJpYW50cyAtIFByaW1hcnkvU2Vjb25kYXJ5L0dyYXlcclxuICAgICYubW9kYWx7XHJcbiAgICAgICAgJi10eXBlLXByaW1hcnksXHJcbiAgICAgICAgJi1zZWNvbmRhcnl7XHJcbiAgICAgICAgICAgIC5tb2RhbHtcclxuICAgICAgICAgICAgICAgICYtaGVhZGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLWJvZHl7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1mb290ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgLmNoZWNrYm94e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxhYmVse1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi1zdHlsZWR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmNoZWNrZWR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMzIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4zMik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm5vdCguY2hlY2tlZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMzIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuaG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjU2KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNsb3Nle1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdHlwZS1wcmltYXJ5e1xyXG4gICAgICAgICAgICAubW9kYWwtY29udGVudHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtc2Vjb25kYXJ5e1xyXG4gICAgICAgICAgICAubW9kYWwtY29udGVudHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXNlY29uZGFyeSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ncmF5e1xyXG4gICAgICAgICAgICAubW9kYWwtY29udGVudHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnJlY29tbWVuZGF0aW9ucy1jb21wbGV0ZSxcclxuLm1vZGFsLXJlY29tZW5kYXRpb25zIC5tb2RhbC1ib2R5e1xyXG4gICAgLnByb2R1Y3R7XHJcbiAgICAgICAgJi1hZGRlZHtcclxuICAgICAgICAgICAgJi1wYW5lbHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnJhbmQtc3VjY2Vzcyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1ib2R5e1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pY29ue1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNTZweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1NnB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pbmZve1xyXG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtbmFtZSxcclxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDYpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAucHJvZHVjdC1wcmljZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcmVjb21tZW5kYXRpb25ze1xyXG4gICAgICAgICAgICAucmVjb21tZW5kYXRpb24tdGl0bGV7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnByb2R1Y3R7XHJcbiAgICAgICAgICAgICAgICAmLXJlY29tbWVuZGF0aW9ue1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tc3BhY2luZy0zeCkgKyA0cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTsgXHJcbiAgICAgICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7ICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi1kZXNje1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZWwtbGVmdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vS2llZHkgcHJvZHVrdCBuaWUgcHJ6ZWthenVqZSBrb2xvcnUgdXN0YXdpYW15IGRlZmF1bHRvd3lcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE1NCwgMTg3LCA1OCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYtY29udGVudHt9XHJcbiAgICAgICAgICAgICAgICAgICAgJi1mb290ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi1hY3Rpb25ze1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0bi1hZGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLXByaWNle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaDR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4jbW9kYWxHZW5lcmF0ZVBhc3N3b3JkIHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAmLnNob3cge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtY29udGVudCB7XHJcbiAgICAgICAgLm1vZGFsLWJvZHkge1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFnZS11c2VyLXNlY3VyaXR5IHtcclxuICAgIC5tb2RhbCB7XHJcbiAgICAgICAgLmZvcm0taG9yaXpvbnRhbCB7XHJcbiAgICAgICAgICAgIC5mb3JtLWdyb3VwIHtcclxuICAgICAgICAgICAgICAgIFtjbGFzcyo9Y29sLXNtXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICNtb2RhbEdlbmVyYXRlUGFzc3dvcmQge1xyXG4gICAgICAgIC5jb3B5LXRvLWNsaXBib2FyZHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xyXG4gICAgLm1vZGFsLXJlY29tZW5kYXRpb25ze1xyXG4gICAgICAgIC5tb2RhbC1kaWFsb2d7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnN7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucHJvZHVjdHtcclxuICAgICAgICAgICAgJi1hZGRlZC1pY29ue1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA1NnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAjbW9kYWxHZW5lcmF0ZVBhc3N3b3JkIHtcclxuICAgICAgICAuY29weS10by1jbGlwYm9hcmR7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tbW9kYWwtbWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6IDM5OXB4KSB7XHJcbiAgICAjbW9kYWxHZW5lcmF0ZVBhc3N3b3Jke1xyXG4gICAgICAgIC5jb2wtbWQtOC5vZmZzZXQtbWQtNHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgLmNvcHktdG8tY2xpcGJvYXJke1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLm1vZGFsLWZvb3RlcntcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgKyAuYnRue1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXHJcbi5tb2RhbC1mb290ZXIge1xyXG4gICAgcGFkZGluZzogdmFyKC0tbW9kYWwtZm9vdGVyLXBhZGRpbmcpOyBcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBjbGVhciBpdCBpbiBjYXNlIGZvbGtzIHVzZSAucHVsbC0qIGNsYXNzZXMgb24gYnV0dG9uc1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XHJcblxyXG4gICAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcclxuICAgID4gLmJ0biB7XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLW1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2Vlbik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxyXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAtOTk5OXB4O1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xyXG59XHJcblxyXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG5cclxuICAgIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcclxuICAgIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1tb2RhbC1tZCk7XHJcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1tb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXApIGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0LXNtKTtcclxuXHJcbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1tb2RhbC1jb250ZW50LW1pbi1oZWlnaHQtc20pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1tb2RhbC1kaWFsb2ctY2VudGVyZWQtbWluLWhlaWdodC1zbSk7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tbW9kYWwtZGlhbG9nLWNlbnRlcmVkLWJlZm9yZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtc20ge1xyXG4gICAgICAgIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tbW9kYWwtc20pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAobGcpIHtcclxuICAgIC5tb2RhbC1sZyB7XHJcbiAgICAgICAgLm1vZGFsLWRpYWxvZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1tb2RhbC1sZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZmFkZS5zaG93IHtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAgKHhsKSB7XHJcbiAgICAubW9kYWwteGwge1xyXG4gICAgICAgIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tbW9kYWwteGwpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gRml4IE1HIC8vXHJcbiNtZy13cmFwcGVyLFxyXG4ubWctd3JhcHBlciB7XHJcbiAgICAubW9kYWwuc2hvdyB7XHJcbiAgICAgICAgJjpub3QoI21vZGFsLWlwKSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubW9kYWwge1xyXG4gICAgJi5jbGllbnRBbGVydE1vZGFsIHtcclxuICAgICAgICAubW9kYWwtdGl0bGUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTR4KTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctNHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tb2RhbC1mb290ZXIge1xyXG4gICAgICAgICAgICAuYWxlcnQtYnV0dG9ucyB7XHJcbiAgICAgICAgICAgICAgICA+IC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LW9mLXR5cGUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLW1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2Vlbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcclxuICAmOjphZnRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gVG9vbHRpcHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQmFzZSBjbGFzc1xyXG4udG9vbHRpcCB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IHZhcigtLXppbmRleC10b29sdGlwKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXHJcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxyXG4gICAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS10b29sdGlwLWZvbnQtc2l6ZSkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgIHRyYW5zaXRpb246IHZhcigtLXNob3ctYW5pbWF0aW9uKTtcclxuICAgIFxyXG4gICAgJi5zaG93IHsgb3BhY2l0eTogdmFyKC0tdG9vbHRpcC1vcGFjaXR5KTsgfVxyXG5cclxuICAgIC5hcnJvdyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHsgXHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vICYudG9wIHtcclxuICAgICAgICAvLyBAaW5jbHVkZSBzaG93LWFuaW1hdGlvbi10b3Atc3RhcnQ7XHJcbiAgICAvLyAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xyXG4gICAgLy8gICAgIHBhZGRpbmc6IHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpIDA7XHJcbiAgICAvLyAgICAgJi5pbiB7XHJcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIHNob3ctYW5pbWF0aW9uLXRvcC1lbmQ7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gfVxyXG4gICAgLy8gJi5yaWdodCB7XHJcbiAgICAvLyAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgLy8gICAgIHBhZGRpbmc6IDAgdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7XHJcbiAgICAvLyB9XHJcbiAgICAvLyAmLmJvdHRvbSB7XHJcbiAgICAvLyAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAvLyAgICAgcGFkZGluZzogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgMDtcclxuICAgIC8vIH1cclxuICAgIC8vICYubGVmdCB7XHJcbiAgICAvLyAgICAgbWFyZ2luLWxlZnQ6IC04cHg7XHJcbiAgICAvLyAgICAgcGFkZGluZzogMCB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKTtcclxuICAgIC8vIH1cclxufVxyXG5cclxuLmJzLXRvb2x0aXAtdG9wIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSAwO1xyXG4gIFxyXG4gICAgLmFycm93IHtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gIFxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3JkZXItd2lkdGg6IHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSAodmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgLyAyKSAwO1xyXG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5icy10b29sdGlwLXJpZ2h0IHtcclxuICAgIHBhZGRpbmc6IDAgdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xyXG4gIFxyXG4gICAgLmFycm93IHtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKTtcclxuICBcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3JkZXItd2lkdGg6ICh2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKSAvIDIpIHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSAodmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgLyAyKSAwO1xyXG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tdG9vbHRpcC1hcnJvdy1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLmJzLXRvb2x0aXAtYm90dG9tIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSAwO1xyXG4gIFxyXG4gICAgLmFycm93IHtcclxuICAgICAgdG9wOiAwO1xyXG4gIFxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDAgKHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpIC8gMikgdmFyKC0tdG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5icy10b29sdGlwLWxlZnQge1xyXG4gICAgcGFkZGluZzogMCB2YXIoLS10b29sdGlwLWFycm93LWhlaWdodCk7XHJcbiAgXHJcbiAgICAuYXJyb3cge1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgd2lkdGg6IHZhcigtLXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcclxuICAgICAgaGVpZ2h0OiB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKTtcclxuICBcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogKHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpIC8gMikgMCAodmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgLyAyKSB2YXIoLS10b29sdGlwLWFycm93LWhlaWdodCk7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5icy10b29sdGlwLWF1dG8ge1xyXG4gICAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xyXG4gICAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcclxuICAgIH1cclxuICAgICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xyXG4gICAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xyXG4gICAgfVxyXG4gICAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xyXG4gICAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcclxuICAgIH1cclxuICAgICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XHJcbiAgICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XHJcbi50b29sdGlwLWlubmVyIHtcclxuICAgIG1heC13aWR0aDogdmFyKC0tdG9vbHRpcC1tYXgtd2lkdGgpO1xyXG4gICAgY29sb3I6IHZhcigtLXRvb2x0aXAtY29sb3IpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyBcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRvb2x0aXAtYmcpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS10b29sdGlwLWJveC1zaGFkb3cpO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTsgXHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgfVxyXG5cclxuLy8gQXJyb3dzXHJcbi8vIC50b29sdGlwLWFycm93IHtcclxuLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuLy8gICAgIHdpZHRoOiAwO1xyXG4vLyAgICAgaGVpZ2h0OiAwO1xyXG4vLyAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuLy8gICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbi8vIH1cclxuXHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnRvcC1sZWZ0LCAudG9wLXJpZ2h0LCAuYm90dG9tLWxlZnQsIGFuZCAuYm90dG9tLXJpZ2h0IGFzIG9mIHYzLjMuMVxyXG4vLyAudG9vbHRpcCB7XHJcbi8vICAgICAmLnRvcCAudG9vbHRpcC1hcnJvdyB7XHJcbi8vICAgICAgICAgYm90dG9tOiAwO1xyXG4vLyAgICAgICAgIGxlZnQ6IDUwJTtcclxuLy8gICAgICAgICBtYXJnaW4tbGVmdDogLXZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xyXG4vLyAgICAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgMDtcclxuLy8gICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS10b29sdGlwLWFycm93LWNvbG9yKTtcclxuLy8gICAgIH1cclxuLy8gICAgICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xyXG4vLyAgICAgICAgIGJvdHRvbTogMDtcclxuLy8gICAgICAgICByaWdodDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7XHJcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogLXZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xyXG4vLyAgICAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgMDtcclxuLy8gICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS10b29sdGlwLWFycm93LWNvbG9yKTtcclxuLy8gICAgIH1cclxuLy8gICAgICYudG9wLXJpZ2h0IC50b29sdGlwLWFycm93IHtcclxuLy8gICAgICAgICBib3R0b206IDA7XHJcbi8vICAgICAgICAgbGVmdDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7XHJcbi8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogLXZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xyXG4vLyAgICAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgMDtcclxuLy8gICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS10b29sdGlwLWFycm93LWNvbG9yKTtcclxuLy8gICAgIH1cclxuLy8gICAgICYucmlnaHQgLnRvb2x0aXAtYXJyb3cge1xyXG4vLyAgICAgICAgIHRvcDogNTAlO1xyXG4vLyAgICAgICAgIGxlZnQ6IDA7XHJcbi8vICAgICAgICAgbWFyZ2luLXRvcDogLXZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xyXG4vLyAgICAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCkgMDtcclxuLy8gICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpO1xyXG4vLyAgICAgfVxyXG4vLyAgICAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcclxuLy8gICAgICAgICB0b3A6IDUwJTtcclxuLy8gICAgICAgICByaWdodDogMDtcclxuLy8gICAgICAgICBtYXJnaW4tdG9wOiAtdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7XHJcbi8vICAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKSAwIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xyXG4vLyAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS10b29sdGlwLWFycm93LWNvbG9yKTtcclxuLy8gICAgIH1cclxuLy8gICAgICYuYm90dG9tIC50b29sdGlwLWFycm93IHtcclxuLy8gICAgICAgICB0b3A6IDA7XHJcbi8vICAgICAgICAgbGVmdDogNTAlO1xyXG4vLyAgICAgICAgIG1hcmdpbi1sZWZ0OiAtdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7XHJcbi8vICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xyXG4vLyAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpO1xyXG4vLyAgICAgfVxyXG4vLyAgICAgJi5ib3R0b20tbGVmdCAudG9vbHRpcC1hcnJvdyB7XHJcbi8vICAgICAgICAgdG9wOiAwO1xyXG4vLyAgICAgICAgIHJpZ2h0OiB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKTtcclxuLy8gICAgICAgICBtYXJnaW4tdG9wOiAtdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7XHJcbi8vICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xyXG4vLyAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpO1xyXG4vLyAgICAgfVxyXG4vLyAgICAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xyXG4vLyAgICAgICAgIHRvcDogMDtcclxuLy8gICAgICAgICBsZWZ0OiB2YXIoLS10b29sdGlwLWFycm93LXdpZHRoKTtcclxuLy8gICAgICAgICBtYXJnaW4tdG9wOiAtdmFyKC0tdG9vbHRpcC1hcnJvdy13aWR0aCk7XHJcbi8vICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpIHZhcigtLXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xyXG4vLyAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXRvb2x0aXAtYXJyb3ctY29sb3IpO1xyXG4vLyAgICAgfVxyXG4vLyB9XHJcblxyXG4vKiBSVEwgKi9cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcclxuICAgIGh0bWxbZGlyPVwicnRsXCJdIHtcclxuICAgICAgICAucGFnZS1kb21haW5yZWdpc3RlcntcclxuICAgICAgICAgICAgLnRvb2x0aXAge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogLTI5MHB4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gXHJcbn1cclxuLy8gdG9vbHRpcCBmaXggb25seSBmb3IgZnV0dXJpc3RpYyBzdHlsZVxyXG4ubGFnb20tZnV0dXJpc3RpY3tcclxuICAgIC50b29sdGlwe1xyXG4gICAgICAgIHdpbGwtY2hhbmdlOiB1bnNldCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLmFycm93e1xyXG4gICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAudG9vbHRpcC1pbm5lcntcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMTBweDtcclxuICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4gIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xyXG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XHJcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcclxuICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICB3b3JkLWJyZWFrOiBub3JtYWw7XHJcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XHJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICBsaW5lLWJyZWFrOiBhdXRvO1xyXG59XHJcbiIsIi8vXHJcbi8vIFBvcG92ZXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5wb3BvdmVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtcG9wb3Zlcik7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1heC13aWR0aDogdmFyKC0tcG9wb3Zlci1tYXgtd2lkdGgpOyAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSBwb3BvdmVycyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXHJcbiAgICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wb3BvdmVyLWJnKTtcclxuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1wb3BvdmVyLWJvcmRlci1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1sZyk7IC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xyXG4gICAgdHJhbnNpdGlvbjogdmFyKC0tc2hvdy1hbmltYXRpb24pO1xyXG5cclxuICAgIC5hcnJvdyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTtcclxuICAgICAgICBtYXJnaW46IDAgdmFyKC0tcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcclxuICAgIFxyXG4gICAgICAgICY6OmJlZm9yZSxcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAmLnRvcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1hbmltYXRpb24tdG9wLXN0YXJ0O1xyXG4gICAgICAgICYuaW4ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzaG93LWFuaW1hdGlvbi10b3AtZW5kO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYucmlnaHQge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjZweDtcclxuICAgIH1cclxuICAgICYuYm90dG9tIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTZweDtcclxuICAgICAgICBAaW5jbHVkZSBzaG93LWFuaW1hdGlvbi1ib3R0b20tc3RhcnQ7XHJcbiAgICAgICAgJi5pbiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNob3ctYW5pbWF0aW9uLWJvdHRvbS1lbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICBcclxuICAgICYubGVmdCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmJzLXBvcG92ZXItdG9wIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcclxuICBcclxuICAgID4gLmFycm93IHtcclxuICAgICAgYm90dG9tOiBzdWJ0cmFjdCh2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCksIHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpKTtcclxuICBcclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCkgKHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpIC8gMikgMDtcclxuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWNvbG9yKTtcclxuICAgICAgfVxyXG4gIFxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgYm90dG9tOiB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTtcclxuICAgICAgICBib3JkZXItd2lkdGg6IHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KSAodmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkgLyAyKSAwO1xyXG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5icy1wb3BvdmVyLXJpZ2h0IHtcclxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCk7XHJcbiAgXHJcbiAgICA+IC5hcnJvdyB7XHJcbiAgICAgIGxlZnQ6IC0yMHB4O1xyXG4gICAgICB3aWR0aDogdmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xyXG4gICAgICBoZWlnaHQ6IHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xyXG4gICAgICBtYXJnaW46IHZhcigtLXBvcG92ZXItYm9yZGVyLXJhZGl1cykgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xyXG4gIFxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKSB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCkgdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkgMDtcclxuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3IpO1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBsZWZ0OiB2YXIoLS1wb3BvdmVyLWJvcmRlci13aWR0aCk7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKSB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCkgdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkgMDtcclxuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5icy1wb3BvdmVyLWJvdHRvbSB7XHJcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCk7XHJcbiAgXHJcbiAgICA+IC5hcnJvdyB7XHJcbiAgICAgIHRvcDogc3VidHJhY3QodmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpLCB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKSk7XHJcbiAgXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMCAodmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkgLyAyKSB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCkgKHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpIC8gMik7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7XHJcbiAgICAgIH1cclxuICBcclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogdmFyKC0tcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMCAodmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkgLyAyKSB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCkgKHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpIC8gMik7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1jb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICBcclxuICAgIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XHJcbiAgICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtIHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpIC8gMjtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkgc29saWQgdmFyKC0tcG9wb3Zlci1oZWFkZXItYmcpO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuYnMtcG9wb3Zlci1sZWZ0IHtcclxuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xyXG4gIFxyXG4gICAgPiAuYXJyb3cge1xyXG4gICAgICByaWdodDogc3VidHJhY3QodmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpLCB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKSk7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1wb3BvdmVyLWFycm93LWhlaWdodCk7XHJcbiAgICAgIGhlaWdodDogdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XHJcbiAgICAgIG1hcmdpbjogdmFyKC0tcG9wb3Zlci1ib3JkZXItcmFkaXVzKSAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXHJcbiAgXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAodmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCkgLyAyKSAwICh2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKSAvIDIpIHZhcigtLXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcclxuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7XHJcbiAgICAgIH1cclxuICBcclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHJpZ2h0OiB2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTtcclxuICAgICAgICBib3JkZXItd2lkdGg6ICh2YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKSAvIDIpIDAgKHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpIC8gMikgdmFyKC0tcG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuYnMtcG9wb3Zlci1hdXRvIHtcclxuICAgICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcclxuICAgICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XHJcbiAgICB9XHJcbiAgICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcclxuICAgICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcclxuICAgIH1cclxuICAgICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcclxuICAgICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XHJcbiAgICB9XHJcbiAgICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xyXG4gICAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIFxyXG4gIC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xyXG4gIC5wb3BvdmVyLWhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkpIHZhcigtLXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLWZvbnQtc2l6ZS1iYXNlKSk7XHJcbiAgICBjb2xvcjogdmFyKC0tcG9wb3Zlci1oZWFkZXItY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcG9wb3Zlci1oZWFkZXItYmcpO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tcG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXBvcG92ZXItaGVhZGVyLWJvcmRlci1ib3R0b20tY29sb3IpO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKSk7XHJcbiAgXHJcbiAgICAmOmVtcHR5IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLnBvcG92ZXItYm9keSB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1wb3BvdmVyLWJvZHktcGFkZGluZy15KSB2YXIoLS1wb3BvdmVyLWJvZHktcGFkZGluZy14KTtcclxuICAgIGNvbG9yOiB2YXIoLS1wb3BvdmVyLWJvZHktY29sb3IpO1xyXG4gIH1cclxuICBcclxuXHJcblxyXG4ucG9wb3Zlci10aXRsZSB7XHJcbiAgICBtYXJnaW46IDA7IC8vIHJlc2V0IGhlYWRpbmcgbWFyZ2luXHJcbiAgICBwYWRkaW5nOiAxN3B4IDI0cHg7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wb3BvdmVyLXRpdGxlLWJnKTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1wb3BvdmVyLWJvcmRlci1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAodmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSAtIDEpICh2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpIC0gMSkgMCAwO1xyXG59XHJcblxyXG4ucG9wb3Zlci1jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDE4cHggMjRweDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG59XHJcblxyXG4ucG9wb3ZlciB7XHJcbiAgICAuYnRuLWdyb3VwIHtcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgKy5idG4ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyogQXJyb3dzICovXHJcblxyXG4vKi5hcnJvdyBpcyBvdXRlciwgLmFycm93OmFmdGVyIGlzIGlubmVyKi9cclxuLnBvcG92ZXI+LmFycm93IHtcclxuICAgICYsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIH1cclxufVxyXG5cclxuLnBvcG92ZXI+LmFycm93IHtcclxuICAgIGJvcmRlci13aWR0aDogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7XHJcbn1cclxuXHJcbi5wb3BvdmVyPi5hcnJvdzpiZWZvcmUsXHJcbi5wb3BvdmVyPi5hcnJvdzphZnRlciB7XHJcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xyXG4gICAgY29udGVudDogXCJcIjtcclxufVxyXG5cclxuLnBvcG92ZXIge1xyXG4gICAgJi50b3A+LmFycm93IHtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGgpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcik7IC8vIElFOCBmYWxsYmFja1xyXG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3IpO1xyXG4gICAgICAgIGJvdHRvbTogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICBib3R0b206IDFweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC12YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYm90dG9tOiAtOXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA3KTtcclxuICAgICAgICAgICAgd2lkdGg6IDBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnJpZ2h0Pi5hcnJvdyB7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yKTsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWNvbG9yKTtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgICAgIGxlZnQ6IDFweDtcclxuICAgICAgICAgICAgYm90dG9tOiAtdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICBsZWZ0OiAxcHg7XHJcbiAgICAgICAgICAgIGJvdHRvbTogLXZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmJvdHRvbT4uYXJyb3cge1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCk7XHJcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcclxuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yKTsgLy8gSUU4IGZhbGxiYWNrXHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7XHJcbiAgICAgICAgdG9wOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLXdpZHRoKTtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgICAgIHRvcDogMXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLXZhcigtLXBvcG92ZXItYXJyb3ctd2lkdGgpO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgdG9wOiAxcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYubGVmdD4uYXJyb3cge1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHJpZ2h0OiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1wb3BvdmVyLWFycm93LW91dGVyLXdpZHRoKTtcclxuICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3IpOyAvLyBJRTggZmFsbGJhY2tcclxuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcik7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICByaWdodDogMXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1wb3BvdmVyLWFycm93LWNvbG9yKTtcclxuICAgICAgICAgICAgYm90dG9tOiAtdmFyKC0tcG9wb3Zlci1hcnJvdy13aWR0aCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXBvcG92ZXItYXJyb3ctY29sb3IpO1xyXG4gICAgICAgICAgICBib3R0b206IC12YXIoLS1wb3BvdmVyLWFycm93LXdpZHRoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3NlczpcclxuLy9cclxuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcclxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcclxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXHJcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXHJcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cclxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxyXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XHJcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxyXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XHJcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxyXG4uY2Fyb3VzZWwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XHJcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xyXG59XHJcblxyXG4uY2Fyb3VzZWwtaW5uZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcclxufVxyXG5cclxuLmNhcm91c2VsLWl0ZW0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwMCU7XHJcbiAgICB9XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLXRyYW5zaXRpb24tYmFzZSkpO1xyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcclxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcclxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXHJcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbn1cclxuXHJcbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcclxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxufVxyXG5cclxuLy9cclxuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXHJcbi8vXHJcbi5jYXJvdXNlbC1mYWRlIHtcclxuICAgIC5jYXJvdXNlbC1pdGVtIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcclxuICAgIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxyXG4gICAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXHJcbiAgICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xyXG4gICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vXHJcbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxyXG4vL1xyXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxyXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXHJcbiAgICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXHJcbiAgICB3aWR0aDogdmFyKC0tY2Fyb3VzZWwtY29udHJvbC13aWR0aCk7XHJcbiAgICBjb2xvcjogdmFyKC0tY2Fyb3VzZWwtY29udHJvbC1jb2xvcik7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBvcGFjaXR5OiB2YXIoLS1jYXJvdXNlbC1jb250cm9sLW9wYWNpdHkpO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS10cmFuc2l0aW9uLWJhc2UpKTtcclxuXHJcbiAgICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxyXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNhcm91c2VsLWNvbnRyb2wtY29sb3IpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIG9wYWNpdHk6IHZhcigtLWNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xyXG4gICAgbGVmdDogMDtcclxuXHJcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgjMDAwLCAuMjUpLCByZ2JhKCMwMDAsIC4wMDEpKTtcclxuICAgIH1cclxufVxyXG5cclxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XHJcbiAgICByaWdodDogMDtcclxuXHJcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoIzAwMCwgLjI1KSwgcmdiYSgjMDAwLCAuMDAxKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEljb25zIGZvciB3aXRoaW5cclxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxyXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IHZhcigtLWNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aCk7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aCk7XHJcbiAgICBiYWNrZ3JvdW5kOiA1MCUgLyAxMDAlIDEwMCUgbm8tcmVwZWF0O1xyXG59XHJcblxyXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2Zyh2YXIoLS1jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZykpO1xyXG59XHJcblxyXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2Zyh2YXIoLS1jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZykpO1xyXG59XHJcblxyXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xyXG4vL1xyXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXHJcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXHJcbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IDE1O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcclxuICAgIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxyXG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jYXJvdXNlbC1jb250cm9sLXdpZHRoKTtcclxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1jYXJvdXNlbC1jb250cm9sLXdpZHRoKTtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1jYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGgpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodCk7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyKTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcik7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICAgICAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cclxuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS1jYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0KSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiB2YXIoLS1jYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0KSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLXRyYW5zaXRpb24tYmFzZSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC5hY3RpdmUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbmFsIGNhcHRpb25zXHJcbi8vXHJcbi8vXHJcbi5jYXJvdXNlbC1jYXB0aW9uIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAoMTAwJSAtIHZhcigtLWNhcm91c2VsLWNhcHRpb24td2lkdGgpKSAvIDI7XHJcbiAgICBib3R0b206IDIwcHg7XHJcbiAgICBsZWZ0OiAoMTAwJSAtIHZhcigtLWNhcm91c2VsLWNhcHRpb24td2lkdGgpKSAvIDI7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICBjb2xvcjogdmFyKC0tY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcik7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn0iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcclxuXHJcbi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxyXG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cclxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XHJcbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxyXG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxyXG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxyXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcclxuXHJcbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcclxuXHJcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGJnLWhvdmVyLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcclxuICB9XHJcbiAgYSN7JHBhcmVudH0sXHJcbiAgYnV0dG9uI3skcGFyZW50fSB7XHJcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhvdmVyICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xyXG59XHJcblxyXG4vLyBAbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcclxuLy8gICAjeyRwYXJlbnR9IHtcclxuLy8gICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgodmFyKC0tYm9keS1iZyksICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xyXG4vLyAgIH1cclxuLy8gICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcclxuLy8gfVxyXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcclxuXHJcbi8vIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xyXG4vLyAgIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XHJcbi8vIH1cclxuXHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctcHJpbWFyeVwiLCB2YXIoLS1icmFuZC1wcmltYXJ5KSwgdmFyKC0tYnJhbmQtcHJpbWFyeS1kYXJrZXIpIHRydWUpO1xyXG5AaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLXNlY29uZGFyeVwiLCB2YXIoLS1icmFuZC1zZWNvbmRhcnkpLCB2YXIoLS1icmFuZC1zZWNvbmRhcnktZGFya2VyKSB0cnVlKTtcclxuQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy1zdWNjZXNzXCIsIHZhcigtLWJyYW5kLXN1Y2Nlc3MpLCB2YXIoLS1icmFuZC1zdWNjZXNzLWRhcmtlcikgdHJ1ZSk7XHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctaW5mb1wiLCB2YXIoLS1icmFuZC1pbmZvKSwgdmFyKC0tYnJhbmQtaW5mby1kYXJrZXIpIHRydWUpO1xyXG5AaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLXdhcm5pbmdcIiwgdmFyKC0tYnJhbmQtd2FybmluZyksIHZhcigtLWJyYW5kLXdhcm5pbmctZGFya2VyKSB0cnVlKTtcclxuQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy1kYW5nZXJcIiwgdmFyKC0tYnJhbmQtZGFuZ2VyKSwgdmFyKC0tYnJhbmQtZGFuZ2VyLWRhcmtlcikgdHJ1ZSk7XHJcblxyXG4vLyBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xyXG4vLyAgIC8vIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xyXG4vLyAgIC8vICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcclxuLy8gICAvLyB9XHJcbiAgXHJcbi8vICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC1wcmltYXJ5XCIsIHZhcigtLWJyYW5kLXByaW1hcnkpLCB0cnVlKTtcclxuLy8gICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LXNlY29uZGFyeVwiLCB2YXIoLS1icmFuZC1zZWNvbmRhcnkpLCB0cnVlKTtcclxuLy8gICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LXN1Y2Nlc3NcIiwgdmFyKC0tYnJhbmQtc3VjY2VzcyksIHRydWUpO1xyXG4vLyAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtaW5mb1wiLCB2YXIoLS1icmFuZC1pbmZvKSwgdHJ1ZSk7XHJcbi8vICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC13YXJuaW5nXCIsIHZhcigtLWJyYW5kLXdhcm5pbmcpLCB0cnVlKTtcclxuLy8gICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LWRhbmdlclwiLCB2YXIoLS1icmFuZC1kYW5nZXIpLCB0cnVlKTtcclxuLy8gfVxyXG5cclxuLmJnLXdoaXRlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5iZy10cmFuc3BhcmVudCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxufVxyXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxyXG5cclxuLy9cclxuLy8gQm9yZGVyXHJcbi8vXHJcblxyXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1iYXNlKSBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cclxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLWJhc2UpIHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcikgIWltcG9ydGFudDsgfVxyXG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC1iYXNlKSBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7IH1cclxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLWJhc2UpIHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcikgIWltcG9ydGFudDsgfVxyXG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogdmFyKC0tYm9yZGVyLXdpZHRoLWJhc2UpIHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcikgIWltcG9ydGFudDsgfVxyXG5cclxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XHJcbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cclxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XHJcbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cclxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cclxuXHJcbi8vIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xyXG4vLyAgIC5ib3JkZXItI3skY29sb3J9IHtcclxuLy8gICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XHJcbi8vICAgfVxyXG4vLyB9XHJcbi5ib3JkZXItcHJpbWFyeXtib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpICFpbXBvcnRhbnR9XHJcbi5ib3JkZXItc2Vjb25kYXJ5e2JvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtc2Vjb25kYXJ5KSAhaW1wb3J0YW50fVxyXG4uYm9yZGVyLXN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1zdWNjZXNzKSAhaW1wb3J0YW50fVxyXG4uYm9yZGVyLWluZm97Ym9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1pbmZvKSAhaW1wb3J0YW50fVxyXG4uYm9yZGVyLXdhcm5pbmd7Ym9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC13YXJuaW5nKSAhaW1wb3J0YW50fVxyXG4uYm9yZGVyLWRhbmdlcntib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcikgIWltcG9ydGFudH1cclxuXHJcbi5ib3JkZXItd2hpdGUge1xyXG4gIGJvcmRlci1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vL1xyXG4vLyBCb3JkZXItcmFkaXVzXHJcbi8vXHJcblxyXG4ucm91bmRlZC1zbSB7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdW5kZWQge1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdW5kZWQtdG9wIHtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdW5kZWQtcmlnaHQge1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdW5kZWQtYm90dG9tIHtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdW5kZWQtbGVmdCB7XHJcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdW5kZWQtbGcge1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbGcpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5yb3VuZGVkLWNpcmNsZSB7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5yb3VuZGVkLXBpbGwge1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJvdW5kZWQtcGlsbCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdW5kZWQtMCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG59XHJcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxyXG5cclxuLy9cclxuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xyXG4vL1xyXG5cclxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XHJcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcclxuXHJcbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcclxuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cclxuICAgIH1cclxuICAgIC8vIC5kLSN7JGluZml4fS1ub25lIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgICAvLyAuZC0jeyRpbmZpeH0taW5saW5lIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cclxuICAgIC8vIC5kLSN7JGluZml4fS1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxyXG4gICAgLy8gLmQtI3skaW5maXh9LWJsb2NrIHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxyXG4gICAgLy8gLmQtI3skaW5maXh9LXRhYmxlIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxyXG4gICAgLy8gLmQtI3skaW5maXh9LXRhYmxlLXJvdyB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XHJcbiAgICAvLyAuZC0jeyRpbmZpeH0tdGFibGUtY2VsbCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxyXG4gICAgLy8gLmQtI3skaW5maXh9LWZsZXggeyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cclxuICAgIC8vIC5kLSN7JGluZml4fS1pbmxpbmUtZmxleCB7IGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vL1xyXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxyXG4vL1xyXG5cclxuQG1lZGlhIHByaW50IHtcclxuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcclxuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XHJcbiAgfVxyXG4gIC8vIC5kLXByaW50LW5vbmUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cclxuICAvLyAuZC1wcmludC1pbmxpbmUgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxyXG4gIC8vIC5kLXByaW50LWlubGluZS1ibG9jayB7IGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XHJcbiAgLy8gLmQtcHJpbnQtYmxvY2sgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XHJcbiAgLy8gLmQtcHJpbnQtdGFibGUgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XHJcbiAgLy8gLmQtcHJpbnQtdGFibGUtcm93IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cclxuICAvLyAuZC1wcmludC10YWJsZS1jZWxsIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcbiAgLy8gLmQtcHJpbnQtZmxleCB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxyXG4gIC8vIC5kLXByaW50LWlubGluZS1mbGV4IHsgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsgfVxyXG59XHJcbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxyXG5cclxuLmVtYmVkLXJlc3BvbnNpdmUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgfVxyXG5cclxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxyXG4gIGlmcmFtZSxcclxuICBlbWJlZCxcclxuICBvYmplY3QsXHJcbiAgdmlkZW8ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xyXG4vLyAgICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcclxuLy8gICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teTogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMik7XHJcbi8vICAgLmVtYmVkLXJlc3BvbnNpdmUtI3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teH1ieSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXl9IHtcclxuLy8gICAgICY6OmJlZm9yZSB7XHJcbi8vICAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xyXG4vLyAgICAgfVxyXG4vLyAgIH1cclxuLy8gfVxyXG5cclxuLmVtYmVkLXJlc3BvbnNpdmUtMjFieTkge1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSg5IC8gMjEpO1xyXG4gIH1cclxufVxyXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDkgLyAxNik7XHJcbiAgfVxyXG59XHJcbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgzIC8gNCk7XHJcbiAgfVxyXG59XHJcbi5lbWJlZC1yZXNwb25zaXZlLTFieTEge1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgxIC8gMSk7XHJcbiAgfVxyXG59IiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG4vLyBGbGV4IHZhcmlhdGlvblxyXG4vL1xyXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXHJcblxyXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcclxuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xyXG5cclxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XHJcbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxyXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxyXG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxyXG5cclxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XHJcbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XHJcbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XHJcbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XHJcbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxyXG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cclxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cclxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cclxuXHJcbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxyXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XHJcbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XHJcbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxyXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxyXG5cclxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cclxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XHJcbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cclxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XHJcbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XHJcblxyXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxyXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cclxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxyXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxyXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XHJcbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XHJcblxyXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cclxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XHJcbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cclxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cclxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxyXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcclxuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xyXG5cclxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cclxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XHJcbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxyXG5cclxuLy8gQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xyXG4vLyAgIC51c2VyLXNlbGVjdC0jeyR2YWx1ZX0geyB1c2VyLXNlbGVjdDogJHZhbHVlICFpbXBvcnRhbnQ7IH1cclxuLy8gfVxyXG5cclxuLnVzZXItc2VsZWN0LWFsbCB7IHVzZXItc2VsZWN0OiBhbGwgIWltcG9ydGFudDsgfVxyXG4udXNlci1zZWxlY3QtYXV0byB7IHVzZXItc2VsZWN0OiBhdXRvICFpbXBvcnRhbnQ7IH1cclxuLnVzZXItc2VsZWN0LW5vbmUgeyB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50OyB9IiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG4vLyBAZWFjaCAkdmFsdWUgaW4gJG92ZXJmbG93cyB7XHJcbi8vICAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxyXG4vLyB9XHJcbi5vdmVyZmxvdy1hdXRve292ZXJmbG93OiBhdXRvICFpbXBvcnRhbnR9O1xyXG4ub3ZlcmZsb3ctaGlkZGVue292ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudH07XHJcbi5vdmVyZmxvdy14LWhpZGRlbntvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDt9IiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG4vLyBDb21tb24gdmFsdWVzXHJcbi8vIEBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcclxuLy8gICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XHJcbi8vIH1cclxuLnBvc2l0aW9uLXN0YXRpY3twb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnR9O1xyXG4ucG9zaXRpb24tcmVsYXRpdmV7cG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnR9O1xyXG4ucG9zaXRpb24tYWJzb2x1dGV7cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnR9O1xyXG4ucG9zaXRpb24tZml4ZWR7cG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnR9O1xyXG4ucG9zaXRpb24tc3RpY2t5e3Bvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudH07XHJcblxyXG4vLyBTaG9ydGhhbmRcclxuXHJcbi5maXhlZC10b3Age1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiB2YXIoLS16aW5kZXgtZml4ZWQpO1xyXG59XHJcblxyXG4uZml4ZWQtYm90dG9tIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogdmFyKC0temluZGV4LWZpeGVkKTtcclxufVxyXG5cclxuLnN0aWNreS10b3Age1xyXG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xyXG4gICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgIHRvcDogMDtcclxuICAgIHotaW5kZXg6IHZhcigtLXppbmRleC1zdGlja3kpO1xyXG4gIH1cclxufVxyXG4iLCIvL1xyXG4vLyBTY3JlZW5yZWFkZXJzXHJcbi8vXHJcblxyXG4uc3Itb25seSB7XHJcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xyXG59XHJcblxyXG4uc3Itb25seS1mb2N1c2FibGUge1xyXG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XHJcbn1cclxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcclxuLy9cclxuLy8gU2VlOiBodHRwczovL3d3dy5hMTF5cHJvamVjdC5jb20vcG9zdHMvMjAxMy0wMS0xMS1ob3ctdG8taGlkZS1jb250ZW50L1xyXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xyXG5cclxuQG1peGluIHNyLW9ubHkoKSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxcHg7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IC0xcHg7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG5cclxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXHJcbi8vXHJcbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcclxuLy9cclxuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxyXG5cclxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlKCkge1xyXG4gICY6YWN0aXZlLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICBjbGlwOiBhdXRvO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICB9XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1zbSkgIWltcG9ydGFudDsgfVxyXG4uc2hhZG93IHsgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdykgIWltcG9ydGFudDsgfVxyXG4uc2hhZG93LWxnIHsgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1sZykgIWltcG9ydGFudDsgfVxyXG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XHJcbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XHJcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcclxuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxyXG4gIH1cclxufVxyXG4vLyAudy0yNXsgd2lkdGg6IDI1JSAhaW1wb3J0YW50fVxyXG4vLyAudy01MHsgd2lkdGg6IDUwJSAhaW1wb3J0YW50fVxyXG4vLyAudy03NXsgd2lkdGg6IDc1JSAhaW1wb3J0YW50fVxyXG4vLyAudy0xMDB7IHdpZHRoOiAxMDAlICFpbXBvcnRhbnR9XHJcbi8vIC53LWF1dG97IHdpZHRoOiBhdXRvICFpbXBvcnRhbnR9XHJcblxyXG4vLyAuaC0yNXsgaGVpZ2h0OiAyNSUgIWltcG9ydGFudH1cclxuLy8gLmgtNTB7IGhlaWdodDogNTAlICFpbXBvcnRhbnR9XHJcbi8vIC5oLTc1eyBoZWlnaHQ6IDc1JSAhaW1wb3J0YW50fVxyXG4vLyAuaC0xMDB7IGhlaWdodDogMTAwJSAhaW1wb3J0YW50fVxyXG4vLyAuaC1hdXRveyBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudH1cclxuXHJcblxyXG5cclxuXHJcbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxyXG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XHJcblxyXG4vLyBWaWV3cG9ydCBhZGRpdGlvbmFsIGhlbHBlcnNcclxuXHJcbi5taW4tdnctMTAwIHsgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XHJcbi5taW4tdmgtMTAwIHsgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxyXG5cclxuLnZ3LTEwMCB7IHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OyB9XHJcbi52aC0xMDAgeyBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcclxuXHJcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xyXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XHJcblxyXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xyXG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XHJcbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XHJcbiAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxyXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XHJcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxyXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XHJcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXHJcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcclxuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXHJcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcclxuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXHJcbiAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XHJcbiAgICAgIEBpZiAkc2l6ZSAhPSAwIHtcclxuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cclxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxyXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcclxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcclxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXHJcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXHJcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cclxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxyXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xyXG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAubXIjeyRpbmZpeH0tYXV0byxcclxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAubWIjeyRpbmZpeH0tYXV0byxcclxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLm1sI3skaW5maXh9LWF1dG8sXHJcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vXHJcbi8vIFN0cmV0Y2hlZCBsaW5rXHJcbi8vXHJcblxyXG4uc3RyZXRjaGVkLWxpbmsge1xyXG4gICY6OmFmdGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xyXG4gIH1cclxufVxyXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcclxuXHJcbi8vXHJcbi8vIFRleHRcclxuLy9cclxuXHJcbi50ZXh0LW1vbm9zcGFjZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1tb25vc3BhY2UpICFpbXBvcnRhbnQ7IH1cclxuXHJcbi8vIEFsaWdubWVudFxyXG5cclxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cclxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cclxuLnRleHQtbm93cmFwICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cclxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cclxuXHJcbi8vIFJlc3BvbnNpdmUgYWxpZ25tZW50XHJcblxyXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcclxuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xyXG5cclxuICAgIC50ZXh0I3skaW5maXh9LWxlZnQgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxyXG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxyXG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFRyYW5zZm9ybWF0aW9uXHJcblxyXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XHJcbi50ZXh0LXVwcGVyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cclxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cclxuXHJcbi8vIFdlaWdodCBhbmQgaXRhbGljc1xyXG5cclxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpICFpbXBvcnRhbnQ7IH1cclxuLmZvbnQtd2VpZ2h0LW5vcm1hbCAgeyBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSkgIWltcG9ydGFudDsgfVxyXG4uZm9udC13ZWlnaHQtbWVkaXVtICB7IGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pICFpbXBvcnRhbnQ7IH1cclxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCkgIWltcG9ydGFudDsgfVxyXG4uZm9udC13ZWlnaHQtYm9sZGVyICB7IGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ibGFjaykgIWltcG9ydGFudDsgfVxyXG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XHJcblxyXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xyXG5cclxuLnRleHQtd2hpdGUgeyBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XHJcblxyXG4vLyBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcclxuLy8gICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcclxuLy8gfVxyXG5cclxuXHJcbi50ZXh0LWJvZHkgeyBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKSAhaW1wb3J0YW50OyB9XHJcbi50ZXh0LW11dGVkIHsgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcikgIWltcG9ydGFudDsgfVxyXG5cclxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgjMDAwLCAuNSkgIWltcG9ydGFudDsgfVxyXG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCNmZmYsIC41KSAhaW1wb3J0YW50OyB9XHJcblxyXG4vLyBNaXNjXHJcblxyXG4udGV4dC1oaWRlIHtcclxuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcclxufVxyXG5cclxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cclxuXHJcbi50ZXh0LWJyZWFrIHtcclxuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIERlcHJlY2F0ZWQsIGJ1dCBhdm9pZHMgaXNzdWVzIHdpdGggZmxleCBjb250YWluZXJzXHJcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcclxufVxyXG5cclxuLy8gUmVzZXRcclxuXHJcbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfSIsIi8vIFRleHQgdHJ1bmNhdGVcclxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xyXG5cclxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxyXG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcclxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXHJcbiAgZm9udDogMC8wIGE7XHJcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMDtcclxuXHJcbiAgLy8gQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XHJcblxyXG4vL1xyXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xyXG4vL1xyXG5cclxuLnZpc2libGUge1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmludmlzaWJsZSB7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiLy9cclxuLy8gUmVzcG9uc2l2ZTogVXRpbGl0eSBjbGFzc2VzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxyXG4vL1xyXG4vLyBTdXBwb3J0IGZvciByZXNwb25zaXZlIHZpZXdzIHZpYSBtZWRpYSBxdWVyaWVzIGlzIGtpbmQgb2YgYm9ya2VkIGluIElFMTAsIGZvclxyXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxyXG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxyXG4vLyBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUyB0byAqb25seSogdGhlIFN1cmZhY2UvZGVza3RvcCBXaW5kb3dzIDguIExvb2sgYXRcclxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxyXG4vL1xyXG4vLyBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBmb2xsb3dpbmc6XHJcbi8vXHJcbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XHJcbi8vIERvY3M6IGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoXHJcbi8vIFNvdXJjZTogaHR0cDovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cclxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cclxuXHJcbkBhdC1yb290IHtcclxuICBALW1zLXZpZXdwb3J0IHtcclxuICAgIHdpZHRoOiBkZXZpY2Utd2lkdGg7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcclxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS14cywgLnZpc2libGUtc20sIC52aXNpYmxlLW1kLCBhbmQgLnZpc2libGUtbGcgYXMgb2YgdjMuMi4wXHJcblxyXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XHJcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xyXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhsJyk7XHJcblxyXG4udmlzaWJsZS14cy1ibG9jayxcclxuLnZpc2libGUteHMtaW5saW5lLFxyXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXHJcbi52aXNpYmxlLXNtLWJsb2NrLFxyXG4udmlzaWJsZS1zbS1pbmxpbmUsXHJcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcclxuLnZpc2libGUtbWQtYmxvY2ssXHJcbi52aXNpYmxlLW1kLWlubGluZSxcclxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxyXG4udmlzaWJsZS1sZy1ibG9jayxcclxuLnZpc2libGUtbGctaW5saW5lLFxyXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2ssXHJcbi52aXNpYmxlLXhsLWJsb2NrLFxyXG4udmlzaWJsZS14bC1pbmxpbmUsXHJcbi52aXNpYmxlLXhsLWlubGluZS1ibG9jayB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHhzKSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xyXG59XHJcbi52aXNpYmxlLXhzLWJsb2NrIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHhzKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS14cy1pbmxpbmUge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoeHMpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoeHMpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuIChzbSwgc20pIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XHJcbn1cclxuLnZpc2libGUtc20tYmxvY2sge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbiAoc20sIHNtKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1zbS1pbmxpbmUge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbiAoc20sIHNtKSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4gKHNtLCBzbSkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4gKG1kLCBtZCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcclxufVxyXG4udmlzaWJsZS1tZC1ibG9jayB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuIChtZCwgbWQpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLW1kLWlubGluZSB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuIChtZCwgbWQpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbiAobWQsIG1kKSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbiAobGcsIGxnKSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xyXG59XHJcbi52aXNpYmxlLWxnLWJsb2NrIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4gKGxnLCBsZykge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtbGctaW5saW5lIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4gKGxnLCBsZykge1xyXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuIChsZywgbGcpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAoeGwpIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhsJyk7XHJcbn1cclxuLnZpc2libGUteGwtYmxvY2sge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAgKHhsKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4udmlzaWJsZS14bC1pbmxpbmUge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAgKHhsKSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUteGwtaW5saW5lLWJsb2NrIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwICh4bCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHhzKSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4teHMnKTtcclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuIChzbSwgc20pIHtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4gKG1kLCBtZCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbiAobGcsIGxnKSB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwICh4bCkge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhsJyk7XHJcbn1cclxuXHJcblxyXG4vLyBQcmludCB1dGlsaXRpZXNcclxuLy9cclxuLy8gTWVkaWEgcXVlcmllcyBhcmUgcGxhY2VkIG9uIHRoZSBpbnNpZGUgdG8gYmUgbWl4aW4tZnJpZW5kbHkuXHJcblxyXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxyXG5cclxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XHJcblxyXG5AbWVkaWEgcHJpbnQge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcclxufVxyXG4udmlzaWJsZS1wcmludC1ibG9jayB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEgcHJpbnQge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gIEBtZWRpYSBwcmludCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBwcmludCB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcclxufVxyXG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xyXG5cclxuLy9cclxuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cclxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXHJcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xyXG4gICN7JHBhcmVudH0ge1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICB9XHJcbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cclxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cclxuICB0aCN7JHBhcmVudH0sXHJcbiAgdGQjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxyXG59XHJcblxyXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcclxuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuIiwiLy9cclxuLy8gVHlwb2dyYXBoeVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBIZWFkaW5nc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYsXHJcbi5oMSxcclxuLmgyLFxyXG4uaDMsXHJcbi5oNCxcclxuLmg1LFxyXG4uaDYge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICBzbWFsbCxcclxuICAgIC5zbWFsbCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxufVxyXG5cclxuaDF7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDEpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWgxKTtcclxufVxyXG5oMiB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDIpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWgyKTtcclxufVxyXG5oMyB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDMpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWgzKTtcclxufVxyXG5oNCB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg0KTtcclxufVxyXG5oNSB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDUpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg1KTtcclxufVxyXG5oNiB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDYpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg2KTtcclxufVxyXG5cclxuLmgxIHtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgxKSFpbXBvcnRhbnQ7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDEpIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oMSkhaW1wb3J0YW50O1xyXG59XHJcbi5oMiB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMikhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgyKSFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDIpIWltcG9ydGFudDtcclxufVxyXG4uaDMge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpIWltcG9ydGFudDtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMykhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWgzKSFpbXBvcnRhbnQ7XHJcbn1cclxuLmg0IHtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KSFpbXBvcnRhbnQ7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNCkhaW1wb3J0YW50O1xyXG59XHJcbi5oNSB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSkhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg1KSFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDUpIWltcG9ydGFudDtcclxufVxyXG4uaDYge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDYpIWltcG9ydGFudDtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNikhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg2KSFpbXBvcnRhbnQ7XHJcbn1cclxuLmg3IHtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg3KSFpbXBvcnRhbnQ7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDcpIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNykhaW1wb3J0YW50O1xyXG59XHJcbi5oOCB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oOCkhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg4KSFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDgpIWltcG9ydGFudDtcclxufVxyXG4uaDkge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDkpIWltcG9ydGFudDtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oOSkhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg5KSFpbXBvcnRhbnQ7XHJcbn1cclxucCB7XHJcbiAgICBtYXJnaW46IDAgMCAxNnB4O1xyXG59XHJcbi5wLXh4c3tcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTtcclxufVxyXG4ucC14cyB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xyXG59XHJcbi5wLXNtIHtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbn1cclxuLnAtYmFzZXtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG59XHJcblxyXG4ucC1sZyB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxufVxyXG4ucC14bGcge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGxnKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14bGcpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxufVxyXG4ucC14eGxnIHtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4bGcpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4bGcpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxufVxyXG4ubGVhZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpOyBcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS40O1xyXG59XHJcbi5kaXNwbGF5LTEge1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLWRpc3BsYXkxLXNpemUpKTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1kaXNwbGF5MS13ZWlnaHQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWRpc3BsYXktbGluZS1oZWlnaHQpO1xyXG4gIH1cclxuICAuZGlzcGxheS0yIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS1kaXNwbGF5Mi1zaXplKSk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZGlzcGxheTItd2VpZ2h0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1kaXNwbGF5LWxpbmUtaGVpZ2h0KTtcclxuICB9XHJcbiAgLmRpc3BsYXktMyB7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tZGlzcGxheTMtc2l6ZSkpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWRpc3BsYXkzLXdlaWdodCk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZGlzcGxheS1saW5lLWhlaWdodCk7XHJcbiAgfVxyXG4gIC5kaXNwbGF5LTQge1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLWRpc3BsYXk0LXNpemUpKTtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1kaXNwbGF5NC13ZWlnaHQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWRpc3BsYXktbGluZS1oZWlnaHQpO1xyXG4gIH1cclxuICBcclxuaHIge1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0taHItbWFyZ2luLXkpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taHItbWFyZ2luLXkpO1xyXG4gICAgLy8gYm9yZGVyOiAwO1xyXG4gICAgYm9yZGVyLXRvcDogdmFyKC0taHItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1oci1ib3JkZXItY29sb3IpO1xyXG4gIH1cclxuICBcclxuLy8gRW1waGFzaXMgJiBtaXNjXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXHJcbnNtYWxsLFxyXG4uc21hbGwge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgLy9mb250LXNpemU6IGZsb29yKCgxMDAlICogdmFyKC0tZm9udC1zaXplLXNtKSAvIHZhcigtLWZvbnQtc2l6ZS1iYXNlKSk7XHJcbn1cclxuXHJcbm1hcmssXHJcbi5tYXJrIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci00KTtcclxuICAgIHBhZGRpbmc6IC4yZW07XHJcbn1cclxuXHJcbi8vIEFsaWdubWVudFxyXG4udGV4dC1sZWZ0IHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxufVxyXG4udGV4dC1yaWdodCB7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xyXG59XHJcbi50ZXh0LWNlbnRlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxufVxyXG4udGV4dC1qdXN0aWZ5IHtcclxuICAgIHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDtcclxufVxyXG4udGV4dC1ub3dyYXAge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLyBUcmFuc2Zvcm1hdGlvblxyXG4udGV4dC1sb3dlcmNhc2Uge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50O1xyXG59XHJcbi50ZXh0LXVwcGVyY2FzZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XHJcbn1cclxuLnRleHQtY2FwaXRhbGl6ZSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xyXG4udGV4dC1sYXJnZSB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZykgIWltcG9ydGFudDtcclxufVxyXG4udGV4dC1zbWFsbCB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSkgIWltcG9ydGFudDtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSkgIWltcG9ydGFudDtcclxufVxyXG4udGV4dC1mYWRlZCB7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcikgIWltcG9ydGFudDtcclxufVxyXG4udGV4dC1saWdodGVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpICFpbXBvcnRhbnQ7XHJcbn1cclxuLmxpbmUtdGhyb3VnaCB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXByaW1hcnknLCB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpLCB2YXIoLS1icmFuZC1wcmltYXJ5LWRhcmtlcikpO1xyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXN1Y2Nlc3MnLCB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpLCB2YXIoLS1icmFuZC1zdWNjZXNzLWRhcmtlcikpO1xyXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWluZm8nLCB2YXIoLS1icmFuZC1pbmZvKSwgdmFyKC0tYnJhbmQtaW5mby1kYXJrZXIpKTtcclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC13YXJuaW5nJywgdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKSwgdmFyKC0tYnJhbmQtd2FybmluZy1kYXJrZXIpKTtcclxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCB2YXIoLS10ZXh0LWRhbmdlci1jb2xvciksIHZhcigtLWJyYW5kLWRhbmdlci1kYXJrZXIpKTtcclxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xyXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXHJcbi8vIHNhZmVseSBzaGlmdCB0aGluZ3MgYXJvdW5kIChwZXIgU2VtVmVyIHJ1bGVzKS5cclxuLmJnLXByaW1hcnkge1xyXG4gICAgLy8gR2l2ZW4gdGhlIGNvbnRyYXN0IGhlcmUsIHRoaXMgaXMgdGhlIG9ubHkgY2xhc3MgdG8gaGF2ZSBpdHMgY29sb3IgaW52ZXJ0ZWRcclxuICAgIC8vIGF1dG9tYXRpY2FsbHkuXHJcbiAgICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCB2YXIoLS1icmFuZC1wcmltYXJ5KSwgdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMikpO1xyXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctc3VjY2VzcycsIHZhcigtLWJyYW5kLXN1Y2Nlc3MtbGlnaHRlci00KSwgdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyLTMpKTtcclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWluZm8nLCB2YXIoLS1icmFuZC1pbmZvLWxpZ2h0ZXItMyksIHZhcigtLWJyYW5kLWluZm8tbGlnaHRlci0yKSk7XHJcbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy13YXJuaW5nJywgdmFyKC0tYnJhbmQtd2FybmluZy1saWdodGVyLTQpLCB2YXIoLS1icmFuZC13YXJuaW5nLWxpZ2h0ZXItMykpO1xyXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctZGFuZ2VyJywgdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCksIHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTMpKTtcclxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWRlZmF1bHQnLCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCksIHZhcigtLWdyYXktbGlnaHRlci0zKSk7XHJcbi8vIExpc3RzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXHJcbnVsLFxyXG5vbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogKHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpIC8gMik7XHJcbiAgICB1bCxcclxuICAgIG9sIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBMaXN0IG9wdGlvbnNcclxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGZyb20gYC5saXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XHJcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhcyBgQG1peGluIGxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcclxuLmxpc3QtdW5zdHlsZWQge1xyXG4gICAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcclxufVxyXG5cclxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcclxuLmxpc3QtaW5saW5lIHtcclxuICAgIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XHJcbiAgICBtYXJnaW4tbGVmdDogLTVweDtcclxuICAgID5saSwubGlzdC1pbmxpbmUtaXRlbSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWxpc3QtaW5saW5lLXBhZGRpbmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL1xyXG4vLyBNaXNjXHJcbi8vXHJcblxyXG4vLyBCdWlsZHMgb24gYGFiYnJgXHJcbi5pbml0aWFsaXNtIHtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg5MCUpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcblxyXG5ibG9ja3F1b3RlIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJsb2NrcXVvdGUtYmcpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmxvY2txdW90ZS1ib3JkZXItY29sb3IpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1ibG9ja3F1b3RlLXBhZGRpbmcpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1ibG9ja3F1b3RlLWZvbnQtY29sb3IpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWJhbGNrcXVvdGUtZm9udC13ZWlnaHQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWJsb2NrcXVvdGUtbGluZS1oZWlnaHQpO1xyXG4gICAgJiA+IDpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgcCB7IFxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvcXVvdGUtaWNvbi5zdmcpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMjRweDtcclxuICAgICAgICAgICAgbGVmdDogMjRweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ibG9ja3F1b3RlLWZvb3RlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS1ibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSkpO1xyXG4gICAgY29sb3I6IHZhcigtLWJsb2NrcXVvdGUtc21hbGwtY29sb3IpO1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXHJcbiAgICB9XHJcbn0iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcclxuXHJcbi8vIFR5cG9ncmFwaHlcclxuXHJcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaG92ZXItY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcclxuICAjeyRwYXJlbnR9IHtcclxuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcclxuICB9XHJcbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XHJcbiAgICBhI3skcGFyZW50fSB7XHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXItY29sb3IgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcclxufVxyXG4iLCIvL1xyXG4vLyBCYXNlIHN0eWxlc1xyXG4vL1xyXG4uY2FyZCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIG1pbi13aWR0aDogMDtcclxuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNhcmQtYmcpO1xyXG4gICAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xyXG4gICAgYm9yZGVyOiB2YXIoLS1jYXJkLWJvcmRlcik7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLWNhcmQtYm9yZGVyLXJhZGl1cykpO1xyXG5cclxuICAgID5ociB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgID4ubGlzdC1ncm91cCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxyXG4gICAgLy8gdXNlIGEgY2hpbGQgc2VsZWN0b3IgaGVyZSB0byBwcmV2ZW50IGRvdWJsZSBib3JkZXJzLlxyXG4gICAgPi5jYXJkLWhlYWRlcisubGlzdC1ncm91cCxcclxuICAgID4ubGlzdC1ncm91cCsuY2FyZC1mb290ZXIge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXJkLWJvZHkge1xyXG4gICAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxyXG4gICAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxyXG4gICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgaW1hZ2Ugc2l6ZSBidWcgaW4gSUVcclxuICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIHBhZGRpbmc6IHZhcigtLWNhcmQtYm9keS1wYWRkaW5nKTtcclxufVxyXG5cclxuLmNhcmQtdGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2FyZC1zcGFjZXIteSk7XHJcbn1cclxuXHJcbi5jYXJkLXN1YnRpdGxlIHtcclxuICAgIG1hcmdpbi10b3A6IC0gdmFyKC0tY2FyZC1zcGFjZXIteSkgLyAyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5jYXJkLWxpbmsge1xyXG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICsuY2FyZC1saW5rIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tY2FyZC1zcGFjZXIteCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vXHJcbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xyXG4vL1xyXG4uY2FyZC1oZWFkZXIge1xyXG4gICAgcGFkZGluZzogdmFyKC0tY2FyZC1oZWFkaW5nLXBhZGRpbmcpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNhcmQtY2FwLWJnKTtcclxuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWNhcmQtYm9yZGVyKTtcclxuXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSAwIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2FyZC1mb290ZXIge1xyXG4gICAgcGFkZGluZzogdmFyKC0tY2FyZC1mb290ZXItcGFkZGluZyk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jYXJkLWNhcC1iZyk7XHJcbiAgICBib3JkZXItdG9wOiB2YXIoLS1jYXJkLWJvcmRlcik7XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCB2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vL1xyXG4vLyBIZWFkZXIgbmF2c1xyXG4vL1xyXG4uY2FyZC1oZWFkZXItdGFicyB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0gdmFyKC0tY2FyZC1zcGFjZXIteCkgLyAyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLSB2YXIoLS1jYXJkLXNwYWNlci15KTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtdmFyKC0tY2FyZC1zcGFjZXIteCkgLyAyO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcclxuICAgIG1hcmdpbi1yaWdodDogLSB2YXIoLS1jYXJkLXNwYWNlci14KSAvIDI7XHJcbiAgICBtYXJnaW4tbGVmdDogLSB2YXIoLS1jYXJkLXNwYWNlci14KSAvIDI7XHJcbn1cclxuXHJcbi8vIENhcmQgaW1hZ2VcclxuLmNhcmQtaW1nLW92ZXJsYXkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcGFkZGluZzogdmFyKC0tY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XHJcbn1cclxuXHJcbi5jYXJkLWltZyxcclxuLmNhcmQtaW1nLXRvcCxcclxuLmNhcmQtaW1nLWJvdHRvbSB7XHJcbiAgICBmbGV4LXNocmluazogMDsgLy8gRm9yIElFOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5Mzk2XHJcbiAgICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxyXG59XHJcblxyXG4uY2FyZC1pbWcsXHJcbi5jYXJkLWltZy10b3Age1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XHJcbn1cclxuXHJcbi5jYXJkLWltZyxcclxuLmNhcmQtaW1nLWJvdHRvbSB7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcclxufVxyXG5cclxuLy8gQ2FyZCBkZWNrXHJcbi5jYXJkLWRlY2sge1xyXG4gICAgLmNhcmQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWNhcmQtZGVjay1tYXJnaW4pO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtIHZhcigtLWNhcmQtZGVjay1tYXJnaW4pO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtIHZhcigtLWNhcmQtZGVjay1tYXJnaW4pO1xyXG5cclxuICAgICAgICAuY2FyZCB7XHJcbiAgICAgICAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxyXG4gICAgICAgICAgICBmbGV4OiAxIDAgMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tY2FyZC1kZWNrLW1hcmdpbik7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBkZWZhdWx0XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1jYXJkLWRlY2stbWFyZ2luKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vXHJcbi8vIENhcmQgZ3JvdXBzXHJcbi8vXHJcbi5jYXJkLWdyb3VwIHtcclxuXHJcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXHJcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxyXG4gICAgPi5jYXJkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYXJkLWdyb3VwLW1hcmdpbik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuXHJcbiAgICAgICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxyXG4gICAgICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXHJcbiAgICAgICAgPi5jYXJkIHtcclxuICAgICAgICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMCAwJTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgICAgICsuY2FyZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXHJcbiAgICAgICAgICAgIC8vIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xyXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcclxuXHJcbiAgICAgICAgICAgICAgICAuY2FyZC1pbWctdG9wLFxyXG4gICAgICAgICAgICAgICAgLmNhcmQtaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcclxuICAgICAgICAgICAgICAgIC5jYXJkLWZvb3RlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcclxuXHJcbiAgICAgICAgICAgICAgICAuY2FyZC1pbWctdG9wLFxyXG4gICAgICAgICAgICAgICAgLmNhcmQtaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxyXG4gICAgICAgICAgICAgICAgLmNhcmQtZm9vdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9cclxuLy8gQ29sdW1uc1xyXG4vL1xyXG4uY2FyZC1jb2x1bW5zIHtcclxuICAgIC5jYXJkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYXJkLWNvbHVtbnMtbWFyZ2luKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XHJcbiAgICAgICAgY29sdW1uLWNvdW50OiB2YXIoLS1jYXJkLWNvbHVtbnMtY291bnQpO1xyXG4gICAgICAgIGNvbHVtbi1nYXA6IHZhcigtLWNhcmQtY29sdW1ucy1nYXApO1xyXG4gICAgICAgIG9ycGhhbnM6IDE7XHJcbiAgICAgICAgd2lkb3dzOiAxO1xyXG5cclxuICAgICAgICAuY2FyZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vXHJcbi8vIEFjY29yZGlvblxyXG4vL1xyXG4uYWNjb3JkaW9uIHtcclxuICAgIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcclxuXHJcbiAgICA+LmNhcmQge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4uY2FyZC1oZWFkZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxyXG4vL1xyXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXHJcbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXHJcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxyXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cclxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxyXG4uaW1nLWZsdWlkIHtcclxuICAgIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xyXG59XHJcblxyXG4vLyBJbWFnZSB0aHVtYm5haWxzXHJcbi5pbWctdGh1bWJuYWlsIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXRodW1ibmFpbC1wYWRkaW5nKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRodW1ibmFpbC1iZyk7XHJcbiAgICBib3JkZXI6IHZhcigtLXRodW1ibmFpbC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXRodW1ibmFpbC1ib3JkZXItY29sb3IpO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS10aHVtYm5haWwtYm9yZGVyLXJhZGl1cykpO1xyXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS10aHVtYm5haWwtYm94LXNoYWRvdykpO1xyXG4gICAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXHJcbiAgICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcclxufVxyXG5cclxuLy9cclxuLy8gRmlndXJlc1xyXG4vL1xyXG4uZmlndXJlIHtcclxuICAgIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLmZpZ3VyZS1pbWcge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cykgLyAyO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi5maWd1cmUtY2FwdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tZmlndXJlLWNhcHRpb24tZm9udC1zaXplKSk7XHJcbiAgICBjb2xvcjogdmFyKC0tZmlndXJlLWNhcHRpb24tY29sb3IpO1xyXG59IiwiLy8gSW1hZ2UgTWl4aW5zXHJcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxyXG4vLyAtIFJldGluYSBpbWFnZVxyXG5cclxuXHJcbi8vIFJlc3BvbnNpdmUgaW1hZ2VcclxuLy9cclxuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cclxuXHJcbkBtaXhpbiBpbWctZmx1aWQoKSB7XHJcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcclxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG5cclxuLy8gUmV0aW5hIGltYWdlXHJcbi8vXHJcbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cclxuXHJcbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcclxuXHJcbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcclxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cclxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXHJcbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tL2Nzcy1tZWRpYS1yZXNvbHV0aW9uXHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcclxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XHJcbiAgfVxyXG4gIC8vIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbWctcmV0aW5hKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XHJcbn1cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcclxuLy8gUmVib290XHJcbi8vXHJcbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcclxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXHJcbi8vXHJcbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcclxuLy8gRG9jdW1lbnRcclxuLy9cclxuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cclxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cclxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxyXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cclxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXHJcbiosXHJcbio6OmJlZm9yZSxcclxuKjo6YWZ0ZXIge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxyXG59XHJcblxyXG5odG1sIHtcclxuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXHJcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xyXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoIzAwMCwgMCk7IC8vIDVcclxufVxyXG5cclxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2VycylcclxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XHJcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcclxuYXJ0aWNsZSxcclxuYXNpZGUsXHJcbmZpZ2NhcHRpb24sXHJcbmZpZ3VyZSxcclxuZm9vdGVyLFxyXG5oZWFkZXIsXHJcbmhncm91cCxcclxubWFpbixcclxubmF2LFxyXG5zZWN0aW9uIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vLyBCb2R5XHJcbi8vXHJcbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cclxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxyXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxyXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cclxuYm9keSB7XHJcbiAgICBtYXJnaW46IDA7IC8vIDFcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKSwgc2Fucy1zZXJpZjtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS1mb250LXNpemUtYmFzZSkpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ib2R5LWJnKTsgLy8gMlxyXG4gICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyAvLyAzXHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXHJcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxyXG4vLyBmb2N1cyBvdXRsaW5lLiBJbiBnZW5lcmFsLCB0aGlzIHdvdWxkIG1lYW4gdGhhdCB0aGUgb3V0bGluZSBpcyBvbmx5IGFwcGxpZWQgaWYgdGhlXHJcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXHJcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxyXG4vLyB3YW50cyBmb2N1cyBvdXRsaW5lcyB0byBhbHdheXMgYmUgcHJlc2VudGVkLlxyXG4vL1xyXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXHJcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXHJcblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xyXG4gICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLyBDb250ZW50IGdyb3VwaW5nXHJcbi8vXHJcbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXHJcbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxyXG5ociB7XHJcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxyXG4gICAgaGVpZ2h0OiAwOyAvLyAxXHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxyXG59XHJcblxyXG4vL1xyXG4vLyBUeXBvZ3JhcGh5XHJcbi8vXHJcbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXHJcbi8vXHJcbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXHJcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cclxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUsXHJcbmg2IHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oZWFkaW5ncy1tYXJnaW4tYm90dG9tKTtcclxufVxyXG5cclxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXHJcbi8vXHJcbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcclxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxyXG5wIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSk7XHJcbn1cclxuXHJcbi8vIEFiYnJldmlhdGlvbnNcclxuLy9cclxuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cclxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cclxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxyXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXHJcbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxyXG5hYmJyW3RpdGxlXSxcclxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XHJcbiAgICAvLyAxXHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXHJcbiAgICBjdXJzb3I6IGhlbHA7IC8vIDNcclxuICAgIGJvcmRlci1ib3R0b206IDA7IC8vIDRcclxuICAgIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNVxyXG59XHJcblxyXG5hZGRyZXNzIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxub2wsXHJcbnVsLFxyXG5kbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxub2wgb2wsXHJcbnVsIHVsLFxyXG5vbCB1bCxcclxudWwgb2wge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuZHQge1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWR0LWZvbnQtd2VpZ2h0KTtcclxufVxyXG5cclxuZGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XHJcbiAgICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcclxufVxyXG5cclxuYmxvY2txdW90ZSB7XHJcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xyXG59XHJcblxyXG5iLFxyXG5zdHJvbmcge1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXHJcbn1cclxuXHJcbnNtYWxsLFxyXG4uc21hbGwge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxufVxyXG5cclxuLy9cclxuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXHJcbi8vIGFsbCBicm93c2Vycy5cclxuLy9cclxuc3ViLFxyXG5zdXAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDc1JSk7XHJcbiAgICBsaW5lLWhlaWdodDogMDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufVxyXG5cclxuc3ViIHtcclxuICAgIGJvdHRvbTogLS4yNWVtO1xyXG59XHJcblxyXG5zdXAge1xyXG4gICAgdG9wOiAtLjVlbTtcclxufVxyXG5cclxuLy9cclxuLy8gTGlua3NcclxuLy9cclxuYSB7XHJcbiAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHZhcigtLWxpbmstZGVjb3JhdGlvbik7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxyXG5cclxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHZhcigtLWxpbmstaG92ZXItZGVjb3JhdGlvbik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cclxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcclxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXHJcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXHJcbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLy9cclxuLy8gRmlndXJlc1xyXG4vL1xyXG5maWd1cmUge1xyXG4gICAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxyXG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcclxufVxyXG5cclxuLy9cclxuLy8gSW1hZ2VzIGFuZCBjb250ZW50XHJcbi8vXHJcbmltZyB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cclxufVxyXG5cclxuc3ZnIHtcclxuICAgIC8vIFdvcmthcm91bmQgZm9yIHRoZSBTVkcgb3ZlcmZsb3cgYnVnIGluIElFMTAvMTEgaXMgc3RpbGwgcmVxdWlyZWQuXHJcbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi8vXHJcbi8vIFRhYmxlc1xyXG4vL1xyXG50YWJsZSB7XHJcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXHJcbn1cclxuXHJcbmNhcHRpb24ge1xyXG4gICAgcGFkZGluZy10b3A6IHZhcigtLXRhYmxlLXRkLXBhZGRpbmcpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXRhYmxlLXRkLXBhZGRpbmcpO1xyXG4gICAgY29sb3I6IHZhcigtLXRhYmxlLWNhcHRpb24tY29sb3IpO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xyXG59XHJcblxyXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xyXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cclxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXHJcbnRoIHtcclxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10YWJsZS10aC1mb250LXdlaWdodCk7IC8vIDFcclxuICAgIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcclxuICAgIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXHJcbn1cclxuXHJcbi8vXHJcbi8vIEZvcm1zXHJcbi8vXHJcbmxhYmVsIHtcclxuICAgIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1sYWJlbC1tYXJnaW4tYm90dG9tKTtcclxufVxyXG5cclxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxyXG4vL1xyXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcclxuYnV0dG9uIHtcclxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuXHJcbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcclxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxyXG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXHJcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXHJcbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbmlucHV0LFxyXG5idXR0b24sXHJcbnNlbGVjdCxcclxub3B0Z3JvdXAsXHJcbnRleHRhcmVhIHtcclxuICAgIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXHJcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG5idXR0b24sXHJcbmlucHV0IHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXHJcbn1cclxuXHJcbmJ1dHRvbixcclxuc2VsZWN0IHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcclxufVxyXG5cclxuLy8gU2V0IHRoZSBjdXJzb3IgZm9yIG5vbi1gPGJ1dHRvbj5gIGJ1dHRvbnNcclxuLy9cclxuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxyXG5bcm9sZT1cImJ1dHRvblwiXSB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cclxuLy9cclxuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXHJcbnNlbGVjdCB7XHJcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcclxufVxyXG5cclxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXHJcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cclxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cclxuYnV0dG9uLFxyXG5bdHlwZT1cImJ1dHRvblwiXSxcclxuLy8gMVxyXG5bdHlwZT1cInJlc2V0XCJdLFxyXG5bdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxyXG59XHJcblxyXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxyXG5AaWYgJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucyB7XHJcblxyXG4gICAgYnV0dG9uLFxyXG4gICAgW3R5cGU9XCJidXR0b25cIl0sXHJcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxyXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXHJcbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcclxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXHJcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXHJcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxyXG4gICAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxyXG59XHJcblxyXG50ZXh0YXJlYSB7XHJcbiAgICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cclxuICAgIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cclxuICAgIHJlc2l6ZTogdmVydGljYWw7XHJcbn1cclxuXHJcbmZpZWxkc2V0IHtcclxuICAgIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXHJcbiAgICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cclxuICAgIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cclxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XHJcbiAgICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbiAgICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXHJcbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cclxubGVnZW5kIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxyXG59XHJcblxyXG5wcm9ncmVzcyB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXHJcbn1cclxuXHJcbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cclxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICAgIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuW3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gICAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxyXG4gICAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XHJcbiAgICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXHJcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxyXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG4vL1xyXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXHJcbi8vXHJcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG5cclxuLy9cclxuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cclxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxyXG4vL1xyXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcclxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXHJcbn1cclxuXHJcbi8vXHJcbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xyXG4vL1xyXG5vdXRwdXQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG5zdW1tYXJ5IHtcclxuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbnRlbXBsYXRlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXHJcbn1cclxuXHJcbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXHJcbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxyXG5baGlkZGVuXSB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn0iLCIvL1xyXG4vLyBSb3RhdGluZyBib3JkZXJcclxuLy9cclxuXHJcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xyXG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxyXG59XHJcblxyXG4uc3Bpbm5lci1ib3JkZXIge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogdmFyKC0tc3Bpbm5lci13aWR0aCk7XHJcbiAgaGVpZ2h0OiB2YXIoLS1zcGlubmVyLWhlaWdodCk7XHJcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xyXG4gIGJvcmRlcjogdmFyKC0tc3Bpbm5lci1ib3JkZXItd2lkdGgpIHNvbGlkIGN1cnJlbnRDb2xvcjtcclxuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcclxufVxyXG5cclxuLnNwaW5uZXItYm9yZGVyLXNtIHtcclxuICB3aWR0aDogdmFyKC0tc3Bpbm5lci13aWR0aC1zbSk7XHJcbiAgaGVpZ2h0OiB2YXIoLS1zcGlubmVyLWhlaWdodC1zbSk7XHJcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1zcGlubmVyLWJvcmRlci13aWR0aC1zbSk7XHJcbn1cclxuXHJcbi8vXHJcbi8vIEdyb3dpbmcgY2lyY2xlXHJcbi8vXHJcblxyXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XHJcbiAgMCUge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcclxuICB9XHJcbiAgNTAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uc3Bpbm5lci1ncm93IHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgd2lkdGg6IHZhcigtLXNwaW5uZXItd2lkdGgpO1xyXG4gIGhlaWdodDogdmFyKC0tc3Bpbm5lci1oZWlnaHQpO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XHJcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIGFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xyXG59XHJcblxyXG4uc3Bpbm5lci1ncm93LXNtIHtcclxuICB3aWR0aDogdmFyKC0tc3Bpbm5lci13aWR0aC1zbSk7XHJcbiAgaGVpZ2h0OiB2YXIoLS1zcGlubmVyLWhlaWdodC1zbSk7XHJcbn1cclxuXHJcbkBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xyXG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XHJcbiAgICAuc3Bpbm5lci1ib3JkZXIsXHJcbiAgICAuc3Bpbm5lci1ncm93IHtcclxuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIudG9hc3Qge1xyXG4gIC8vIFByZXZlbnRzIGZyb20gc2hyaW5raW5nIGluIElFMTEsIHdoZW4gaW4gYSBmbGV4IGNvbnRhaW5lclxyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MzQxXHJcbiAgZmxleC1iYXNpczogdmFyKC0tdG9hc3QtbWF4LXdpZHRoKTtcclxuICBtYXgtd2lkdGg6IHZhcigtLXRvYXN0LW1heC13aWR0aCk7XHJcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLXRvYXN0LWZvbnQtc2l6ZSkpO1xyXG4gIGNvbG9yOiB2YXIoLS10b2FzdC1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdG9hc3QtYmFja2dyb3VuZC1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICBib3JkZXI6IHZhcigtLXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tdG9hc3QtYm9yZGVyLWNvbG9yKTtcclxuICBib3gtc2hhZG93OiB2YXIoLS10b2FzdC1ib3gtc2hhZG93KTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tdG9hc3QtYm9yZGVyLXJhZGl1cykpO1xyXG5cclxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdG9hc3QtcGFkZGluZy14KTtcclxuICB9XHJcblxyXG4gICYuc2hvd2luZyB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgJi5zaG93IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gICYuaGlkZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLnRvYXN0LWhlYWRlciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIHBhZGRpbmc6IHZhcigtLXRvYXN0LXBhZGRpbmcteSkgdmFyKC0tdG9hc3QtcGFkZGluZy14KTtcclxuICBjb2xvcjogdmFyKC0tdG9hc3QtaGVhZGVyLWNvbG9yKTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcik7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICBib3JkZXItYm90dG9tOiB2YXIoLS10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXRvYXN0LWhlYWRlci1ib3JkZXItY29sb3IpO1xyXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHN1YnRyYWN0KHZhcigtLXRvYXN0LWJvcmRlci1yYWRpdXMpLCB2YXIoLS10b2FzdC1ib3JkZXItd2lkdGgpKSk7XHJcbiAgLmNsb3Nle1xyXG4gICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIG1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4udG9hc3QtYm9keSB7XHJcbiAgcGFkZGluZzogdmFyKC0tdG9hc3QtcGFkZGluZy14KTsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxyXG59XHJcbiIsIi5mYWRlIHtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLXRyYW5zaXRpb24tZmFkZSkpO1xyXG5cclxuICAmOm5vdCguc2hvdykge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC8vIC5tb2RhbC1jb250ZW50e1xyXG4gICAgLy8gICAubW9kYWwtaGVhZGVyLFxyXG4gICAgLy8gICAubW9kYWwtYm9keSxcclxuICAgIC8vICAgLm1vZGFsLWZvb3RlcntcclxuICAgIC8vICAgICAuYnRuLCBidXR0b257XHJcbiAgICAvLyAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgLy8gICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICB9XHJcbiAgICAvLyB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29sbGFwc2U6bm90KC5sdS1jb2xsYXBzZSkge1xyXG4gICY6bm90KC5zaG93KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAmLmlue1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcbi5jb2xsYXBzZS5sdS1jb2xsYXBzZSB7XHJcbiAgJjpub3QoLmx1LXNob3cpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gICYuaW57XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuLmx1LWNvbGxhcHNpbmcsXHJcbi5jb2xsYXBzaW5nIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS10cmFuc2l0aW9uLWNvbGxhcHNlKSk7XHJcbn1cclxuXHJcbi5wYW5lbC5wYW5lbC1jaGVja3tcclxuICAmLmNoZWNrZWR7XHJcbiAgICArIC5wYW5lbC5wYW5lbC1jaGVjazpub3QoLmNoZWNrZWQpe1xyXG4gICAgICAucGFuZWwtY29sbGFwc2UuY29sbGFwc2Uuc2hvd3tcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLyoqXHJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogTWFya2Rvd24gRWRpdG9yIFR5cG9ncmFwaHlcclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKi9cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQXJ0aWNsZSAtIENvbnRlbnRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4ubWFya2Rvd24tY29udGVudCxcclxuLm1kLXByZXZpZXcge1xyXG4gICAgY29sb3I6IHZhcigtLW1hcmtkb3duLWZvbnQtY29sb3IpO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1tYXJrZG93bi1mb250LXNpemUtYmFzZSk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tbWFya2Rvd24tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbWFya2Rvd24tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgJiA+ICo6bm90KHByZTpoYXMoY29kZSkpOm5vdChocil7XHJcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAmID4gKjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMFxyXG4gICAgfSAgICBcclxuICAgICYgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBcclxuICAgIH0gICAgXHJcbiAgICBoMSxcclxuICAgIC5oMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMyk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tbWFya2Rvd24taDEtcGFkZGluZy10b3ApO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tYXJrZG93bi1oMS1wYWRkaW5nLWJvdHRvbSk7XHJcbiAgICB9XHJcbiAgICBoMixcclxuICAgIC5oMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tbWFya2Rvd24taDItcGFkZGluZy10b3ApO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tYXJrZG93bi1oMi1wYWRkaW5nLWJvdHRvbSk7XHJcbiAgICB9XHJcbiAgICBoMyxcclxuICAgIC5oMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLW1hcmtkb3duLWgzLXBhZGRpbmctdG9wKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tbWFya2Rvd24taDMtcGFkZGluZy1ib3R0b20pO1xyXG4gICAgfVxyXG4gICAgaDQsXHJcbiAgICAuaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDYpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tYXJrZG93bi1oNC1wYWRkaW5nLXRvcCk7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLW1hcmtkb3duLWg0LXBhZGRpbmctYm90dG9tKTtcclxuICAgIH1cclxuICAgIGg1LFxyXG4gICAgLmg1IHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tbWFya2Rvd24taDUtcGFkZGluZy10b3ApO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tYXJrZG93bi1oNS1wYWRkaW5nLWJvdHRvbSk7XHJcbiAgICB9XHJcbiAgICBoNixcclxuICAgIC5oNiB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tYXJrZG93bi1oNi1wYWRkaW5nLXRvcCk7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLW1hcmtkb3duLWg2LXBhZGRpbmctYm90dG9tKTtcclxuICAgIH1cclxuICAgIGgxLGgyLGgzLGg0LGg1LGg2e1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICsgYnJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcCwgb2wge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1tYXJrZG93bi1wYXJhZ3JhcGgtcGFkZGluZy1ib3R0b20pO1xyXG4gICAgfVxyXG5cdGIsXHJcbiAgICBzdHJvbmcge1xyXG5cdFx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xyXG5cdFx0Y29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcblx0fVxyXG5cdC50YWJsZSwgXHJcbiAgICB0YWJsZSB7IFxyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgdGQsXHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cdH1cclxuXHRpbWcge1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdH1cclxuICAgIHVse1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICBjb2Rle1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdGUtc3VjY2Vzcy1iZyk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdGUtc3VjY2Vzcy10ZXh0KTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN0YXRlLXN1Y2Nlc3MtYm9yZGVyKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZTogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYmxvY2txdW90ZXtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLW1hcmtkb3duLWJsb2NrcXVvdGUtcGFkZGluZy1ib3R0b20pO1xyXG4gICAgICAgIHB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0yeCkpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDJweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICBcclxuICAgIH1cclxuICAgIHByZXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWZhZGVkKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItMyk7XHJcbiAgICAgICAgcGFkZGluZzogMTJweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICAgICAgJjpoYXMoY29kZSl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmtkb3duLWNvZGUtcGFkZGluZy1ib3R0b20pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb2Rle1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1bnNldDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuaXAtYWRkcmVzc3tcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eHMpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWd0aC14eHMpO1xyXG4gICAgfVxyXG59XHJcbi5hbm5vdW5jZW1lbnRzLWxpc3Qge1xyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0xeCkgMDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqIE1hcmtkb3duIEVkaXRvclxyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqL1xyXG5cclxuLm1kLWVkaXRvciB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tZC1lZGl0b3J7XHJcbiAgICAubWQtaGVhZGVyOmhhcyguYnRuLmFjdGl2ZVtkYXRhLWhhbmRsZXI9XCJib290c3RyYXAtbWFya2Rvd24tY21kUHJldmlld1wiXSl7XHJcbiAgICAgICAgLmJ0bi1ncm91cDpub3QoLmJ0bi1ncm91cC1wcmV2aWV3KXtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bi1ncm91cC5idG4tZ3JvdXAtcHJldmlld3tcclxuICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5scy1hcnJvdy1sZWZ0e1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLm1kLWVkaXRvciA+IC5idG4tdG9vbGJhciB7XHJcbiAgICAmLm1kLWhlYWRlcntcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICA+IC5tZC1jb250cm9sc3tcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIH1cclxuICAgID4gLmJ0bi1ncm91cCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhhcyhidXR0b25bZGF0YS1oYW5kbGVyPVwiYm9vdHN0cmFwLW1hcmtkb3duLWNtZFByZXZpZXdcIl0pe1xyXG4gICAgICAgICAgICBvcmRlcjogLTE7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgLmJ0bi1kZWZhdWx0e1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoNSl7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDoxMHB4O1xyXG4gICAgICAgICAgICAmOjphZnRlcntcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bjpub3QoLmJ0bi1wcmltYXJ5KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgIC5mYSxcclxuICAgICAgICAgICAgLmZhcyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmZhLXNlYXJjaCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIgeyAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgICAgICBcclxuICAgICAgICAgICAgICAgIC5mYSxcclxuICAgICAgICAgICAgICAgIC5mYXMge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zLWhvdmVyKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm1kLWVkaXRvciA+IHRleHRhcmVhLm1hcmtkb3duLWVkaXRvcixcclxuLm1kLWVkaXRvciA+IC5tZC1wcmV2aWV3IHtcclxuICAgIHBhZGRpbmc6IDE1cHggIWltcG9ydGFudDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKSFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtYmcpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4ubWFya2Rvd24tZWRpdG9yLXN0YXR1cyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxufVxyXG4uc21hbGwtZm9udCB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eHMpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4cyk7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG59XHJcblxyXG4vKipcclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiBNYXJrZG93biBDb250ZW50IEZvcm1hdHRpbmdcclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKi9cclxuXHJcblxyXG4ubWQtZWRpdG9yIC5tZC1mb290ZXJ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctMngpO1xyXG59XHJcbi5tZC1lZGl0b3I+Lm1kLWhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tc3BhY2luZy0xeCkgLyAyKTtcclxufVxyXG5cclxuLm1kLWVkaXRvcj4ubWQtaGVhZGVyIHtcclxuICAgIG1hcmdpbjogMFxyXG59XHJcblxyXG4ubWQtZWRpdG9yPi5tZC1wcmV2aWV3IHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNkZGQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICNkZGQ7XHJcbiAgICBtaW4taGVpZ2h0OiAxMHB4O1xyXG4gICAgb3ZlcmZsb3c6IGF1dG9cclxufVxyXG5cclxuLm1kLWVkaXRvcj50ZXh0YXJlYSB7XHJcbiAgICBmb250LWZhbWlseTogTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjZGRkO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjZGRkO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWVlXHJcbn1cclxuXHJcbi5tZC1lZGl0b3I+dGV4dGFyZWE6Zm9jdXMge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZcclxufVxyXG5cclxuLm1kLWVkaXRvciAubWQtY29udHJvbHMgLm1kLWNvbnRyb2wge1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICY6bm90KDpob3Zlcil7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpO1xyXG4gICAgfVxyXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1kYXJrZXIpO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogOTk5OTk7XHJcbiAgICBwYWRkaW5nOiA2MHB4IDMwcHggMTVweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50XHJcbn1cclxuXHJcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1mb290ZXIge1xyXG4gICAgZGlzcGxheTogbm9uZVxyXG59XHJcblxyXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAubWQtaW5wdXQsXHJcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1wcmV2aWV3IHtcclxuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICM5OTk7XHJcbiAgICBsaW5lLWhlaWdodDogMS42ZW0gIWltcG9ydGFudDtcclxuICAgIHJlc2l6ZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnRcclxufVxyXG5cclxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUgLm1kLXByZXZpZXcge1xyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICBvdmVyZmxvdzogYXV0b1xyXG59XHJcblxyXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAubWQtaW5wdXQ6Zm9jdXMsXHJcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1pbnB1dDpob3ZlciB7XHJcbiAgICBjb2xvcjogIzMzMztcclxuICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudFxyXG59XHJcblxyXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAubWQtaGVhZGVyIHtcclxuICAgIGJhY2tncm91bmQ6IDAgMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdG9wOiAyMHB4XHJcbn1cclxuXHJcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5idG4tZ3JvdXAge1xyXG4gICAgZmxvYXQ6IG5vbmVcclxufVxyXG5cclxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUgLmJ0biB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAwIDA7XHJcbiAgICBjb2xvcjogI2IzYjNiM1xyXG59XHJcblxyXG4ubWQtZWRpdG9yLm1kLWZ1bGxzY3JlZW4tbW9kZSAuYnRuLmFjdGl2ZSxcclxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUgLmJ0bjphY3RpdmUsXHJcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5idG46Zm9jdXMsXHJcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5idG46aG92ZXIge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGNvbG9yOiAjMzMzXHJcbn1cclxuXHJcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1mdWxsc2NyZWVuLWNvbnRyb2xzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMjBweDtcclxuICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB6LWluZGV4OiAxMDAyO1xyXG4gICAgZGlzcGxheTogYmxvY2tcclxufVxyXG5cclxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUgLm1kLWZ1bGxzY3JlZW4tY29udHJvbHMgYSB7XHJcbiAgICBjb2xvcjogI2IzYjNiMztcclxuICAgIGNsZWFyOiByaWdodDtcclxuICAgIG1hcmdpbjogMTBweDtcclxuICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyXHJcbn1cclxuXHJcbi5tZC1lZGl0b3IubWQtZnVsbHNjcmVlbi1tb2RlIC5tZC1mdWxsc2NyZWVuLWNvbnRyb2xzIGE6aG92ZXIge1xyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmVcclxufVxyXG5cclxuLm1kLWVkaXRvci5tZC1mdWxsc2NyZWVuLW1vZGUgLm1kLWVkaXRvciB7XHJcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZVxyXG59XHJcblxyXG4ubWQtZWRpdG9yIC5tZC1mdWxsc2NyZWVuLWNvbnRyb2xzIHtcclxuICAgIGRpc3BsYXk6IG5vbmVcclxufVxyXG5cclxuLm1kLW5vb3ZlcmZsb3cge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlXHJcbn0iLCJ0YWJsZS5kYXRhVGFibGUge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGUgIWltcG9ydGFudDtcclxuICAgIHRkLFxyXG4gICAgdGgge1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDtcclxuICAgICAgICAmLmRhdGFUYWJsZXNfZW1wdHkge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgID50aGVhZD50cj50aCB7XHJcbiAgICAgICAgJjplbXB0eSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLm5vd3JhcCB7XHJcblxyXG4gICAgICAgIHRoLFxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIERhdGFUYWJsZXMnIGJ1aWx0IGluIGZlYXR1cmUgZWxlbWVudHNcclxuZGl2LmRhdGFUYWJsZXNfd3JhcHBlciB7XHJcbiAgICBkaXYuZGF0YVRhYmxlc19sZW5ndGgge1xyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICB9XHJcbiAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXVpLXBhZGRpbmcteHMtdik7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS11aS1wYWRkaW5nLXhzLXYpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLXBhZGRpbmcteHMtaCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhzKTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGRpdi5kYXRhVGFibGVzX2ZpbHRlciB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBkaXYuZGF0YVRhYmxlc19pbmZvIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuICAgIGRpdi5kYXRhVGFibGVzX3BhZ2luYXRlIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgdWwucGFnaW5hdGlvbiB7XHJcbiAgICAgICAgICAgIC8vbWFyZ2luOiAycHggMDtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBkaXYuZGF0YVRhYmxlc19wcm9jZXNzaW5nIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHdpZHRoOiAyMDBweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTEwMHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yNnB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAxZW0gMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gU29ydGluZyAtIHVzaW5nIEdseXBoaWNvbnNcclxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHtcclxuICAgIC5zb3J0aW5nLFxyXG4gICAgLnNvcnRpbmdfYXNjLFxyXG4gICAgLnNvcnRpbmdfZGVzYyxcclxuICAgIC5zb3J0aW5nX2FzY19kaXNhYmxlZCxcclxuICAgIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQge1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICY6bm90KC5zb3J0aW5nLWFycm93cykge1xyXG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNvcnRpbmctYXJyb3dzIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRlY29yYXRpb24taWNvbnMpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MzlcIiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5M2FcIiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNvcnRpbmdfZGVzYyB7XHJcbiAgICAgICAgLnNvcnRpbmctYXJyb3dzIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zb3J0aW5nX2FzYyB7XHJcbiAgICAgICAgLnNvcnRpbmctYXJyb3dzIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc29ydGluZ19kaXNhYmxlZCB7XHJcbiAgICAgICAgY3Vyc29yOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLnNvcnRpbmctYXJyb3dzIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIFNjcm9sbGluZ1xyXG5kaXYuZGF0YVRhYmxlc19zY3JvbGxIZWFkIHRhYmxlLmRhdGFUYWJsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkge1xyXG4gICAgPnRhYmxlIHtcclxuICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgID50aGVhZCB7XHJcblxyXG4gICAgICAgICAgICAvLyBIaWRlIHNvcnQgaWNvbnNcclxuICAgICAgICAgICAgLnNvcnRpbmc6YWZ0ZXIsXHJcbiAgICAgICAgICAgIC5zb3J0aW5nX2FzYzphZnRlcixcclxuICAgICAgICAgICAgLnNvcnRpbmdfZGVzYzphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+dGJvZHk+dHI6Zmlyc3QtY2hpbGQ+dGgsXHJcbiAgICAgICAgPnRib2R5PnRyOmZpcnN0LWNoaWxkPnRkIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmRpdi5kYXRhVGFibGVzX3Njcm9sbEZvb3Qge1xyXG4gICAgPi5kYXRhVGFibGVzX3Njcm9sbEZvb3RJbm5lciB7XHJcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcblxyXG4gICAgICAgID50YWJsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vXHJcbi8vIEJvb3RzdHJhcCBwcm92aWRlcyBhIHJhbmdlIG9mIHN0eWxpbmcgb3B0aW9ucyBmb3IgdGFibGUncyB2aWEgY2xhc3MgbmFtZVxyXG4vLyB0aGF0IHdlIHdhbnQgdG8gZnVsbCBzdXBwb3J0LiBUaGV5IHNvbWV0aW1lcyByZXF1aXJlIHNvbWUgY3VzdG9taXNhdGlvbnNcclxuLy9cclxuLy8gQ29uZGVuc2VkXHJcbnRhYmxlLmRhdGFUYWJsZS50YWJsZS1jb25kZW5zZWQge1xyXG4gICAgPnRoZWFkPnRyPnRoIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zb3J0aW5nOmFmdGVyLFxyXG4gICAgLnNvcnRpbmdfYXNjOmFmdGVyLFxyXG4gICAgLnNvcnRpbmdfZGVzYzphZnRlciB7XHJcbiAgICAgICAgdG9wOiA2cHg7XHJcbiAgICAgICAgcmlnaHQ6IDZweDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gRnJ1c3RyYXRpbmdseSB0aGUgYm9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlIHVzZWQgYnkgQm9vdHN0cmFwIG1ha2VzIHRoZSBjb2x1bW5cclxuLy8gd2lkdGggY2FsY3VsYXRpb25zIHdoZW4gdXNpbmcgc2Nyb2xsaW5nIGltcG9zc2libGUgdG8gYWxpZ24gY29sdW1ucy4gV2UgaGF2ZVxyXG4vLyB0byB1c2UgYGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGVgXHJcbnRhYmxlLnRhYmxlLWJvcmRlcmVkLmRhdGFUYWJsZSB7XHJcblxyXG4gICAgdGgsXHJcbiAgICB0ZCB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCxcclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRib2R5IHRoLFxyXG4gICAgdGJvZHkgdGQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEJvcmRlcmVkIHRhYmxlXHJcbmRpdi5kYXRhVGFibGVzX3Njcm9sbEhlYWQgdGFibGUudGFibGUtYm9yZGVyZWQge1xyXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxufVxyXG5cclxuLy8gUmVzcG9uc2l2ZSB0YWJsZXMuIFdlIHVzZSByb3dzIGluc2lkZSB0aGUgQm9vdHN0cmFwIHJlc3BvbnNpdmUgd3JhcHBlcixcclxuLy8gc28gdGhleSBuZWVkIHRvIGhhdmUgdGhlaXIgbWFyZ2luIGFuZCBwYWRkaW5nIHJlbW92ZWRcclxuZGl2LnRhYmxlLXJlc3BvbnNpdmU+ZGl2LmRhdGFUYWJsZXNfd3JhcHBlcj5kaXYucm93IHtcclxuICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICA+ZGl2W2NsYXNzXj1cImNvbC1cIl0ge1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIlxyXG4vL1xyXG4vLyBWYXJpYWJsZXNcclxuLy9cclxuXHJcbiRjb250cm9sLWJ1dHRvbi10b3A6IDBweCAhZGVmYXVsdDtcclxuJGNvbnRyb2wtYnV0dG9uLXNpemU6IDQ0cHggIWRlZmF1bHQ7XHJcbiRjb250cm9sLWJ1dHRvbi1jb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKSAhZGVmYXVsdDtcclxuJG9wZW4tYnV0dG9uLWJhY2tncm91bmQ6IHZhcigtLXRhYmxlLWNvbnRhaW5lci1oZWFkZXItYmcpIWRlZmF1bHQ7XHJcbiRjbG9zZS1idXR0b24tYmFja2dyb3VuZDogdmFyKC0tdGFibGUtY29udGFpbmVyLWhlYWRlci1iZykhZGVmYXVsdDtcclxuXHJcblxyXG4vL1xyXG4vLyBNaXhpbnNcclxuLy9cclxuQG1peGluIGNvbnRyb2woKSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRjb2xvcjogJGNvbnRyb2wtYnV0dG9uLWNvbG9yO1xyXG5cdC8vYm9yZGVyOiAycHggc29saWQgd2hpdGU7XHJcblx0Ly9ib3JkZXItcmFkaXVzOiAxNHB4O1xyXG5cdC8vYm94LXNoYWRvdzogMCAwIDNweCAjNDQ0O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ly8gVXNlIENvdXJpZXIgTmV3IGJlY2F1c2UgaXQgaXMgY29tbW9uIGFuZCBjb25zaXN0ZW50XHJcblx0XHJcblx0Ly9saW5lLWhlaWdodDogMTRweDtcclxuXHQmOmJlZm9yZXtcclxuXHRcdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCk7XHJcblx0XHRmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gY29udHJvbC1vcGVuKCkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRvcGVuLWJ1dHRvbi1iYWNrZ3JvdW5kO1xyXG5cdCY6YmVmb3Jle1xyXG5cdFx0Y29udGVudDogXCJcXGU5MzFcIjtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBjb250cm9sLWNsb3NlKCkge1xyXG5cdCY6YmVmb3Jle1xyXG5cdFx0Y29udGVudDogXCJcXGU5MmNcIjtcclxuXHR9XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGNsb3NlLWJ1dHRvbi1iYWNrZ3JvdW5kIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIFRhYmxlIHN0eWxlc1xyXG4vL1xyXG50YWJsZS5kYXRhVGFibGUge1xyXG5cdC8vIFN0eWxpbmcgZm9yIHRoZSBgaW5saW5lYCB0eXBlXHJcblx0Ji5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5IHtcclxuXHRcdD4gdHIge1xyXG5cdFx0XHQ+IHRkLmNoaWxkLFxyXG5cdFx0XHQ+IHRoLmNoaWxkLFxyXG5cdFx0XHQ+IHRkLmRhdGFUYWJsZXNfZW1wdHkge1xyXG5cdFx0XHRcdGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdFx0PiB0ZC5jaGlsZCxcclxuXHRcdFx0PiB0aC5jaGlsZHtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0Ym9yZGVyOiAwO1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDogNjBweDtcclxuXHRcdFx0XHR1bHtcclxuXHRcdFx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0XHRjb250ZW50OicnO1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRvcGVuLWJ1dHRvbi1iYWNrZ3JvdW5kO1xyXG5cdFx0XHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgbHRyIHtcclxuXHRcdFx0XHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIHJ0bCB7XHJcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0d2lkdGg6ICRjb250cm9sLWJ1dHRvbi1zaXplO1xyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0bGl7XHJcblx0XHRcdFx0XHRcdGJvcmRlcjogMDtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0PiB0cltyb2xlPVwicm93XCJdID4gdGQ6Zmlyc3QtY2hpbGQsXHJcblx0XHQ+IHRyW3JvbGU9XCJyb3dcIl0gPiB0aDpmaXJzdC1jaGlsZCB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0QGluY2x1ZGUgbHRyIHtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDYwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgcnRsIHtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiA2MHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdFx0LmJ0bi10YWJsZS1jb2xsYXBzZXtcclxuXHRcdFx0XHR0b3A6ICRjb250cm9sLWJ1dHRvbi10b3AhaW1wb3J0YW50O1xyXG5cdFx0XHRcdEBpbmNsdWRlIGx0ciB7XHJcblx0XHRcdFx0XHRsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuXHRcdFx0XHRcdHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRib3JkZXI6IDA7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdFx0d2lkdGg6ICRjb250cm9sLWJ1dHRvbi1zaXplO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGNvbnRyb2w7XHJcblx0XHRcdFx0QGluY2x1ZGUgY29udHJvbC1vcGVuO1xyXG5cdFx0XHR9XHJcbiAgICAgICAgICAgIC5wcm9kdWN0LWdyYXBoaWMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cdFx0fVxyXG5cclxuXHRcdD4gdHIucGFyZW50IHtcclxuXHRcdFx0PiB0ZDpmaXJzdC1jaGlsZCxcclxuXHRcdFx0PiB0aDpmaXJzdC1jaGlsZCB7XHJcblx0XHRcdFx0LmJ0bi10YWJsZS1jb2xsYXBzZXtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIGNvbnRyb2wtY2xvc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyBEYXRhVGFibGVzJyBgY29tcGFjdGAgc3R5bGluZ1xyXG5cdC8vICYuZHRyLWlubGluZS5jb2xsYXBzZWQuY29tcGFjdCA+IHRib2R5IHtcclxuXHQvLyBcdD4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcclxuXHQvLyBcdD4gdHIgPiB0aDpmaXJzdC1jaGlsZCB7XHJcblx0Ly8gXHRcdHBhZGRpbmctbGVmdDogNDRweDtcclxuXHJcblx0Ly8gXHRcdCY6YmVmb3JlIHtcclxuXHQvLyBcdFx0XHR0b3A6IDA7XHJcblx0Ly8gXHRcdFx0bGVmdDogMDtcclxuXHQvLyBcdFx0XHRib3R0b206IDA7XHJcblx0Ly8gXHRcdFx0d2lkdGg6IDQ0cHg7XHJcblx0Ly8gXHRcdH1cclxuXHQvLyBcdH1cclxuXHQvLyB9XHJcblxyXG5cclxuXHQvLyBTdHlsaW5nIGZvciB0aGUgYGNvbHVtbmAgdHlwZVxyXG5cdCYuZHRyLWNvbHVtbiA+IHRib2R5IHtcclxuXHRcdD4gdHIgPiB0ZC5jb250cm9sLFxyXG5cdFx0PiB0ciA+IHRoLmNvbnRyb2wge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0aGVpZ2h0OiAxNnB4O1xyXG5cdFx0XHRcdHdpZHRoOiAxNnB4O1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IC0xMHB4O1xyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuXHRcdFx0XHRAaW5jbHVkZSBjb250cm9sO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGNvbnRyb2wtb3BlbjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdD4gdHIucGFyZW50IHtcclxuXHRcdFx0dGQuY29udHJvbDpiZWZvcmUsXHJcblx0XHRcdHRoLmNvbnRyb2w6YmVmb3JlIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBjb250cm9sLWNsb3NlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvLyBDaGlsZCByb3cgc3R5bGluZ1xyXG5cdD4gdGJvZHkgPiB0ci5jaGlsZCB7XHJcblx0XHRwYWRkaW5nOiAwLjVlbSAxZW07XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblxyXG5cdFx0dWwuZHRyLWRldGFpbHMge1xyXG5cclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0cGFkZGluZzogMDtcclxuXHJcblx0XHRcdD4gbGkge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRcdC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmVmZWY7XHJcblx0XHRcdFx0Ly9wYWRkaW5nOiAwLjVlbSAwO1xyXG5cclxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAwO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0c3Bhbi5kdHItdGl0bGUge1xyXG5cdFx0XHRtaW4td2lkdGg6IGF1dG87XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0QGluY2x1ZGUgbHRyIHtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpbmNsdWRlIHJ0bCB7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG5cdFx0XHR9XHJcblx0XHRcdGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG5cdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0XHQmOmFmdGVye1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICc6JyxcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdHNwYW4uZHRyLWRhdGEge1xyXG5cdFx0XHRicntcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uYnRuLXRhYmxlLWNvbGxhcHNle1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbmRpdi5kdHItbW9kYWwge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHJcblx0ei1pbmRleDogMTAwO1xyXG5cdHBhZGRpbmc6IDEwZW0gMWVtO1xyXG5cclxuXHRkaXYuZHRyLW1vZGFsLWRpc3BsYXkge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHRcdGhlaWdodDogNTAlO1xyXG5cdFx0b3ZlcmZsb3c6IGF1dG87XHJcblx0XHRtYXJnaW46IGF1dG87XHJcblx0XHR6LWluZGV4OiAxMDI7XHJcblx0XHRvdmVyZmxvdzogYXV0bztcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmNWY1Zjc7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcclxuXHRcdGJvcmRlci1yYWRpdXM6IDAuNWVtO1xyXG5cdFx0Ym94LXNoYWRvdzogMCAxMnB4IDMwcHggcmdiYSgwLDAsMCwwLjYpO1xyXG5cdH1cclxuXHJcblx0ZGl2LmR0ci1tb2RhbC1jb250ZW50IHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHBhZGRpbmc6IDFlbTtcclxuXHR9XHJcblxyXG5cdGRpdi5kdHItbW9kYWwtY2xvc2Uge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiA2cHg7XHJcblx0XHRyaWdodDogNnB4O1xyXG5cdFx0d2lkdGg6IDIycHg7XHJcblx0XHRoZWlnaHQ6IDIycHg7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdHotaW5kZXg6IDEyO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0ZGl2LmR0ci1tb2RhbC1iYWNrZ3JvdW5kIHtcclxuXHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdHotaW5kZXg6IDEwMTtcclxuXHJcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNik7XHJcblx0fVxyXG59XHJcblxyXG50YWJsZXtcclxuXHQmLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGhlYWQgPiB0ciA+IHRoIHtcclxuXHRcdCY6Zmlyc3QtY2hpbGR7XHJcblx0XHRcdEBpbmNsdWRlIGx0ciB7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiA2MHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgcnRsIHtcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdFx0LmJ0bi10YWJsZS1jb2xsYXBzZXtcclxuXHRcdFx0XHR0b3A6IDAgIWltcG9ydGFudDtcclxuXHRcdFx0XHRAaW5jbHVkZSBsdHIge1xyXG5cdFx0XHRcdFx0bGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcblx0XHRcdFx0XHRyaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0Ym9yZGVyOiAwO1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdHdpZHRoOiA0NHB4O1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0Y29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdHRleHQtaW5kZW50OiAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0b3V0bGluZTogbm9uZTtcclxuXHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y2ZjdmODtcclxuXHRcdFx0XHRAaW5jbHVkZSBjb250cm9sO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGNvbnRyb2wtb3BlbjtcclxuXHRcdFx0XHQmLmV4cGFuZGVke1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgY29udHJvbC1jbG9zZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdFxyXG5cdFx0XHQuY2hlY2tib3gtc3R5bGVke1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogLTFweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoc20pIHtcclxuXHRkaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtZGlzcGxheSB7XHJcblx0XHR3aWR0aDogOTUlO1xyXG5cdH1cclxufSIsIiRmbGFnSGVpZ2h0OiAxNXB4ICFkZWZhdWx0O1xyXG4kZmxhZ1dpZHRoOiAyMHB4ICFkZWZhdWx0O1xyXG4kZmxhZ1BhZGRpbmc6IDhweCAhZGVmYXVsdDtcclxuJGJvcmRlcldpZHRoOiAxcHggIWRlZmF1bHQ7XHJcbiRhcnJvd0hlaWdodDogNHB4ICFkZWZhdWx0O1xyXG4kYXJyb3dXaWR0aDogNnB4ICFkZWZhdWx0O1xyXG4kdHJpYW5nbGVCb3JkZXI6IDNweCAhZGVmYXVsdDtcclxuJGFycm93UGFkZGluZzogNnB4ICFkZWZhdWx0O1xyXG4kYXJyb3dDb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcikgIWRlZmF1bHQ7XHJcbiRpbnB1dFBhZGRpbmc6IDZweCAhZGVmYXVsdDtcclxuJHNlbGVjdGVkRmxhZ1dpZHRoOiAkZmxhZ1dpZHRoICsgKDIgKiAkZmxhZ1BhZGRpbmcpICFkZWZhdWx0O1xyXG4kc2VsZWN0ZWRGbGFnQXJyb3dXaWR0aDogJGZsYWdXaWR0aCArICRmbGFnUGFkZGluZyArICRhcnJvd1dpZHRoICsgKDIgKiAkYXJyb3dQYWRkaW5nKSAhZGVmYXVsdDtcclxuJHNlbGVjdGVkRmxhZ0RpYWxDb2RlV2lkdGg6ICRzZWxlY3RlZEZsYWdXaWR0aCArICRmbGFnUGFkZGluZyAhZGVmYXVsdDtcclxuJHNlbGVjdGVkRmxhZ0Fycm93RGlhbENvZGVXaWR0aDogJHNlbGVjdGVkRmxhZ0Fycm93V2lkdGggKyAkZmxhZ1BhZGRpbmcgIWRlZmF1bHQ7XHJcblxyXG4kZmxhZ3NJbWFnZVBhdGg6IFwiLi4vaW1nL1wiICFkZWZhdWx0O1xyXG4kZmxhZ3NJbWFnZU5hbWU6IFwiZmxhZ3NcIiAhZGVmYXVsdDtcclxuJGZsYWdzSW1hZ2VFeHRlbnNpb246IFwicG5nXCIgIWRlZmF1bHQ7XHJcbiRtb2JpbGVQb3B1cE1hcmdpbjogMzBweDtcclxuXHJcbi5pbnRsLXRlbC1pbnB1dCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICoge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB9XHJcblxyXG4gIC5oaWRlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIC8vIG5lZWQgdGhpcyBkdXJpbmcgaW5pdCwgdG8gZ2V0IHRoZSBoZWlnaHQgb2YgdGhlIGRyb3Bkb3duXHJcbiAgLnYtaGlkZSB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAvLyBzcGVjaWZ5IHR5cGVzIHRvIGluY3JlYXNlIHNwZWNpZmljaXR5IGUuZy4gdG8gb3ZlcnJpZGUgYm9vdHN0cmFwIHYyLjNcclxuICBpbnB1dCwgaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT10ZWxdIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8vIGlucHV0IGlzIGJvdHRvbSBsZXZlbCwgYmVsb3cgc2VsZWN0ZWQgZmxhZyBhbmQgZHJvcGRvd25cclxuICAgIHotaW5kZXg6IDA7XHJcblxyXG4gICAgLy8gYW55IHZlcnRpY2FsIG1hcmdpbiB0aGUgdXNlciBoYXMgb24gdGhlaXIgaW5wdXRzIHdvdWxkIG5vIGxvbmdlciB3b3JrIGFzIGV4cGVjdGVkXHJcbiAgICAvLyBiZWNhdXNlIHdlIHdyYXAgZXZlcnl0aGluZyBpbiBhIGNvbnRhaW5lciBkaXYuIGkganVzdGlmeSB0aGUgdXNlIG9mICFpbXBvcnRhbnRcclxuICAgIC8vIGhlcmUgYmVjYXVzZSBpIGRvbid0IHRoaW5rIHRoZSB1c2VyIHNob3VsZCBldmVyIGhhdmUgdmVydGljYWwgbWFyZ2luIGhlcmUgLSB3aGVuXHJcbiAgICAvLyB0aGUgaW5wdXQgaXMgd3JhcHBlZCBpbiBhIGNvbnRhaW5lciwgdmVydGljYWwgbWFyZ2luIG1lc3NlcyB1cCBhbGlnbm1lbnQgd2l0aCBvdGhlclxyXG4gICAgLy8gaW5saW5lIGVsZW1lbnRzIChlLmcuIGFuIGFkamFjZW50IGJ1dHRvbikgaW4gZmlyZWZveCwgYW5kIHByb2JhYmx5IG90aGVyIGJyb3dzZXJzLlxyXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgIC8vIG1ha2Ugc3BhY2UgZm9yIHRoZSBzZWxlY3RlZCBmbGFnXHJcbiAgICAvLyBOb3RlOiBubyAhaW1wb3J0YW50IGhlcmUsIGFzIHRoZSB1c2VyIG1heSB3YW50IHRvIHR3ZWFrIHRoaXMgc28gdGhhdCB0aGVcclxuICAgIC8vIHBlcmNlaXZlZCBpbnB1dCBwYWRkaW5nIG1hdGNoZXMgdGhlaXIgZXhpc3Rpbmcgc3R5bGVzXHJcbiAgICBwYWRkaW5nLWxlZnQ6IDEwNnB4O1xyXG5cclxuICAgIC8vIGFueSBtYXJnaW4tcmlnaHQgaGVyZSB3aWxsIHB1c2ggdGhlIHNlbGVjdGVkLWZsYWcgYXdheVxyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmZsYWctY29udGFpbmVyIHtcclxuICAgIC8vIHBvc2l0aW9uZWQgb3ZlciB0aGUgdG9wIG9mIHRoZSBpbnB1dFxyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLy8gZnVsbCBoZWlnaHRcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgLy8gcHJldmVudCB0aGUgaGlnaGxpZ2h0ZWQgY2hpbGQgZnJvbSBvdmVybGFwcGluZyB0aGUgaW5wdXQgYm9yZGVyXHJcbiAgICBwYWRkaW5nOiAkYm9yZGVyV2lkdGg7XHJcbiAgfVxyXG5cclxuICAuc2VsZWN0ZWQtZmxhZyB7XHJcbiAgICAvLyByZW5kZXIgYWJvdmUgdGhlIGlucHV0XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDk0cHg7XHJcbiAgICAvLyB0aGlzIG11c3QgYmUgZnVsbC1oZWlnaHQgYm90aCBmb3IgdGhlIGhvdmVyIGhpZ2hsaWdodCwgYW5kIHRvIHB1c2ggZG93biB0aGVcclxuICAgIC8vIGRyb3Bkb3duIHNvIGl0IGFwcGVhcnMgYmVsb3cgdGhlIGlucHV0XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZzogMCAyMHB4IDAgMTJweDtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlcik7XHJcbiAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgIC5pdGktYXJyb3d7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyB2ZXJ0aWNhbGx5IGNlbnRlciB0aGUgZmxhZ1xyXG4gICAgLml0aS1mbGFnIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaXRpLWFycm93IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAvLyBzcGxpdCB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBmbGFnIGFuZCB0aGUgYXJyb3cgaGVpZ2h0IHRvIHZlcmljYWxseSBjZW50ZXJcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhcnJvd0hlaWdodCAvIDIpO1xyXG4gICAgICByaWdodDogMTJweDtcclxuXHJcbiAgICAgIC8vIGNzcyB0cmlhbmdsZVxyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICBib3JkZXItbGVmdDogJHRyaWFuZ2xlQm9yZGVyIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItcmlnaHQ6ICR0cmlhbmdsZUJvcmRlciBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLXRvcDogJGFycm93SGVpZ2h0IHNvbGlkICRhcnJvd0NvbG9yO1xyXG5cclxuICAgICAgJi51cCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAkYXJyb3dIZWlnaHQgc29saWQgJGFycm93Q29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIHRoZSBkcm9wZG93blxyXG4gIC5jb3VudHJ5LWxpc3Qge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLy9jaGFuZ2UgZm9yIHNhbWUgd2lkdGggYXMgZm9ybVxyXG4gICAgbGVmdDogMXB4O1xyXG4gICAgcmlnaHQ6IDFweDtcclxuICAgIC8vIHBvcHVwIHNvIHJlbmRlciBhYm92ZSBldmVyeXRoaW5nIGVsc2VcclxuICAgIHotaW5kZXg6IDI7XHJcblxyXG4gICAgLy8gb3ZlcnJpZGUgZGVmYXVsdCBsaXN0IHN0eWxlc1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIC8vIGluIGNhc2UgYW55IGNvbnRhaW5lciBoYXMgdGV4dC1hbGlnbjpjZW50ZXJcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgLy9ydGwgZHJvcGRvd24gdG8gcmlnaHRcclxuICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBwbGFjZSBtZW51IGFib3ZlIHRoZSBpbnB1dCBlbGVtZW50XHJcbiAgICAmLmRyb3B1cCB7XHJcbiAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogKC0kYm9yZGVyV2lkdGgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGRyb3Bkb3duIGZsYWdzIG5lZWQgY29uc2lzdGVudCB3aWR0aCwgc28gd3JhcCBpbiBhIGNvbnRhaW5lclxyXG4gICAgLmZsYWctYm94IHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB3aWR0aDogJGZsYWdXaWR0aDtcclxuICAgIH1cclxuXHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgLy8gbWFyZ2luLWxlZnQgdG8gY29tcGVuc2F0ZSBmb3IgdGhlIHBhZGRpbmcgb24gdGhlIHBhcmVudFxyXG4gICAgbWFyZ2luOiAwIDAgMCAoLSRib3JkZXJXaWR0aCk7XHJcblxyXG4gICAgYm94LXNoYWRvdzogMXB4IDFweCA0cHggcmdiYSgwLDAsMCwwLjIpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xyXG4gICAgYm9yZGVyOiAkYm9yZGVyV2lkdGggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyKTtcclxuXHJcbiAgICAvLyBkb24ndCBsZXQgdGhlIGNvbnRlbnRzIHdyYXAgQUtBIHRoZSBjb250YWluZXIgd2lsbCBiZSBhcyB3aWRlIGFzIHRoZSBjb250ZW50c1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIC8vIGV4Y2VwdCBvbiBzbWFsbCBzY3JlZW5zLCB3aGVyZSB3ZSBmb3JjZSB0aGUgZHJvcGRvd24gd2lkdGggdG8gbWF0Y2ggdGhlIGlucHV0XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgIH1cclxuXHJcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuXHJcbiAgICAvLyB0aGUgZGl2aWRlciBiZWxvdyB0aGUgcHJlZmVycmVkIGNvdW50cmllc1xyXG4gICAgLmRpdmlkZXIge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgIGJvcmRlci1ib3R0b206ICRib3JkZXJXaWR0aCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGVhY2ggY291bnRyeSBpdGVtIGluIGRyb3Bkb3duICh3ZSBtdXN0IGhhdmUgc2VwYXJhdGUgY2xhc3MgdG8gZGlmZmVyZW50aWF0ZSBmcm9tIGRpdmlkZXJzKVxyXG4gICAgLmNvdW50cnkge1xyXG4gICAgICAvLyBOb3RlOiBkZWNpZGVkIG5vdCB0byB1c2UgbGluZS1oZWlnaHQgaGVyZSBmb3IgYWxpZ25tZW50IGJlY2F1c2UgaXQgY2F1c2VzIGlzc3VlcyBlLmcuIGxhcmdlIGZvbnQtc2l6ZXMgd2lsbCBvdmVybGFwLCBhbmQgYWxzbyBsb29rcyBiYWQgaWYgb25lIGNvdW50cnkgb3ZlcmZsb3dzIG9udG8gMiBsaW5lc1xyXG4gICAgICBwYWRkaW5nOiA5cHggMTJweCA3cHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIC8vIHRoZSBkaWFsIGNvZGVzIGFmdGVyIHRoZSBjb3VudHJ5IG5hbWVzIGFyZSBncmV5ZWQgb3V0XHJcbiAgICAgIC5kaWFsLWNvZGUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpIDtcclxuICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICBkaXJlY3Rpb246IGx0cjtcclxuICAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLmFjdGl2ZXtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvdW50cnkuaGlnaGxpZ2h0IHtcclxuICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktbmF2LWxpbmstYWN0aXZlLWJnKTtcclxuICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAvLyBzcGFjaW5nIGJldHdlZW4gY291bnRyeSBmbGFnLCBuYW1lIGFuZCBkaWFsIGNvZGVcclxuICAgIC5mbGFnLWJveCwgLmNvdW50cnktbmFtZSwgLmRpYWwtY29kZSB7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcbiAgICAuZmxhZy1ib3gsIC5jb3VudHJ5LW5hbWUge1xyXG4gICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuY291bnRyeS1uYW1le1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuYWxsb3ctZHJvcGRvd24sICYuc2VwYXJhdGUtZGlhbC1jb2RlIHtcclxuICAgIC5mbGFnLWNvbnRhaW5lciB7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgLnNlbGVjdGVkLWZsYWd7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmFsbG93LWRyb3Bkb3duIHtcclxuICAgIC8vIGhvdmVyIHN0YXRlIC0gc2hvdyBmbGFnIGlzIGNsaWNrYWJsZVxyXG4gICAgLmZsYWctY29udGFpbmVyOmhvdmVyIHtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAuc2VsZWN0ZWQtZmxhZyB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgLml0aS1hcnJvd3tcclxuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGRpc2FibGUgaG92ZXIgc3RhdGUgd2hlbiBpbnB1dCBpcyBkaXNhYmxlZFxyXG4gICAgaW5wdXRbZGlzYWJsZWRdICsgLmZsYWctY29udGFpbmVyOmhvdmVyLCBpbnB1dFtyZWFkb25seV0gKyAuZmxhZy1jb250YWluZXI6aG92ZXIge1xyXG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgIC5zZWxlY3RlZC1mbGFnIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5zZXBhcmF0ZS1kaWFsLWNvZGUge1xyXG4gICAgLnNlbGVjdGVkLWZsYWcge1xyXG4gICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIH1cclxuICAgIC5zZWxlY3RlZC1kaWFsLWNvZGUge1xyXG4gICAgICAvLyBmb3IgdmVydGljYWwgY2VudGVyaW5nXHJcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAzcHg7XHJcbiAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcclxuICAgICAgICBkaXJlY3Rpb246IGx0cjsgIFxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLml0aS1zZGMgaXMgZm9yIFNlcGFyYXRlIERpYWwgQ29kZSwgd2l0aCBsZW5ndGhzIGZyb20gMi01IGJlY2F1c2Ugc2hvcnRlc3QgaXMgXCIrMVwiLCBsb25nZXN0IGlzIFwiKzE2ODRcIlxyXG4gICAgJGNoYXJMZW5ndGg6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgLy8gQGZvciAkaSBmcm9tIDIgdGhyb3VnaCA1IHtcclxuICAgIC8vICAgJi5pdGktc2RjLSN7JGl9IHtcclxuICAgIC8vICAgICBpbnB1dCwgaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT10ZWxdIHtcclxuICAgIC8vICAgICAgIHBhZGRpbmctbGVmdDogJHNlbGVjdGVkRmxhZ0RpYWxDb2RlV2lkdGggKyAkaW5wdXRQYWRkaW5nICsgKCRpICogJGNoYXJMZW5ndGgpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICAuc2VsZWN0ZWQtZmxhZyB7XHJcbiAgICAvLyAgICAgICB3aWR0aDogJHNlbGVjdGVkRmxhZ0RpYWxDb2RlV2lkdGggKyAoJGkgKiAkY2hhckxlbmd0aCk7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICB9XHJcbiAgICAvLyAgICYuYWxsb3ctZHJvcGRvd24uaXRpLXNkYy0jeyRpfSB7XHJcbiAgICAvLyAgICAgaW5wdXQsIGlucHV0W3R5cGU9dGV4dF0sIGlucHV0W3R5cGU9dGVsXSB7XHJcbiAgICAvLyAgICAgICBwYWRkaW5nLWxlZnQ6ICRzZWxlY3RlZEZsYWdBcnJvd0RpYWxDb2RlV2lkdGggKyAkaW5wdXRQYWRkaW5nICsgKCRpICogJGNoYXJMZW5ndGgpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICAuc2VsZWN0ZWQtZmxhZyB7XHJcbiAgICAvLyAgICAgICB3aWR0aDogJHNlbGVjdGVkRmxhZ0Fycm93RGlhbENvZGVXaWR0aCArICgkaSAqICRjaGFyTGVuZ3RoKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgIH1cclxuICAgIC8vIH1cclxuICB9XHJcblxyXG4gIC8vIGlmIGRyb3Bkb3duQ29udGFpbmVyIG9wdGlvbiBpcyBzZXQsIGluY3JlYXNlIHotaW5kZXggdG8gcHJldmVudCBkaXNwbGF5IGlzc3Vlc1xyXG4gICYuaXRpLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IC0xMDAwcHg7XHJcbiAgICBsZWZ0OiAtMTAwMHB4O1xyXG4gICAgLy8gaGlnaGVyIHRoYW4gZGVmYXVsdCBCb290c3RyYXAgbW9kYWwgei1pbmRleCBvZiAxMDUwXHJcbiAgICB6LWluZGV4OiAxMDYwO1xyXG4gICAgLy8gdG8ga2VlcCBzdHlsaW5nIGNvbnNpc3RlbnQgd2l0aCAuZmxhZy1jb250YWluZXJcclxuICAgIHBhZGRpbmc6ICRib3JkZXJXaWR0aDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBvdmVycmlkZXMgZm9yIG1vYmlsZSBwb3B1cFxyXG4uaXRpLW1vYmlsZSAuaW50bC10ZWwtaW5wdXQge1xyXG4gICYuaXRpLWNvbnRhaW5lciB7XHJcbiAgICB0b3A6ICRtb2JpbGVQb3B1cE1hcmdpbjtcclxuICAgIGJvdHRvbTogJG1vYmlsZVBvcHVwTWFyZ2luO1xyXG4gICAgbGVmdDogJG1vYmlsZVBvcHVwTWFyZ2luO1xyXG4gICAgcmlnaHQ6ICRtb2JpbGVQb3B1cE1hcmdpbjtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICB9XHJcbiAgLmNvdW50cnktbGlzdCB7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAuY291bnRyeSB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcclxuICAgICAgLy8gaW5jcmVhc2UgbGluZSBoZWlnaHQgYmVjYXVzZSBkcm9wZG93biBjb3B5IGlzIHYgbGlrZWx5IHRvIG92ZXJmbG93IG9uIG1vYmlsZSBhbmQgd2hlbiBpdCBkb2VzIGl0IG5lZWRzIHRvIGJlIHdlbGwgc3BhY2VkXHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJzcHJpdGUuc2Nzc1wiO1xyXG5cclxuLml0aS1mbGFnIHtcclxuICB3aWR0aDogJGZsYWdXaWR0aDtcclxuICBoZWlnaHQ6ICRmbGFnSGVpZ2h0O1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMXB4IDBweCAjODg4O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGZsYWdzSW1hZ2VQYXRofSN7JGZsYWdzSW1hZ2VOYW1lfS4jeyRmbGFnc0ltYWdlRXh0ZW5zaW9ufVwiKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIC8vIGVtcHR5IHN0YXRlXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RCREJEQjtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZmxhZ1dpZHRoIDA7XHJcblxyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyIC8gMSksIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRmbGFnc0ltYWdlUGF0aH0jeyRmbGFnc0ltYWdlTmFtZX1AMnguI3skZmxhZ3NJbWFnZUV4dGVuc2lvbn1cIik7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8vIGhhY2sgZm9yIE5lcGFsIHdoaWNoIGlzIHRoZSBvbmx5IGZsYWcgdGhhdCBpcyBub3Qgc3F1YXJlL3JlY3RhbmdsZSwgc28gaXQgaGFzIHRyYW5zcGFyZW5jeSwgc28geW91IGNhbiBzZWUgdGhlIGRlZmF1bHQgZ3JleSBiZWhpbmQgaXRcclxuLml0aS1mbGFnLm5wIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG4iLCJAZnVuY3Rpb24gcmV0aW5hLXNpemUoJHZhbHVlKSB7XHJcbiAgQHJldHVybiAkdmFsdWUgLyAyO1xyXG59XHJcblxyXG5AbWl4aW4gcmV0aW5hLWJnLXNpemUoJHNwcml0ZVdpZHRoLCAkc3ByaXRlSGVpZ2h0KSB7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAoJHNwcml0ZVdpZHRoIC8gMikgKCRzcHJpdGVIZWlnaHQgLyAyKTtcclxufVxyXG5cclxuLml0aS1mbGFnIHtcclxuICAkaXRlbS13aWR0aC1tYXBzOiAoYWM6IDIwcHgsIGFkOiAyMHB4LCBhZTogMjBweCwgYWY6IDIwcHgsIGFnOiAyMHB4LCBhaTogMjBweCwgYWw6IDIwcHgsIGFtOiAyMHB4LCBhbzogMjBweCwgYXE6IDIwcHgsIGFyOiAyMHB4LCBhczogMjBweCwgYXQ6IDIwcHgsIGF1OiAyMHB4LCBhdzogMjBweCwgYXg6IDIwcHgsIGF6OiAyMHB4LCBiYTogMjBweCwgYmI6IDIwcHgsIGJkOiAyMHB4LCBiZTogMThweCwgYmY6IDIwcHgsIGJnOiAyMHB4LCBiaDogMjBweCwgYmk6IDIwcHgsIGJqOiAyMHB4LCBibDogMjBweCwgYm06IDIwcHgsIGJuOiAyMHB4LCBibzogMjBweCwgYnE6IDIwcHgsIGJyOiAyMHB4LCBiczogMjBweCwgYnQ6IDIwcHgsIGJ2OiAyMHB4LCBidzogMjBweCwgYnk6IDIwcHgsIGJ6OiAyMHB4LCBjYTogMjBweCwgY2M6IDIwcHgsIGNkOiAyMHB4LCBjZjogMjBweCwgY2c6IDIwcHgsIGNoOiAxNXB4LCBjaTogMjBweCwgY2s6IDIwcHgsIGNsOiAyMHB4LCBjbTogMjBweCwgY246IDIwcHgsIGNvOiAyMHB4LCBjcDogMjBweCwgY3I6IDIwcHgsIGN1OiAyMHB4LCBjdjogMjBweCwgY3c6IDIwcHgsIGN4OiAyMHB4LCBjeTogMjBweCwgY3o6IDIwcHgsIGRlOiAyMHB4LCBkZzogMjBweCwgZGo6IDIwcHgsIGRrOiAyMHB4LCBkbTogMjBweCwgZG86IDIwcHgsIGR6OiAyMHB4LCBlYTogMjBweCwgZWM6IDIwcHgsIGVlOiAyMHB4LCBlZzogMjBweCwgZWg6IDIwcHgsIGVyOiAyMHB4LCBlczogMjBweCwgZXQ6IDIwcHgsIGV1OiAyMHB4LCBmaTogMjBweCwgZmo6IDIwcHgsIGZrOiAyMHB4LCBmbTogMjBweCwgZm86IDIwcHgsIGZyOiAyMHB4LCBnYTogMjBweCwgZ2I6IDIwcHgsIGdkOiAyMHB4LCBnZTogMjBweCwgZ2Y6IDIwcHgsIGdnOiAyMHB4LCBnaDogMjBweCwgZ2k6IDIwcHgsIGdsOiAyMHB4LCBnbTogMjBweCwgZ246IDIwcHgsIGdwOiAyMHB4LCBncTogMjBweCwgZ3I6IDIwcHgsIGdzOiAyMHB4LCBndDogMjBweCwgZ3U6IDIwcHgsIGd3OiAyMHB4LCBneTogMjBweCwgaGs6IDIwcHgsIGhtOiAyMHB4LCBobjogMjBweCwgaHI6IDIwcHgsIGh0OiAyMHB4LCBodTogMjBweCwgaWM6IDIwcHgsIGlkOiAyMHB4LCBpZTogMjBweCwgaWw6IDIwcHgsIGltOiAyMHB4LCBpbjogMjBweCwgaW86IDIwcHgsIGlxOiAyMHB4LCBpcjogMjBweCwgaXM6IDIwcHgsIGl0OiAyMHB4LCBqZTogMjBweCwgam06IDIwcHgsIGpvOiAyMHB4LCBqcDogMjBweCwga2U6IDIwcHgsIGtnOiAyMHB4LCBraDogMjBweCwga2k6IDIwcHgsIGttOiAyMHB4LCBrbjogMjBweCwga3A6IDIwcHgsIGtyOiAyMHB4LCBrdzogMjBweCwga3k6IDIwcHgsIGt6OiAyMHB4LCBsYTogMjBweCwgbGI6IDIwcHgsIGxjOiAyMHB4LCBsaTogMjBweCwgbGs6IDIwcHgsIGxyOiAyMHB4LCBsczogMjBweCwgbHQ6IDIwcHgsIGx1OiAyMHB4LCBsdjogMjBweCwgbHk6IDIwcHgsIG1hOiAyMHB4LCBtYzogMTlweCwgbWQ6IDIwcHgsIG1lOiAyMHB4LCBtZjogMjBweCwgbWc6IDIwcHgsIG1oOiAyMHB4LCBtazogMjBweCwgbWw6IDIwcHgsIG1tOiAyMHB4LCBtbjogMjBweCwgbW86IDIwcHgsIG1wOiAyMHB4LCBtcTogMjBweCwgbXI6IDIwcHgsIG1zOiAyMHB4LCBtdDogMjBweCwgbXU6IDIwcHgsIG12OiAyMHB4LCBtdzogMjBweCwgbXg6IDIwcHgsIG15OiAyMHB4LCBtejogMjBweCwgbmE6IDIwcHgsIG5jOiAyMHB4LCBuZTogMThweCwgbmY6IDIwcHgsIG5nOiAyMHB4LCBuaTogMjBweCwgbmw6IDIwcHgsIG5vOiAyMHB4LCBucDogMTNweCwgbnI6IDIwcHgsIG51OiAyMHB4LCBuejogMjBweCwgb206IDIwcHgsIHBhOiAyMHB4LCBwZTogMjBweCwgcGY6IDIwcHgsIHBnOiAyMHB4LCBwaDogMjBweCwgcGs6IDIwcHgsIHBsOiAyMHB4LCBwbTogMjBweCwgcG46IDIwcHgsIHByOiAyMHB4LCBwczogMjBweCwgcHQ6IDIwcHgsIHB3OiAyMHB4LCBweTogMjBweCwgcWE6IDIwcHgsIHJlOiAyMHB4LCBybzogMjBweCwgcnM6IDIwcHgsIHJ1OiAyMHB4LCBydzogMjBweCwgc2E6IDIwcHgsIHNiOiAyMHB4LCBzYzogMjBweCwgc2Q6IDIwcHgsIHNlOiAyMHB4LCBzZzogMjBweCwgc2g6IDIwcHgsIHNpOiAyMHB4LCBzajogMjBweCwgc2s6IDIwcHgsIHNsOiAyMHB4LCBzbTogMjBweCwgc246IDIwcHgsIHNvOiAyMHB4LCBzcjogMjBweCwgc3M6IDIwcHgsIHN0OiAyMHB4LCBzdjogMjBweCwgc3g6IDIwcHgsIHN5OiAyMHB4LCBzejogMjBweCwgdGE6IDIwcHgsIHRjOiAyMHB4LCB0ZDogMjBweCwgdGY6IDIwcHgsIHRnOiAyMHB4LCB0aDogMjBweCwgdGo6IDIwcHgsIHRrOiAyMHB4LCB0bDogMjBweCwgdG06IDIwcHgsIHRuOiAyMHB4LCB0bzogMjBweCwgdHI6IDIwcHgsIHR0OiAyMHB4LCB0djogMjBweCwgdHc6IDIwcHgsIHR6OiAyMHB4LCB1YTogMjBweCwgdWc6IDIwcHgsIHVtOiAyMHB4LCB1czogMjBweCwgdXk6IDIwcHgsIHV6OiAyMHB4LCB2YTogMTVweCwgdmM6IDIwcHgsIHZlOiAyMHB4LCB2ZzogMjBweCwgdmk6IDIwcHgsIHZuOiAyMHB4LCB2dTogMjBweCwgd2Y6IDIwcHgsIHdzOiAyMHB4LCB4azogMjBweCwgeWU6IDIwcHgsIHl0OiAyMHB4LCB6YTogMjBweCwgem06IDIwcHgsIHp3OiAyMHB4LCApO1xyXG4gICRzdGFuZGFyZC1jb3VudHJ5OiAnYWMnO1xyXG4gIHdpZHRoOiBtYXAtZ2V0KCRpdGVtLXdpZHRoLW1hcHMsICRzdGFuZGFyZC1jb3VudHJ5KTtcclxuXHJcbiAgQGVhY2ggJGtleSwgJHdpZHRoIGluICRpdGVtLXdpZHRoLW1hcHMge1xyXG4gICAgQGlmICR3aWR0aCAhPSBtYXAtZ2V0KCRpdGVtLXdpZHRoLW1hcHMsICRzdGFuZGFyZC1jb3VudHJ5KSB7XHJcbiAgICAgICYuI3ska2V5fSB7XHJcbiAgICAgICAgd2lkdGg6ICR3aWR0aDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhXHJcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDE5MmRwaSksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDU2MzBweCAxNXB4O1xyXG4gIH1cclxuXHJcbiAgJi5hYyB7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggMHB4O1xyXG4gIH1cclxuICAmLmFkIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMnB4IDBweDtcclxuICB9XHJcbiAgJi5hZSB7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAwcHg7XHJcbiAgfVxyXG4gICYuYWYge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY2cHggMHB4O1xyXG4gIH1cclxuICAmLmFnIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04OHB4IDBweDtcclxuICB9XHJcbiAgJi5haSB7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEwcHggMHB4O1xyXG4gIH1cclxuICAmLmFsIHtcclxuICAgIGhlaWdodDogMTVweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzJweCAwcHg7XHJcbiAgfVxyXG4gICYuYW0ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1NHB4IDBweDtcclxuICB9XHJcbiAgJi5hbyB7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggMHB4O1xyXG4gIH1cclxuICAmLmFxIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOThweCAwcHg7XHJcbiAgfVxyXG4gICYuYXIge1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMHB4IDBweDtcclxuICB9XHJcbiAgJi5hcyB7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQycHggMHB4O1xyXG4gIH1cclxuICAmLmF0IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjRweCAwcHg7XHJcbiAgfVxyXG4gICYuYXUge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4NnB4IDBweDtcclxuICB9XHJcbiAgJi5hdyB7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA4cHggMHB4O1xyXG4gIH1cclxuICAmLmF4IHtcclxuICAgIGhlaWdodDogMTNweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMzBweCAwcHg7XHJcbiAgfVxyXG4gICYuYXoge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IDBweDtcclxuICB9XHJcbiAgJi5iYSB7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzc0cHggMHB4O1xyXG4gIH1cclxuICAmLmJiIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zOTZweCAwcHg7XHJcbiAgfVxyXG4gICYuYmQge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxOHB4IDBweDtcclxuICB9XHJcbiAgJi5iZSB7XHJcbiAgICBoZWlnaHQ6IDE1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQwcHggMHB4O1xyXG4gIH1cclxuICAmLmJmIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjBweCAwcHg7XHJcbiAgfVxyXG4gICYuYmcge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MnB4IDBweDtcclxuICB9XHJcbiAgJi5iaCB7XHJcbiAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTA0cHggMHB4O1xyXG4gIH1cclxuICAmLmJpIHtcclxuICAgIGhlaWdodDogMTJweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjZweCAwcHg7XHJcbiAgfVxyXG4gICYuYmoge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0OHB4IDBweDtcclxuICB9XHJcbiAgJi5ibCB7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTcwcHggMHB4O1xyXG4gIH1cclxuICAmLmJtIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01OTJweCAwcHg7XHJcbiAgfVxyXG4gICYuYm4ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTYxNHB4IDBweDtcclxuICB9XHJcbiAgJi5ibyB7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjM2cHggMHB4O1xyXG4gIH1cclxuICAmLmJxIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NThweCAwcHg7XHJcbiAgfVxyXG4gICYuYnIge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY4MHB4IDBweDtcclxuICB9XHJcbiAgJi5icyB7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzAycHggMHB4O1xyXG4gIH1cclxuICAmLmJ0IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC03MjRweCAwcHg7XHJcbiAgfVxyXG4gICYuYnYge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTc0NnB4IDBweDtcclxuICB9XHJcbiAgJi5idyB7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzY4cHggMHB4O1xyXG4gIH1cclxuICAmLmJ5IHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC03OTBweCAwcHg7XHJcbiAgfVxyXG4gICYuYnoge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgxMnB4IDBweDtcclxuICB9XHJcbiAgJi5jYSB7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODM0cHggMHB4O1xyXG4gIH1cclxuICAmLmNjIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04NTZweCAwcHg7XHJcbiAgfVxyXG4gICYuY2Qge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTg3OHB4IDBweDtcclxuICB9XHJcbiAgJi5jZiB7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTAwcHggMHB4O1xyXG4gIH1cclxuICAmLmNnIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05MjJweCAwcHg7XHJcbiAgfVxyXG4gICYuY2gge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk0NHB4IDBweDtcclxuICB9XHJcbiAgJi5jaSB7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTYxcHggMHB4O1xyXG4gIH1cclxuICAmLmNrIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05ODNweCAwcHg7XHJcbiAgfVxyXG4gICYuY2wge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMDVweCAwcHg7XHJcbiAgfVxyXG4gICYuY20ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMjdweCAwcHg7XHJcbiAgfVxyXG4gICYuY24ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwNDlweCAwcHg7XHJcbiAgfVxyXG4gICYuY28ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwNzFweCAwcHg7XHJcbiAgfVxyXG4gICYuY3Age1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOTNweCAwcHg7XHJcbiAgfVxyXG4gICYuY3Ige1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMTVweCAwcHg7XHJcbiAgfVxyXG4gICYuY3Uge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMzdweCAwcHg7XHJcbiAgfVxyXG4gICYuY3Yge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExNTlweCAwcHg7XHJcbiAgfVxyXG4gICYuY3cge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExODFweCAwcHg7XHJcbiAgfVxyXG4gICYuY3gge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMDNweCAwcHg7XHJcbiAgfVxyXG4gICYuY3kge1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMjVweCAwcHg7XHJcbiAgfVxyXG4gICYuY3oge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyNDdweCAwcHg7XHJcbiAgfVxyXG4gICYuZGUge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyNjlweCAwcHg7XHJcbiAgfVxyXG4gICYuZGcge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOTFweCAwcHg7XHJcbiAgfVxyXG4gICYuZGoge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzMTNweCAwcHg7XHJcbiAgfVxyXG4gICYuZGsge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzMzVweCAwcHg7XHJcbiAgfVxyXG4gICYuZG0ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzNTdweCAwcHg7XHJcbiAgfVxyXG4gICYuZG8ge1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzNzlweCAwcHg7XHJcbiAgfVxyXG4gICYuZHoge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0MDFweCAwcHg7XHJcbiAgfVxyXG4gICYuZWEge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0MjNweCAwcHg7XHJcbiAgfVxyXG4gICYuZWMge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NDVweCAwcHg7XHJcbiAgfVxyXG4gICYuZWUge1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NjdweCAwcHg7XHJcbiAgfVxyXG4gICYuZWcge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0ODlweCAwcHg7XHJcbiAgfVxyXG4gICYuZWgge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MTFweCAwcHg7XHJcbiAgfVxyXG4gICYuZXIge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MzNweCAwcHg7XHJcbiAgfVxyXG4gICYuZXMge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1NTVweCAwcHg7XHJcbiAgfVxyXG4gICYuZXQge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1NzdweCAwcHg7XHJcbiAgfVxyXG4gICYuZXUge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1OTlweCAwcHg7XHJcbiAgfVxyXG4gICYuZmkge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MjFweCAwcHg7XHJcbiAgfVxyXG4gICYuZmoge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2NDNweCAwcHg7XHJcbiAgfVxyXG4gICYuZmsge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2NjVweCAwcHg7XHJcbiAgfVxyXG4gICYuZm0ge1xyXG4gICAgaGVpZ2h0OiAxMXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2ODdweCAwcHg7XHJcbiAgfVxyXG4gICYuZm8ge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3MDlweCAwcHg7XHJcbiAgfVxyXG4gICYuZnIge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3MzFweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2Ege1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NTNweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2Ige1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NzVweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2Qge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3OTdweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2Uge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MTlweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2Yge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4NDFweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2cge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4NjNweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2gge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4ODVweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2kge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MDdweCAwcHg7XHJcbiAgfVxyXG4gICYuZ2wge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MjlweCAwcHg7XHJcbiAgfVxyXG4gICYuZ20ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5NTFweCAwcHg7XHJcbiAgfVxyXG4gICYuZ24ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5NzNweCAwcHg7XHJcbiAgfVxyXG4gICYuZ3Age1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5OTVweCAwcHg7XHJcbiAgfVxyXG4gICYuZ3Ege1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMTdweCAwcHg7XHJcbiAgfVxyXG4gICYuZ3Ige1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMzlweCAwcHg7XHJcbiAgfVxyXG4gICYuZ3Mge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwNjFweCAwcHg7XHJcbiAgfVxyXG4gICYuZ3Qge1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwODNweCAwcHg7XHJcbiAgfVxyXG4gICYuZ3Uge1xyXG4gICAgaGVpZ2h0OiAxMXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxMDVweCAwcHg7XHJcbiAgfVxyXG4gICYuZ3cge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxMjdweCAwcHg7XHJcbiAgfVxyXG4gICYuZ3kge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxNDlweCAwcHg7XHJcbiAgfVxyXG4gICYuaGsge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxNzFweCAwcHg7XHJcbiAgfVxyXG4gICYuaG0ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxOTNweCAwcHg7XHJcbiAgfVxyXG4gICYuaG4ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMTVweCAwcHg7XHJcbiAgfVxyXG4gICYuaHIge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMzdweCAwcHg7XHJcbiAgfVxyXG4gICYuaHQge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNTlweCAwcHg7XHJcbiAgfVxyXG4gICYuaHUge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyODFweCAwcHg7XHJcbiAgfVxyXG4gICYuaWMge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzMDNweCAwcHg7XHJcbiAgfVxyXG4gICYuaWQge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzMjVweCAwcHg7XHJcbiAgfVxyXG4gICYuaWUge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzNDdweCAwcHg7XHJcbiAgfVxyXG4gICYuaWwge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzNjlweCAwcHg7XHJcbiAgfVxyXG4gICYuaW0ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzOTFweCAwcHg7XHJcbiAgfVxyXG4gICYuaW4ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MTNweCAwcHg7XHJcbiAgfVxyXG4gICYuaW8ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MzVweCAwcHg7XHJcbiAgfVxyXG4gICYuaXEge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0NTdweCAwcHg7XHJcbiAgfVxyXG4gICYuaXIge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0NzlweCAwcHg7XHJcbiAgfVxyXG4gICYuaXMge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1MDFweCAwcHg7XHJcbiAgfVxyXG4gICYuaXQge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1MjNweCAwcHg7XHJcbiAgfVxyXG4gICYuamUge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NDVweCAwcHg7XHJcbiAgfVxyXG4gICYuam0ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NjdweCAwcHg7XHJcbiAgfVxyXG4gICYuam8ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1ODlweCAwcHg7XHJcbiAgfVxyXG4gICYuanAge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2MTFweCAwcHg7XHJcbiAgfVxyXG4gICYua2Uge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2MzNweCAwcHg7XHJcbiAgfVxyXG4gICYua2cge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2NTVweCAwcHg7XHJcbiAgfVxyXG4gICYua2gge1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2NzdweCAwcHg7XHJcbiAgfVxyXG4gICYua2kge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2OTlweCAwcHg7XHJcbiAgfVxyXG4gICYua20ge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3MjFweCAwcHg7XHJcbiAgfVxyXG4gICYua24ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3NDNweCAwcHg7XHJcbiAgfVxyXG4gICYua3Age1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3NjVweCAwcHg7XHJcbiAgfVxyXG4gICYua3Ige1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3ODdweCAwcHg7XHJcbiAgfVxyXG4gICYua3cge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4MDlweCAwcHg7XHJcbiAgfVxyXG4gICYua3kge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4MzFweCAwcHg7XHJcbiAgfVxyXG4gICYua3oge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4NTNweCAwcHg7XHJcbiAgfVxyXG4gICYubGEge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4NzVweCAwcHg7XHJcbiAgfVxyXG4gICYubGIge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OTdweCAwcHg7XHJcbiAgfVxyXG4gICYubGMge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5MTlweCAwcHg7XHJcbiAgfVxyXG4gICYubGkge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5NDFweCAwcHg7XHJcbiAgfVxyXG4gICYubGsge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5NjNweCAwcHg7XHJcbiAgfVxyXG4gICYubHIge1xyXG4gICAgaGVpZ2h0OiAxMXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5ODVweCAwcHg7XHJcbiAgfVxyXG4gICYubHMge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwMDdweCAwcHg7XHJcbiAgfVxyXG4gICYubHQge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwMjlweCAwcHg7XHJcbiAgfVxyXG4gICYubHUge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwNTFweCAwcHg7XHJcbiAgfVxyXG4gICYubHYge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwNzNweCAwcHg7XHJcbiAgfVxyXG4gICYubHkge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwOTVweCAwcHg7XHJcbiAgfVxyXG4gICYubWEge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxMTdweCAwcHg7XHJcbiAgfVxyXG4gICYubWMge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxMzlweCAwcHg7XHJcbiAgfVxyXG4gICYubWQge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxNjBweCAwcHg7XHJcbiAgfVxyXG4gICYubWUge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxODJweCAwcHg7XHJcbiAgfVxyXG4gICYubWYge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMDRweCAwcHg7XHJcbiAgfVxyXG4gICYubWcge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMjZweCAwcHg7XHJcbiAgfVxyXG4gICYubWgge1xyXG4gICAgaGVpZ2h0OiAxMXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyNDhweCAwcHg7XHJcbiAgfVxyXG4gICYubWsge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyNzBweCAwcHg7XHJcbiAgfVxyXG4gICYubWwge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyOTJweCAwcHg7XHJcbiAgfVxyXG4gICYubW0ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzMTRweCAwcHg7XHJcbiAgfVxyXG4gICYubW4ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzMzZweCAwcHg7XHJcbiAgfVxyXG4gICYubW8ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzNThweCAwcHg7XHJcbiAgfVxyXG4gICYubXAge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzODBweCAwcHg7XHJcbiAgfVxyXG4gICYubXEge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0MDJweCAwcHg7XHJcbiAgfVxyXG4gICYubXIge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0MjRweCAwcHg7XHJcbiAgfVxyXG4gICYubXMge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0NDZweCAwcHg7XHJcbiAgfVxyXG4gICYubXQge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0NjhweCAwcHg7XHJcbiAgfVxyXG4gICYubXUge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0OTBweCAwcHg7XHJcbiAgfVxyXG4gICYubXYge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MTJweCAwcHg7XHJcbiAgfVxyXG4gICYubXcge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MzRweCAwcHg7XHJcbiAgfVxyXG4gICYubXgge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1NTZweCAwcHg7XHJcbiAgfVxyXG4gICYubXkge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1NzhweCAwcHg7XHJcbiAgfVxyXG4gICYubXoge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2MDBweCAwcHg7XHJcbiAgfVxyXG4gICYubmEge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2MjJweCAwcHg7XHJcbiAgfVxyXG4gICYubmMge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2NDRweCAwcHg7XHJcbiAgfVxyXG4gICYubmUge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2NjZweCAwcHg7XHJcbiAgfVxyXG4gICYubmYge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2ODZweCAwcHg7XHJcbiAgfVxyXG4gICYubmcge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3MDhweCAwcHg7XHJcbiAgfVxyXG4gICYubmkge1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3MzBweCAwcHg7XHJcbiAgfVxyXG4gICYubmwge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3NTJweCAwcHg7XHJcbiAgfVxyXG4gICYubm8ge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3NzRweCAwcHg7XHJcbiAgfVxyXG4gICYubnAge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3OTZweCAwcHg7XHJcbiAgfVxyXG4gICYubnIge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MTFweCAwcHg7XHJcbiAgfVxyXG4gICYubnUge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4MzNweCAwcHg7XHJcbiAgfVxyXG4gICYubnoge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4NTVweCAwcHg7XHJcbiAgfVxyXG4gICYub20ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4NzdweCAwcHg7XHJcbiAgfVxyXG4gICYucGEge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4OTlweCAwcHg7XHJcbiAgfVxyXG4gICYucGUge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5MjFweCAwcHg7XHJcbiAgfVxyXG4gICYucGYge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5NDNweCAwcHg7XHJcbiAgfVxyXG4gICYucGcge1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5NjVweCAwcHg7XHJcbiAgfVxyXG4gICYucGgge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5ODdweCAwcHg7XHJcbiAgfVxyXG4gICYucGsge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwMDlweCAwcHg7XHJcbiAgfVxyXG4gICYucGwge1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwMzFweCAwcHg7XHJcbiAgfVxyXG4gICYucG0ge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwNTNweCAwcHg7XHJcbiAgfVxyXG4gICYucG4ge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwNzVweCAwcHg7XHJcbiAgfVxyXG4gICYucHIge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwOTdweCAwcHg7XHJcbiAgfVxyXG4gICYucHMge1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxMTlweCAwcHg7XHJcbiAgfVxyXG4gICYucHQge1xyXG4gICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNDFweCAwcHg7XHJcbiAgfVxyXG4gICYucHcge1xyXG4gICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxNjNweCAwcHg7XHJcbiAgfVxyXG4gICYucHkge1xyXG4gICAgaGVpZ2h0OiAxMXB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxODVweCAwcHg7XHJcbiAgfVxyXG4gICYucWEge1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjA3cHggMHB4O1xyXG4gIH1cclxuICAmLnJlIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjI5cHggMHB4O1xyXG4gIH1cclxuICAmLnJvIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjUxcHggMHB4O1xyXG4gIH1cclxuICAmLnJzIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjczcHggMHB4O1xyXG4gIH1cclxuICAmLnJ1IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00Mjk1cHggMHB4O1xyXG4gIH1cclxuICAmLnJ3IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzE3cHggMHB4O1xyXG4gIH1cclxuICAmLnNhIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzM5cHggMHB4O1xyXG4gIH1cclxuICAmLnNiIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzYxcHggMHB4O1xyXG4gIH1cclxuICAmLnNjIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzgzcHggMHB4O1xyXG4gIH1cclxuICAmLnNkIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDA1cHggMHB4O1xyXG4gIH1cclxuICAmLnNlIHtcclxuICAgIGhlaWdodDogMTNweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDI3cHggMHB4O1xyXG4gIH1cclxuICAmLnNnIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDQ5cHggMHB4O1xyXG4gIH1cclxuICAmLnNoIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDcxcHggMHB4O1xyXG4gIH1cclxuICAmLnNpIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDkzcHggMHB4O1xyXG4gIH1cclxuICAmLnNqIHtcclxuICAgIGhlaWdodDogMTVweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTE1cHggMHB4O1xyXG4gIH1cclxuICAmLnNrIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTM3cHggMHB4O1xyXG4gIH1cclxuICAmLnNsIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTU5cHggMHB4O1xyXG4gIH1cclxuICAmLnNtIHtcclxuICAgIGhlaWdodDogMTVweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTgxcHggMHB4O1xyXG4gIH1cclxuICAmLnNuIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjAzcHggMHB4O1xyXG4gIH1cclxuICAmLnNvIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjI1cHggMHB4O1xyXG4gIH1cclxuICAmLnNyIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjQ3cHggMHB4O1xyXG4gIH1cclxuICAmLnNzIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjY5cHggMHB4O1xyXG4gIH1cclxuICAmLnN0IHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjkxcHggMHB4O1xyXG4gIH1cclxuICAmLnN2IHtcclxuICAgIGhlaWdodDogMTJweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NzEzcHggMHB4O1xyXG4gIH1cclxuICAmLnN4IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NzM1cHggMHB4O1xyXG4gIH1cclxuICAmLnN5IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NzU3cHggMHB4O1xyXG4gIH1cclxuICAmLnN6IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00Nzc5cHggMHB4O1xyXG4gIH1cclxuICAmLnRhIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODAxcHggMHB4O1xyXG4gIH1cclxuICAmLnRjIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODIzcHggMHB4O1xyXG4gIH1cclxuICAmLnRkIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODQ1cHggMHB4O1xyXG4gIH1cclxuICAmLnRmIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODY3cHggMHB4O1xyXG4gIH1cclxuICAmLnRnIHtcclxuICAgIGhlaWdodDogMTNweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODg5cHggMHB4O1xyXG4gIH1cclxuICAmLnRoIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTExcHggMHB4O1xyXG4gIH1cclxuICAmLnRqIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTMzcHggMHB4O1xyXG4gIH1cclxuICAmLnRrIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTU1cHggMHB4O1xyXG4gIH1cclxuICAmLnRsIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTc3cHggMHB4O1xyXG4gIH1cclxuICAmLnRtIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTk5cHggMHB4O1xyXG4gIH1cclxuICAmLnRuIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDIxcHggMHB4O1xyXG4gIH1cclxuICAmLnRvIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDQzcHggMHB4O1xyXG4gIH1cclxuICAmLnRyIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDY1cHggMHB4O1xyXG4gIH1cclxuICAmLnR0IHtcclxuICAgIGhlaWdodDogMTJweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDg3cHggMHB4O1xyXG4gIH1cclxuICAmLnR2IHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTA5cHggMHB4O1xyXG4gIH1cclxuICAmLnR3IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTMxcHggMHB4O1xyXG4gIH1cclxuICAmLnR6IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTUzcHggMHB4O1xyXG4gIH1cclxuICAmLnVhIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTc1cHggMHB4O1xyXG4gIH1cclxuICAmLnVnIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTk3cHggMHB4O1xyXG4gIH1cclxuICAmLnVtIHtcclxuICAgIGhlaWdodDogMTFweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjE5cHggMHB4O1xyXG4gIH1cclxuICAmLnVzIHtcclxuICAgIGhlaWdodDogMTFweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjQxcHggMHB4O1xyXG4gIH1cclxuICAmLnV5IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjYzcHggMHB4O1xyXG4gIH1cclxuICAmLnV6IHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01Mjg1cHggMHB4O1xyXG4gIH1cclxuICAmLnZhIHtcclxuICAgIGhlaWdodDogMTVweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzA3cHggMHB4O1xyXG4gIH1cclxuICAmLnZjIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzI0cHggMHB4O1xyXG4gIH1cclxuICAmLnZlIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzQ2cHggMHB4O1xyXG4gIH1cclxuICAmLnZnIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzY4cHggMHB4O1xyXG4gIH1cclxuICAmLnZpIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzkwcHggMHB4O1xyXG4gIH1cclxuICAmLnZuIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDEycHggMHB4O1xyXG4gIH1cclxuICAmLnZ1IHtcclxuICAgIGhlaWdodDogMTJweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDM0cHggMHB4O1xyXG4gIH1cclxuICAmLndmIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDU2cHggMHB4O1xyXG4gIH1cclxuICAmLndzIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDc4cHggMHB4O1xyXG4gIH1cclxuICAmLnhrIHtcclxuICAgIGhlaWdodDogMTVweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTAwcHggMHB4O1xyXG4gIH1cclxuICAmLnllIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTIycHggMHB4O1xyXG4gIH1cclxuICAmLnl0IHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTQ0cHggMHB4O1xyXG4gIH1cclxuICAmLnphIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTY2cHggMHB4O1xyXG4gIH1cclxuICAmLnptIHtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTg4cHggMHB4O1xyXG4gIH1cclxuICAmLnp3IHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NjEwcHggMHB4O1xyXG4gIH1cclxufVxyXG4iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJ1dHRvbnMgLSBHZW5lcmFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5idG4ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWJ0bi1ib3gtc2hhZG93KTtcclxuICAgICYtcm91bmRlZCB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgfVxyXG4gICAgJi1yZWdpc3Rlci1kb21haW57XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDUwMHB4KSB7XHJcbiAgICAuYnRuLWlucHV0LXBhZGRlZC1yZXNwb25zaXZlIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMzgwcHgpIHtcclxuICAgIC5idG4taW5wdXQtcGFkZGVkLXJlc3BvbnNpdmUge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBCdXR0b25zIC0gUHJpbWFyeSBCbG9ja1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uYXBwLW5hdi1wcmltYXJ5LFxyXG4uYXBwLW5hdi1zZWNvbmRhcnksXHJcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXNpZGViYXItcHJpbWFyeSxcclxuLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1zZWNvbmRhcnkge1xyXG4gICAgLmJ0bi5idG4tb3V0bGluZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLW91dGxpbmUtY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tb3V0bGluZS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tb3V0bGluZS1ob3Zlci1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1vdXRsaW5lLWhvdmVyLWJnKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tb3V0bGluZS1ob3Zlci1ib3JkZXItY29sb3IpIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAmOmZvY3VzLXZpc2libGUsXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tb3V0bGluZS1ob3Zlci1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWFjdGl2ZS1idG4tb3V0bGluZS1ob3Zlci1iZykhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLW91dGxpbmUtYWN0aXZlLWJvcmRlci1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5LFxyXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSxcclxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeSxcclxuLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5LFxyXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyAucGFuZWwtZm9vdGVyIHtcclxuICAgIC5idG46bm90KC5idG4tb3V0bGluZSk6bm90KC5idG4tcHJpbWFyeS1mYWRlZCksXHJcbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOm5vdCguYnRuKSxcclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bm90KC5idG4pIHtcclxuICAgICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCh2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1jb2xvciksIHZhcigtLXByaW1hcnktYmxvY2stYnRuLWJnKSwgdmFyKC0tcHJpbWFyeS1ibG9jay1idG4tYm9yZGVyLWNvbG9yKSwgdmFyKC0tcHJpbWFyeS1ibG9jay1idG4taG92ZXItY29sb3IpLCB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ob3Zlci1iZyksIHZhcigtLXByaW1hcnktYmxvY2stYnRuLWhvdmVyLWJvcmRlci1jb2xvciksIHZhcigtLXByaW1hcnktYmxvY2stYnRuLWFjdGl2ZS1iZyksIHZhcigtLXByaW1hcnktYmxvY2stYnRuLWFjdGl2ZS1ib3JkZXItY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtYmcpLCB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYW5lbC1zaWRlYmFyLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbiAucGFuZWwtZm9vdGVye1xyXG4gICAgLmJ0bi1zdWNjZXNze1xyXG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvciksIHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxuICAgIH1cclxuICAgIC5idG4tZGFuZ2Vye1xyXG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1kZWZhdWx0LWNvbG9yKSwgdmFyKC0tYnRuLWRlZmF1bHQtYmcpLCB2YXIoLS1idG4tZGVmYXVsdC1ib3JkZXIpLCB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvciksIHZhcigtLWJ0bi1kZWZhdWx0LWhvdmVyLWJnKSwgdmFyKC0tYnRuLWRlZmF1bHQtaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLWRlZmF1bHQtYWN0aXZlLWJnKSwgdmFyKC0tYnRuLWRlZmF1bHQtYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gQnV0dG9ucyAtIFNvY2lhbCBCdXR0b25zXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zb2NpYWwtc2lnbmluLWJ0bnM6bm90KC5zb2NpYWwtc2lnbmluLWJ0bnMtY2lyY2xlKSB7XHJcbiAgICAuYnRuLXNvY2lhbCB7XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ0bi1zb2NpYWw6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICB9XHJcbn1cclxuLnNvY2lhbC1zaWduaW4tYnRucy1jaXJjbGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWFyZ2luOiAwIC04cHg7XHJcbiAgICAvL3RleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIC5idG57XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgICB9XHJcbn0gXHJcbi5idG4tc29jaWFsIHtcclxuICAgIGhlaWdodDogdmFyKC0tYnRuLXNvY2lhbC1oZWlnaHQpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tc29jaWFsLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBpIHtcclxuICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgIGZvbnQtc2l6ZTogMTlweDtcclxuICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgIH1cclxuICAgIGltZ3tkaXNwbGF5OiBub25lO31cclxuICAgICYuYnRuIHtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWJ0bi1zb2NpYWwtaGVpZ2h0KTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWJ0bi1zb2NpYWwtZm9udC1zaXplKTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWJ0bi1zb2NpYWwtcGFkZGluZy1oKTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1idG4tc29jaWFsLXBhZGRpbmctaCk7XHJcbiAgICAgICAgJi1mYWNlYm9va3tcclxuICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9hdXRoL2xvZ28tZmFjZWJvb2suc3ZnKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZmFjZWJvb2stY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZmFjZWJvb2stYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXNvY2lhbC1mYWNlYm9vay1iZyk7XHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSxcclxuICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICYuYWN0aXZle1xyXG4gICAgICAgICAgICAgICAgJjpub3QoLmRpc2FibGVkKTpub3QoOmRpc2FibGVkKXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXNvY2lhbC1mYWNlYm9vay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXNvY2lhbC1mYWNlYm9vay1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc29jaWFsLWZhY2Vib29rLWhvdmVyLWJvcmRlcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJltkaXNhYmxlZF0sXHJcbiAgICAgICAgICAgICYuZGlzYWJsZWR7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSxcclxuICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZmFjZWJvb2stYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgICAgICAmLWdvb2dsZXtcclxuICAgICAgICAgICAgJi5nX2lkX3NpZ25pbntcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGF1dG87XHJcbiAgICAgICAgICAgICAgICA+IC5TOWdVcmYtWW9aNGpme1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIGhlaWdodDogY2FsYyh2YXIoLS1idG4tc29jaWFsLWhlaWdodCkgKyA0cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIEBzdXBwb3J0cyAoLW1vei1hcHBlYXJhbmNlOm5vbmUpIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1idG4tc29jaWFsLWhlaWdodCkgKyA0cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgICAgICA+IGRpdnsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1idG4tc29jaWFsLWhlaWdodCkgKyA0cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5uc203QmItSHpWN20tTGdic1NleyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1idG4tc29jaWFsLWhlaWdodCkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXNvY2lhbC1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLm5zbTdCYi1IelY3bS1MZ2JzU2UtQlByV0lke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYnRuLXNvY2lhbC1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idG4tYmFzZS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWJ0bi1mb250LWZhbWlseSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjplbXB0eXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgZGl2ID4gaWZyYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgK2lmcmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpub3QoLmdfaWRfc2lnbmluKXtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYXV0aC9sb2dvLWdvb2dsZS5zdmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXNvY2lhbC1nb29nbGUtY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtZ29vZ2xlLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXNvY2lhbC1nb29nbGUtYmcpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAmOmZvY3VzLXZpc2libGUsXHJcbiAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXNvY2lhbC1nb29nbGUtaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc29jaWFsLWdvb2dsZS1ib3JkZXItaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdHdpdHRlcntcclxuICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9hdXRoL2xvZ28tdHdpdHRlci5zdmcpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXNvY2lhbC10d2l0dGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tc29jaWFsLXR3aXR0ZXItYmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tc29jaWFsLXR3aXR0ZXItYmcpO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXNvY2lhbC10d2l0dGVyLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtdHdpdHRlci1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1zb2NpYWwtdHdpdHRlci1ib3JkZXItaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZbZGlzYWJsZWRdLFxyXG4gICAgICAgICAgICAmLmRpc2FibGVke1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzLXZpc2libGUsXHJcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tc29jaWFsLXR3aXR0ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXNvY2lhbC10d2l0dGVyLWNvbG9yLWJnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0gXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJ1dHRvbnMgLSBQcm92aWRlciBMaW5raW5nXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wcm92aWRlckxpbmtpbmdGZWVkYmFjayB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcbi5idXR0b25zLWdyb3VwIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDRweFxyXG4gICAgfVxyXG4gICAgJi5idXR0b25zLTUge1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAyMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgLmJ1dHRvbnMtZ3JvdXAge1xyXG4gICAgICAgICYuYnV0dG9ucy01IHtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJ1dHRvbnMgLSBDbGVhciBGaWx0ZXJzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi50YWJsZS10b3Age1xyXG4gICAgI2NsZWFyRmlsdGVycyB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1kZWZhdWx0LWNvbG9yKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICBwYWRkaW5nLWlubGluZTogMTJweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMtdmlzaWJsZXtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQ2FwdGNoYSAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmNhcHRjaGEge1xyXG4gICAgd2lkdGg6IDI1NnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tKTtcclxuICAgICYtY2VudGVyZWR7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgLmlucHV0LWdyb3Vwe1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmdGV4dCB7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7XHJcbiAgICB9XHJcbiAgICAmaW1hZ2Uge1xyXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBtYXJnaW46IDI0cHggYXV0byAwcHggYXV0bztcclxuICAgICAgICA+KntcclxuICAgICAgICAgICAgd2lkdGg6IDEyOHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xyXG4gICAgICAgICAgICBmbG9hdDpsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAjaW5wdXRDYXB0Y2hhIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4jaW5wdXRDYXB0Y2hhIHtcclxuICAgIHdpZHRoOiAxMjhweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4jZGVmYXVsdC1jYXB0Y2hhLWRvbWFpbmNoZWNrZXIuc2VjdGlvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiAxOHB4O1xyXG59XHJcblxyXG4uZ3JlY2FwdGNoYS1iYWRnZSB7XHJcbiAgICB6LWluZGV4OiA5OTtcclxufVxyXG5cclxuLmNhcHRjaGEtb3ZlcmxheS1iYWRnZSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBib3R0b206IDIwcHg7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIHotaW5kZXg6IDk5OTk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5jYXB0Y2hhLW92ZXJsYXktYmFkZ2UtaGlkZGVuIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5jYXB0Y2hhLW92ZXJsYXktYmFkZ2UgaW1nIHtcclxuICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uY2FwdGNoYS1vdmVybGF5LXBvcHVwIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBib3R0b206IDg4cHg7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgd2lkdGg6IDMwMnB4O1xyXG4gICAgei1pbmRleDogOTk5ODtcclxufSIsIlxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZvcm0gLSBHZW5lcmFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zZWxlY3QtaW5saW5lIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgJi1pbmxpbmUtY29udGFpbmVye1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgc2VsZWN0e1xyXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1vZi10eXBlKXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiNzdGF0ZXNlbGVjdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuLmZvcm0tYWN0aW9ucyB7XHJcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhsZyk7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIFxyXG4gICAgJi5mbGV4LWNlbnRlciB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmLmZsZXgtZW5kIHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgfVxyXG4gICAgLmJ0biArIC5idG4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubS1yLWEge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxufVxyXG4uc2VjdGlvbiArIC5mb3JtLWFjdGlvbnMge1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpO1xyXG59XHJcbi5mb3JtLXRvb2x0aXAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLnRvb2x0aXAtaWNvbntcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpOyAgICAgICBcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICB9XHJcbn1cclxuI2lucHV0TmV3UGFzc3dvcmQyIHtcclxuICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTZweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xyXG4gICAgfVxyXG59XHJcbi5pbnB1dC1wYXNzd29yZC1zdHJlbmdodCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICA+ICp7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgI3Bhc3N3b3JkU3RyZW5ndGhUZXh0TGFiZWx7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbmlucHV0W3R5cGU9J2ZpbGUnXS5mb3JtLWNvbnRyb2wge1xyXG4gICAgaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcbi5oYXMtZmVlZGJhY2sgbGFiZWx+LmZvcm0tY29udHJvbC1mZWVkYmFjayB7XHJcbiAgICB0b3A6IDI3cHggIWltcG9ydGFudDtcclxufVxyXG4uaW5wdXQtaW5saW5lIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICYtMTAwIHtcclxuICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRm9ybSAtIE11bHRpc2VsZWN0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tdWx0aXNlbGVjdC1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgICAgbWFyZ2luOiA1cHhcclxuICAgIH1cclxuICAgID4gbGkge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgPiBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogM3B4IDIwcHggM3B4IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAmLmNoZWNrYm94LFxyXG4gICAgICAgICAgICAgICAgJi5yYWRpbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+aW5wdXRbdHlwZT1jaGVja2JveF0ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gYS5tdWx0aXNlbGVjdC1hbGwge1xyXG4gICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5tdWx0aXNlbGVjdC1ncm91cCB7XHJcbiAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCAyMHB4IDNweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtY2xpY2thYmxlIHtcclxuICAgICAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXJcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYnRuLWdyb3VwIHtcclxuICAgID4uYnRuLWdyb3VwOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgPi5tdWx0aXNlbGVjdC5idG4ge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmZvcm0taW5saW5lIHtcclxuICAgIC5tdWx0aXNlbGVjdC1jb250YWluZXIge1xyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgJi5yYWRpbyxcclxuICAgICAgICAgICAgJi5jaGVja2JveCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggMjBweCAzcHggNDBweFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XSxcclxuICAgICAgICAgICAgICAgICAgICAmLnJhZGlvIGlucHV0W3R5cGU9cmFkaW9dIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSAgIFxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZvcm0gLSBGaWxlIGlucHV0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5maWxlLWlucHV0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmcpO1xyXG4gICAgJi1idXR0b257XHJcbiAgICAgICAgbWFyZ2luOiAtMXB4O1xyXG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICB9XHJcbiAgICAmLXRleHR7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICB9XHJcbiAgICAmLXJlbW92ZXtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gICAgaW5wdXRbdHlwZT1maWxlXXtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgICY6aGFzKGlucHV0OmZvY3VzLXZpc2libGUpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1iZyk7XHJcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xyXG4gICAgICAgIC5maWxlLWlucHV0LWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1iZyk7XHJcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xyXG4gICAgICAgIC5maWxlLWlucHV0LWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuI2ZpbGVVcGxvYWRzQ29udGFpbmVyIHtcclxuICAgIC5maWxlLWlucHV0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgfVxyXG59XHJcbi5iaWxsaW5nLWRldGFpbHMtZm9ybXtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZyk7XHJcbn1cclxuLmlubGluZS1mb3JtIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAuaW5saW5lLWZvcm0tZWxlbWVudCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoMyksXHJcbiAgICAgICAgJjpudGgtY2hpbGQoMil7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XHJcbiAgICByZXNpemU6IHZlcnRpY2FsO1xyXG4gICAgbWluLWhlaWdodDogNTBweFxyXG59XHJcbi5wYXNzd29yZC1jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAucHJvZ3Jlc3Mge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ0bi1kZWZhdWx0IHtcclxuICAgICAgICAubHMge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1ncm91cHtcclxuICAgICAgICAucHJvZ3Jlc3N7XHJcbiAgICAgICAgICAgIGhlaWdodDogNnB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXByb2dyZXNzLXdpZHRoKTtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLXByb2dyZXNzLXdpZHRoKTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgJiArIC5wYXNzd29yZC1jb250ZW50LXRleHR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiBsYWJlbHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtdG9we1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIGxhYmVse1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Gb3JtIC0gU2VsZWN0aXplXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zZWxlY3RpemUtY29udHJvbC5mb3JtLWNvbnRyb2wge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgLnNlbGVjdGl6ZS1pbnB1dCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLWlucHV0LWZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1pbnB1dC1mb250LXdlaWdodCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG4gICAgICAgIGJvcmRlcjogdmFyKC0taW5wdXQtYm9yZGVyKTtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpKTtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSk7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICByaWdodDogN3B4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5kcm9wZG93bi1hY3RpdmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pbnB1dC1mb2N1cy1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLml0ZW1zIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggNnB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDRweCA0cHggMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpOyBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgICAgICAucmVtb3ZlIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTsgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwOyAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS11aS1oZWlnaHQtYmFzZSkgLSA0cHgpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9IC8vZHJvcGRvd25cclxuICAgIC5zZWxlY3RpemUtZHJvcGRvd24ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB6LWluZGV4OiB2YXIoLS16aW5kZXgtZHJvcGRvd24pO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxOTRweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRyb3Bkb3duLWJnKTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3JkZXI6IHZhcigtLWRyb3Bkb3duLWJvcmRlcik7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1kcm9wZG93bi1ib3gtc2hhZG93KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm9wdGlvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgLmJhZGdlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy9zaXplc1xyXG4gICAgJi5mb3JtLWNvbnRyb2wtLXhzLFxyXG4gICAgJi5mb3JtLWNvbnRyb2wtLXNtIHtcclxuICAgICAgICAvL2Ryb3Bkb3duXHJcbiAgICAgICAgLnNlbGVjdGl6ZS1kcm9wZG93biB7XHJcbiAgICAgICAgICAgIC5vcHRpb24ge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5mb3JtLWNvbnRyb2wtLXhsZyxcclxuICAgICYuZm9ybS1jb250cm9sLS1sZyB7XHJcbiAgICAgICAgLy9kcm9wZG93blxyXG4gICAgICAgIC5zZWxlY3RpemUtZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAub3B0aW9uIHtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuY3VzdG9tLW11bHRpc2VsZWN0IHsgXHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWluLXdpZHRoOiA1MCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgICAgICAuc2VsZWN0aXplLWlucHV0IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggMjhweCAwIHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5oYXMtZGFyay1iYWNrZ3JvdW5kIHtcclxuICAgIC5zZWxlY3RpemUtaW5wdXQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcclxuICAgIH1cclxufVxyXG5cclxuLnJlcXVpcmVke1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xyXG59XHJcbi5jaGVja2JveHtcclxuICAgIC5yZXF1aXJlZHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xyXG4gICAgfVxyXG59XHJcbiIsIi5jaGVja2JveCxcclxuLnJhZGlvIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICYsXHJcbiAgICA+IGxhYmVsIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yKTtcclxuICAgICAgICA+IC5jaGVja2JveC1zdHlsZWQsXHJcbiAgICAgICAgPiAucmFkaW8tc3R5bGVkLFxyXG4gICAgICAgID4gW3R5cGU9XCJjaGVja2JveFwiXSxcclxuICAgICAgICA+IFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWNoZWNrYm94LXNwYWNpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmxhYmVsLWN1c3RvbS1jaGVja3tcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIC5jaGVja2JveC1zdHlsZWR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICAgICAgPiAuY2hlY2tib3gtc3R5bGVkOm5vdCguY2hlY2tlZCk6bm90KC5kaXNhYmxlZCksXHJcbiAgICAgICAgICAgID4gLnJhZGlvLXN0eWxlZDpub3QoLmNoZWNrZWQpOm5vdCguZGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICsgLmhlbHAtYmxvY2sge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWljaGVjay1zaXplKSArIHZhcigtLWNoZWNrYm94LXNwYWNpbmcpKTtcclxuICAgIH1cclxufVxyXG4ucmFkaW8ge1xyXG4gICAgJj4uaWNoZWNrLWNvbnRyb2wge1xyXG4gICAgICAgIHdpZHRoOiB1bnNldCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLmljaGVjayB7XHJcbiAgICAmLWxhYmVsIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgICAmLWNvbnRyb2wge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMTgwJTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxufVxyXG4ucmFkaW8tc3R5bGVkLFxyXG4uY2hlY2tib3gtc3R5bGVkLFxyXG4uaWNoZWNrYm94X3NxdWFyZS1ibHVlLFxyXG4uaXJhZGlvX3NxdWFyZS1ibHVle1xyXG4gICAgdG9wOiAtMXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGhlaWdodDogdmFyKC0taWNoZWNrLXNpemUpO1xyXG4gICAgd2lkdGg6IHZhcigtLWljaGVjay1zaXplKTtcclxuICAgIG1pbi13aWR0aDogdmFyKC0taWNoZWNrLXNpemUpO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0taWNoZWNrLXNpemUpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taWNoZWNrLWJnKTtcclxuICAgIGJvcmRlcjogdmFyKC0taWNoZWNrLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pY2hlY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjcpO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWljaGVjay1ob3Zlci1ib3JkZXItY29sb3IpO1xyXG4gICAgfVxyXG4gICAgJi5jaGVja2VkIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWljaGVjay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY2hlY2stYWN0aXZlLWJnKTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pY2hlY2stZGlzYWJsZWQtYmcpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWNoZWNrLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XHJcbiAgICB9XHJcbiAgICA+IGlucHV0IHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxufVxyXG5cclxuLmljaGVja2JveF9zcXVhcmUtYmx1ZSxcclxuLmNoZWNrYm94LXN0eWxlZCB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBjb250ZW50OiBcIlxcZTkxMVwiO1xyXG4gICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1pY2hlY2stc2l6ZSkgLSB2YXIoLS1pY2hlY2stYm9yZGVyLXdpZHRoKSAqIDIpO1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKHZhcigtLWljaGVjay1zaXplKSAtIHZhcigtLWljaGVjay1ib3JkZXItd2lkdGgpICogMik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWljaGVjay1hY3RpdmUtaWNvbi1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICB9XHJcbn1cclxuLmlyYWRpb19zcXVhcmUtYmx1ZSxcclxuLnJhZGlvLXN0eWxlZCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSogKHZhcigtLXNwYWNpbmctMXgpIC8gMikpO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xKiAodmFyKC0tc3BhY2luZy0xeCkgLyAyKSk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuW2RhdGEtcmFkaW8tdGFiXSAucmFkaW8tc3R5bGVkIHtcclxuICAgIGRpc3BsYXk6IG5vbmVcclxufVxyXG5cclxuLnJhZGlvLWlubGluZSsucmFkaW8taW5saW5lLFxyXG4uY2hlY2tib3gtaW5saW5lKy5jaGVja2JveC1pbmxpbmUge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XHJcbn1cclxuLnJhZGlvLWlubGluZSB7XHJcbiAgICA+IC5hZGRvbi1zZWxlY3RvciB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuLm1nLXJjLWRyb3Bkb3ducyAuaXJhZGlvX3NxdWFyZS1ibHVlLFxyXG4jY29udGFpbmVyTmV3VXNlclNlY3VyaXR5IC5pY2hlY2tib3hfc3F1YXJlLWJsdWV7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIHRvcDogNHB4O1xyXG59XHJcblxyXG4uY2hlY2tib3gtc3R5bGUge1xyXG4gICAgd2lkdGg6IHZhcigtLWljaGVjay1zaXplKTtcclxuICAgIGhlaWdodDogdmFyKC0taWNoZWNrLXNpemUpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICsgKiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLm9yZGVyLWNoZWNrYm94e1xyXG4gICAgKy5zZWN0aW9ue1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5JbnZvaWNlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5pbnZvaWNlIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmcteGxnKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWxnKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgICYtdGl0bGUge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgyKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAmLXNtIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDMpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxhYmVsIHtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhZGRyZXNzIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgLndlbGwge1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuICAgIC5saXN0LWluZm8ge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1Yi10b3RhbC1yb3cge1xyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmxhc3Qge1xyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmZpcnN0IHtcclxuICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTZweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRhYmxlIHtcclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRvdGFsLXJvdyB7XHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubm90ZXMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyAgICAgICAgXHJcbiAgICAgICAgLm5vdGVzLWJvZHkge1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS13ZWxsLWJvcmRlcik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbG9yLXRyYW5zcGFyZW50KTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbntcclxuICAgICAgICBoM3tcclxuICAgICAgICAgICAgZm9udC1zaXplOnZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWRlYml0LW5vdGV7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5NjBweDtcclxuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoc20pIHtcclxuICAgIC5pbnZvaWNle1xyXG4gICAgICAgIHBhZGRpbmc6IDI2cHggMjRweCAzMnB4O1xyXG4gICAgfVxyXG59XHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuSW52b2ljZSAtIFNpZGViYXIgXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLnBhbmVsLXBheW1lbnQge1xyXG4gICAgLnNlbGVjdC1pbmxpbmUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgZm9ybSB7XHJcbiAgICAgICAgKyAuYnRuIHtcclxuICAgICAgICAgICAgKyBmb3JtIHtcclxuICAgICAgICAgICAgICAgICsgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5idG57XHJcbiAgICAgICAgKyAuYnRue1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFuZWwtc3VtbWFyeXtcclxuICAgICYucGFuZWwtdmlldy1pbnZvaWNle1xyXG4gICAgICAgIC5wYXltZW50LWZvcm17XHJcbiAgICAgICAgICAgID4gcHtcclxuICAgICAgICAgICAgICAgIGJye1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5kZWJpdC1ub3RlLWFjdGlvbntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG59XHJcbi5wYXltZW50LWZvcm0ge1xyXG4gICAgcCB7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NCk7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gICAgdGFibGUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogdW5zZXQ7XHJcbiAgICAgICAgdGJvZHksIHRyLCB0ZHtcclxuICAgICAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xsYXBzZTogdW5zZXQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRib2R5IHRyIHRkICsgdGR7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXHJcbiAgICAuYnRuIHtcclxuICAgICAgICBtYXJnaW46IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIGk6bm90KC5mYS1zcGlubmVyKXtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZhLXNwaW5uZXJ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlLWJhc2UpOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1iYXNlLXZlcnRpY2FsKSB2YXIoLS1wYWRkaW5nLWJhc2UtaG9yaXpvbnRhbCk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtYmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1iZyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7IC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIDxzZWxlY3Q+cyBpbiBDU1MuXHJcbiAgICAgICAgLy9AaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tYmFzZSkpO1xyXG4gICAgICAgIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICB9ICAgICAgXHJcbiAgICAgICAgLy8gUGxhY2Vob2xkZXJcclxuICAgICAgICAvLyBAaW5jbHVkZSBwbGFjZWhvbGRlcjsgICAgICBcclxuICAgICAgICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cclxuICAgICAgICAmOjotbXMtZXhwYW5kIHtcclxuICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH0gICAgICBcclxuICAgICAgICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xyXG4gICAgICAgIC8vXHJcbiAgICAgICAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcclxuICAgICAgICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxyXG4gICAgICAgIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cclxuICAgICAgICAmW2Rpc2FibGVkXSxcclxuICAgICAgICAmW3JlYWRvbmx5XSxcclxuICAgICAgICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1iZy1kaXNhYmxlZCk7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxOyAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1XHJcbiAgICAgICAgfSAgICAgIFxyXG4gICAgICAgICZbZGlzYWJsZWRdLFxyXG4gICAgICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICAgICAgIGN1cnNvcjogZGlzYWJsZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgfVxyXG4gICAgLmJ0bi1zbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUodmFyKC0tdWktcGFkZGluZy1iYXNlLXYpLCB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCksIHZhcigtLWJ0bi1iYXNlLWZvbnQtc2l6ZSksIHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpLCB2YXIoLS1idG4tYmFzZS1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICB9XHJcbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxyXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcclxuICAgIC5idG4ge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IHVuc2V0O1xyXG4gICAgfVxyXG59XHJcbi5wYWdlLXZpZXdpbnZvaWNlIHtcclxuICAgIC5yb3ctZXEtaGVpZ2h0IHtcclxuICAgICAgICAmLnJvdy1lcS1oZWlnaHQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKG1kKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbi0tYmFuay1kZXRhaWxze1xyXG4gICAgICAgIC5zZWN0aW9uLWJvZHl7XHJcbiAgICAgICAgICAgID4gcHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgIC5wYWdlLXZpZXdpbnZvaWNlIHtcclxuICAgICAgICAuaW52b2ljZSB7XHJcbiAgICAgICAgICAgIC50YWJsZS1jb25kZW5zZWQge1xyXG4gICAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5tLWItMCB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhlYWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gdGgge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIklEXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Ki9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHRyOm5vdCgudG90YWwtcm93KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHRkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi50b3RhbC1yb3cge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3ViLXRvdGFsLXJvdyB7IFxyXG4gICAgICAgICAgICAgICAgJi5maXJzdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhKG1heC13aWR0aDogMzgwcHgpIHtcclxuICAgIC5wYWdlLXZpZXdpbnZvaWNlIHtcclxuICAgICAgICAuaW52b2ljZSB7XHJcbiAgICAgICAgICAgIC50YWJsZS1jb25kZW5zZWQge1xyXG4gICAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxubGlzdCAtIExpc3QgSW5mb1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ubGlzdC1pbmZvIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgICYtdGV4dCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICB9XHJcbiAgICAmLXYge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpc3QtaW5mbyB7XHJcbiAgICAgICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tZm9udC1zaXplLWxnKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi01MCB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5saXN0LWluZm8ge1xyXG4gICAgICAgICAgICAmLXRpdGxlLFxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xyXG4gICAgICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtc20ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgfVxyXG4gICAgJi1ib3JkZXJlZCB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5saXN0LWZlYXR1cmVzIHtcclxuICAgICYgPiBsaSB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCkgMDtcclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTGlzdCBHcm91cCAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmxpc3QtZ3JvdXAge1xyXG4gICAgJi12IHtcclxuICAgICAgIC5saXN0LWdyb3VwLWl0ZW17XHJcbiAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICB9IFxyXG4gICAgfVxyXG4gICAgJi1pdGVtIHtcclxuICAgICAgICAuYmFkZ2Uge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1iYWRnZS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkxpc3QgR3JvdXAgLSBTaWRlYmFyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tYWluLXNpZGViYXIsXHJcbi5zaWRlYmFyIHtcclxuICAgIC5saXN0LWdyb3VwLWl0ZW0tc2VsZWN0ZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1zZWxlY3RlZC1iZyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1zZWxlY3RlZC1iYWRnZS1jb2xvcik7XHJcbiAgICAgICAgLmJhZGdlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlzdC1ncm91cC1pdGVtLXNlbGVjdGVkLWJhZGdlLWJnKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1zZWxlY3RlZC1iYWRnZS1jb2xvcilcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBNZXNzYWdlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tZXNzYWdlLFxyXG4ubWVzc2FnZS1ib2R5IHsgICAgXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG4ubWVzc2FnZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3cpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgPiAqOmxhc3QtY2hpbGR7XHJcbiAgICAgICBtYXJnaW4tYm90dG9tOiAwOyBcclxuICAgIH1cclxuICAgICYtYm9keSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtc20pO1xyXG4gICAgfVxyXG4gICAgJi1pY29uIHtcclxuICAgICAgICB3aWR0aDogNTZweDtcclxuICAgICAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXVpLWljb24tY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpO1xyXG4gICAgICAgIGltZ3tcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiA2NHB4O1xyXG4gICAgICAgIGhlaWdodDogNjRweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkgeyAgXHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1kZXNjIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICB9XHJcbiAgICAmLWFjdGlvbnMge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAmID4gLmJ0biArIC5idG4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpub3QoLmhpZGRlbikgKyAubWVzc2FnZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICB9XHJcbiAgICAmLW5vLWJvcmRlcntcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tZXNzYWdlLW5vLWRhdGEgeyAgICBcclxuICAgIG1pbi1oZWlnaHQ6IDM4MHB4O1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHsgIFxyXG4gICAgICAgIGhlaWdodDogMzIwcHg7XHJcbiAgICB9XHJcbiAgICAubWVzc2FnZS1pbWFnZXtcclxuICAgICAgICB3aWR0aDogNDhweDtcclxuICAgICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5tZXNzYWdlLXRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XHJcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtc20pO1xyXG4gICAgICAgICY6aGFzKCsgLm1lc3NhZ2UtZGVzYyl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubWVzc2FnZS1kZXNje1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1lc3NhZ2UgLSBIb3Jpem9udGFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIC5tZXNzYWdlLWgge1xyXG4gICAgICAgICYsXHJcbiAgICAgICAgLm1lc3NhZ2UtY29udGVudCB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgLm1lc3NhZ2UtYm9keSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLm1lc3NhZ2UtdGl0bGUsXHJcbiAgICAgICAgICAgIC5tZXNzYWdlLWFjdGlvbnMge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiAqICsgKiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5tZXNzYWdlLWxnIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgID4gKiArICoge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhsZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tZXNzYWdlLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgLm1lc3NhZ2UtaCB7XHJcbiAgICAgICAgLm1lc3NhZ2UtYWN0aW9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWVzc2FnZS1jb250ZW50IHtcclxuICAgICAgICAgICAgLm1lc3NhZ2UtYWN0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gXHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTWVzc2FnZSAtIFNpemVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tZXNzYWdlLWxnIHtcclxuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmcteGxnKTtcclxuICAgICYubWVzc2FnZS1uby1kYXRhIHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7XHJcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgIH1cclxuICAgIC5tZXNzYWdlLWljb24ge1xyXG4gICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eGxnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuTWVzc2FnZSAtIFN0YXRlc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ubWVzc2FnZSB7XHJcbiAgICAmLXN1Y2Nlc3Mge1xyXG4gICAgICAgIC8vYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpO1xyXG4gICAgICAgIC5tZXNzYWdlLWljb24ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdGUtc3VjY2Vzcy10ZXh0KTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zdGF0ZS1zdWNjZXNzLWJnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3RhdGUtc3VjY2Vzcy1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tZXNzYWdlLXRleHQsXHJcbiAgICAgICAgLm1lc3NhZ2UtdGl0bGUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWRhbmdlciB7XHJcbiAgICAgICAgLy9ib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcclxuICAgICAgICAubWVzc2FnZS1pY29uIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXRlLWRhbmdlci10ZXh0KTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zdGF0ZS1kYW5nZXItYmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGF0ZS1kYW5nZXItYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWVzc2FnZS10ZXh0LFxyXG4gICAgICAgIC5tZXNzYWdlLXRpdGxlIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXdhcm5pbmcge1xyXG4gICAgICAgIC8vYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XHJcbiAgICAgICAgLm1lc3NhZ2UtaWNvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0ZS13YXJuaW5nLXRleHQpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXN0YXRlLXdhcm5pbmctYmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGF0ZS13YXJuaW5nLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1lc3NhZ2UtdGV4dCxcclxuICAgICAgICAubWVzc2FnZS10aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmctY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtaW5mbyB7XHJcbiAgICAgICAgLy9ib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcclxuICAgICAgICAubWVzc2FnZS1pY29uIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXRlLWluZm8tdGV4dCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc3RhdGUtaW5mby1iZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN0YXRlLWluZm8tYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWVzc2FnZS10ZXh0LFxyXG4gICAgICAgIC5tZXNzYWdlLXRpdGxlIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaW5mby1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgJi1uYXYsXHJcbiAgICAmLXRhYnMge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1oZWFkZXItYmcpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1wYW5lbC1ib3JkZXItZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgcGFkZGluZzogMCBjYWxjKHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgLSB2YXIoLS1uYXYtbGluay1wYWRkaW5nLWgpKTtcclxuICAgICAgICAmID4gbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZm9ybSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmctZm9ybSk7XHJcbiAgICB9XHJcbiAgICAmLWRyb3Bkb3duIHtcclxuICAgICAgICB6LWluZGV4OiBhdXRvO1xyXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1mb290ZXIge1xyXG4gICAgICAgICYtc3BhY2UtYmV0d2VlbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDAgMTVweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1zbXtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wYW5lbC1mb290ZXItbGlua3tcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOm5vdCguc3VtbWFyeS1ib3R0b20pe1xyXG4gICAgICAgICAgICAuYnRuICsgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAzNjVweCl7XHJcbiAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICArIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IHZhcigtLXNwYWNpbmctMXgpIDAgMCAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtbGcge1xyXG4gICAgICAgIC5wYW5lbC1oZWFkaW5nIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtbGctaGVhZGluZy1wYWRkaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1sZy1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgICAgICAmLnBhbmVsLWJvZHktaG9zdGluZ3tcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgdmFyKC0tcGFuZWwtbGctYm9keS1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNzBweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IGg1e1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID4gcHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5wYW5lbC1pY29ue1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC03M3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMzJweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyOTJweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLTIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucGFuZWwtZm9vdGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtbGctZm9vdGVyLXBhZGRpbmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWFjdGl2ZS1iZyk7XHJcbiAgICB9XHJcbiAgICAucGFuZWwtYm9keTpub3QoLnRhYi1wYW5lKSArIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbmEucGFuZWwge1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6Zm9jdXMtdmlzaWJsZSxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLThweCwwKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1ob3Zlci1iZyk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1ob3Zlci1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXBhbmVsLWhvdmVyLXNoYWRvdyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgLSBMaXN0IEdyb3VwXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wYW5lbCB7XHJcbiAgICAubGlzdC1ncm91cCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCxcclxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5kaXNhYmxlZCxcclxuICAgICAgICAgICAgJi5kaXNhYmxlZDpmb2N1cyxcclxuICAgICAgICAgICAgJi5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLFxyXG4gICAgICAgICAgICAmLmRpc2FibGVkOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLXNpZGViYXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJiA+IGEubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgICAgICYuYWN0aXZlOmhvdmVyLFxyXG4gICAgICAgICAgICAmLmFjdGl2ZTpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saXN0LWdyb3VwLWl0ZW0tbGluay1hY3RpdmUtYmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxuICAgIC50d2VldCB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IHAge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICsgcCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiN0d2l0dGVyRmVlZE91dHB1dCB7XHJcbiAgICAgICAgLmxvYWRlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhbmVsIC0gQ29sbGFwc2FibGUgKHRpY2tldCByZXBseSlcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLWNvbGxhcHNhYmxlIHtcclxuICAgIC8vYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xyXG4gICAgPi5wYW5lbCB7XHJcbiAgICAgICAgJi1oZWFkaW5nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIHZhcigtLXVpLWJsb2NrLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIC5jb2xsYXBzZS1pY29uIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wYW5lbC10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAmLFxyXG4gICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ib2R5IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMThweCAxNXB4IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYm9keS1jb2xsYXBzZWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgLSBQcm9tb2NvZGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLXByb21vLWNvZGV7XHJcbiAgICAucGFuZWwtaGVhZGluZ3tcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxhYmVse1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBnYXA6dmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByb21vLWNvZGUtY29udGVudHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxhYmVsLXNhdmluZ3MtY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9tby1jb2RlLWFjdGlvbntcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCl7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgLSBDaGVja1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtY2hlY2sge1xyXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAmLmNoZWNrZWQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtYWN0aXZlLWJvcmRlci1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWFjdGl2ZS1iZyk7XHJcbiAgICAgICAgei1pbmRleDogOTtcclxuXHRcdC5jaGVjay1zaWduIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmRpc2FibGVkIHtcclxuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICAuY2hlY2stY29udGVudCB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNoZWNrID4gbGFiZWwge1xyXG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhbmVsLWNoZWNrIHtcclxuICAgIC5wYW5lbC1oZWFkaW5nLmNoZWNrIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIC5hY2NvdW50LXNlbGVjdC1sYWJlbHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNoZWNrIHsgICAgICAgICAgICBcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgJiA+IGxhYmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLWNoZWNrLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICYgPiAuY2hlY2tib3gtc3R5bGVkLFxyXG4gICAgICAgICAgICAmID4gLnJhZGlvLXN0eWxlZCxcclxuICAgICAgICAgICAgJiA+IC5pY2hlY2stY29udHJvbCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IGNhbGModmFyKC0tcGFuZWwtY2hlY2stcGFkZGluZykgKyAodmFyKC0tbGluZS1oZWlnaHQtbWQpIC0gdmFyKC0taWNoZWNrLXNpemUpKSAvIDIpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB2YXIoLS1wYW5lbC1jaGVjay1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHZhcigtLXBhbmVsLWNoZWNrLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgPiA6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNoZWNrLWNvbnRlbnQge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0taWNoZWNrLXNpemUpICsgdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0taWNoZWNrLXNpemUpICsgdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSkpO1xyXG4gICAgICAgIH1cclxuXHRcdD4gc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG5cdFx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jaGVjay10aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgIFtkYXRhLXRvZ2dsZT0ndG9vbHRpcCdde1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jaGVjay1zdWJ0aXRsZSB7ICAgICAgICBcclxuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC5jaGVjay1kZXNjIHtcclxuICAgICAgICBtYXJnaW46IDhweCAwIDAgMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICB9XHJcbiAgICAuY2hlY2staWNvbiB7ICAgICAgICBcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuLmNoZWNrIHtcclxuICAgICYtY3ljbGUge1xyXG4gICAgICAgIC5jaGVjay1zdWJ0aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIC5zYXZlLFxyXG4gICAgICAgICAgICAudGV4dC1wcmltYXJ5IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNhdmUtYXR0YWNoZWR7XHJcbiAgICAgICAgICAgIC5jaGVjay1zdWJ0aXRsZXtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubGFiZWwtc2F2ZXtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogLTEycHg7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMTZweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCAtIFN3aXRjaFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtc3dpdGNoIHtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWJhc2UpKTtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTtcclxuICAgIH1cclxuICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMjRweCAxNnB4O1xyXG4gICAgICAgIC5zd2l0Y2gge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnN3aXRjaC1sYWJlbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFuZWwtY2hlY2ssXHJcbi5wYW5lbC1zd2l0Y2gge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWhvdmVyLWJvcmRlci1jb2xvcik7XHJcbiAgICB9XHJcbiAgICA+IC5jaGVjayB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgICYtZ3JvdXAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0yNHB4IWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCAtIEdyb3VwXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wYW5lbC1ncm91cCB7XHJcblx0LnBhbmVsLWhlYWRpbmcge1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdH1cclxuICAgICYtY29uZGVuc2VkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAmID4gLnBhbmVsIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAmICsgLnBhbmVsIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuXHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LCBcclxuICAgICAgICAgICAgLnBhbmVsLWhlYWRpbmcgKyAucGFuZWwtY29sbGFwc2UgPiAubGlzdC1ncm91cHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiAucGFuZWwtY2hlY2t7XHJcbiAgICAgICAgICAgIGN1cnNvcjogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuYm9keS5sYWdvbS1kZWZhdWx0IHtcclxuICAgIC5wYW5lbC1ncm91cC1jb25kZW5zZWQge1xyXG4gICAgICAgICYgPiAucGFuZWwge1xyXG4gICAgICAgICAgICAmICsgLnBhbmVsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuYm9keTpub3QoLmxhZ29tLWRlZmF1bHQpIHtcclxuICAgIC5wYW5lbC1ncm91cC1jb25kZW5zZWQge1xyXG4gICAgICAgICYgPiAucGFuZWwge1xyXG4gICAgICAgICAgICAmLmNoZWNrZWQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFuZWwtY29uZmlndXJlLW9wdGlvbntcclxuICAgIC5mb3JtLWdyb3Vwe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKXtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWdyb3VwLWFkZG9uLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCAtIEFjY29yZGlvblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtYWNjb3JkaW9uIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgIC5wYW5lbCB7XHJcbiAgICAgICAgJi1oZWFkaW5nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWFjY29yZGlvbi1oZWFkaW5nLWJnKTtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICA+IC5wYW5lbC10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmZvY3VzLXZpc2libGUsICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgPiAucGFuZWwtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1hY2NvcmRpb24tYWN0aXZlLWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1hY2NvcmRpb24tYWN0aXZlLWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJvZHkge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgICAgICAgICAgID4gOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuaXMtb3BlbiB7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWFjY29yZGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLnBhbmVse1xyXG4gICAgICAgICAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgICAgICAgICAgPiAucGFuZWwtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1hY2NvcmRpb24tYWN0aXZlLWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1hY2NvcmRpb24tYWN0aXZlLWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTU1XCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtYWNjb3JkaW9uLWhvdmVyLWJvcmRlci1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAucGFuZWwtZmVlZGJhY2sge1xyXG4gICAgICAgIC5idG4tZ3JvdXAge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWJhc2Utdik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiNwYXltZW50R2F0ZXdheXNDb250YWluZXIge1xyXG4gICAgLmNoZWNrLWljb24ge1xyXG4gICAgICAgIG1heC13aWR0aDogNzBweDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBcclxuICAgICAgICBpbWcsIHN2ZyB7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYW5lbC1zdXBwb3J0LXRpY2tldHMge1xyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhbmVsIHtcclxuICAgICYtc2Vuc2l0aXZlLWRhdGEge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tYnJhbmQtc3VjY2Vzcyk7XHJcbiAgICAgICAgLnBhbmVsIHtcclxuICAgICAgICAgICAgJi1ib2R5IHtcclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY2FuY2VscmVxdWVzdCB7XHJcbiAgICAgICAgLndlbGwge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYWxlcnQge1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICAgICAgICAgIC5hbGVydHtcclxuICAgICAgICAgICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmNoZWNrYm94IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAgICAgICAgICAgPiAuY2hlY2tib3gtc3R5bGVkIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICsgcCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1pY2hlY2stc2l6ZSkgKyB2YXIoLS1jaGVja2JveC1zcGFjaW5nKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0taWNoZWNrLXNpemUpICsgdmFyKC0tc3BhY2luZy0xeCkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICsgLnBhbmVsIHtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICArIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4udGFiLXBhbmUjQWRkb25ze1xyXG4gICAgLnBhbmVsLXRpdGxle1xyXG4gICAgICAgICY6aGFzKC5ncmFwaGljLWl0ZW0pe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGFuZWwgU2lkZWJhclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXN1bW1hcnkpIHtcclxuICAgIGJvcmRlci13aWR0aDogIHZhcigtLXBhbmVsLXNpZGViYXItYm9yZGVyLXdpZHRoKTtcclxuICAgIGJvcmRlcjogIHZhcigtLXBhbmVsLXNpZGViYXItYm9yZGVyKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLXNpZGViYXItYmcpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tcGFuZWwtc2lkZWJhci1ib3gtc2hhZG93KTtcclxuICAgIC5wYW5lbC1oZWFkaW5nIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1wYW5lbC1zaWRlYmFyLWhlYWRpbmctaGVpZ2h0KTtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWhlYWRpbmctcGFkZGluZyk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtc2lkZWJhci1oZWFkaW5nLWJnKTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICsgLnBhbmVsLWZvb3RlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtc2lkZWJhci1ib2R5LXBhZGRpbmcpO1xyXG4gICAgfSBcclxuICAgIC5wYW5lbC1mb290ZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXNpZGViYXItZm9vdGVyLXBhZGRpbmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLXNpZGViYXItZm9vdGVyLWJnKTtcclxuICAgICAgICBib3JkZXItdG9wOiAwOyAgICAgXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogU3R5bGUgdGhlIHBhbmVsIHNpZGViYXIgbGlua3MgKi9cclxuICAgICY6bm90KC5wYW5lbC1zdHlsZWQtZ3JvdXApIHtcclxuICAgICAgICAubGlzdC1ncm91cCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtc2lkZWJhci1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgICAgICAmID4gLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYgPiBhLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstYmcpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstbWFyZ2luKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsLXNpZGViYXItbGluay1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSlcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlLFxyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLXNpZGViYXItbGluay1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstaG92ZXItcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstaG92ZXItcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLWhvdmVyLWljb24tY29sb3IpO1x0XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstaG92ZXItaWNvbi1jb2xvcik7XHRcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmU6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZTpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLWFjdGl2ZS1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstYWN0aXZlLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLWFjdGl2ZS1wYWRkaW5nLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtc2lkZWJhci1saW5rLWFjdGl2ZS1pY29uLWNvbG9yKTtcdFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5sb2FkaW5ne1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYW5lbC1taW5pbWlzZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5yZWNlbnQtdGlja2V0IHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAmLnZpZXctZmlsdGVyLWJ0bnMge1xyXG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAgICAgJi5hY3RpdmU6Zm9jdXMsXHJcbiAgICAgICAgICAgICYuYWN0aXZlOjpmb2N1cy12aXNpYmxlLFxyXG4gICAgICAgICAgICAmLmFjdGl2ZTpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZWVlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICM1NTU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgfVxyXG4gICAgJi5wYW5lbC1hZGQtZnVuZHMge1xyXG4gICAgICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICAgICAgLmZvcm0tZ3JvdXAge1xyXG4gICAgICAgICAgICAgICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMnB4IDBweCAwcHggMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcbiAgICB9XHJcbiAgICAmW21lbnVpdGVtbmFtZT1cIlN1cHBvcnQgUElOXCJde1xyXG4gICAgICAgIC5pbnB1dC1ncm91cC1idG57XHJcbiAgICAgICAgICAgICNkcGxfY29weVBpbntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1iZyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stYnRuLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJ0bi1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4taG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucGluY29kZS1pbnB1dC1jb250YWluZXJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5wYW5lbC1yZWdpc3RlciB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcclxuICAgICAgICAmLnBhbmVsLXNpZGViYXItZGVmYXVsdCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmcpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAmLWFkZG9uIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlYXJjaC1maWVsZC1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc2lkZWJhcntcclxuICAgIC5wYW5lbC1zaWRlYmFyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYW5lbC1zaWRlYmFyLW1hcmdpbi1ib3R0b20pO1xyXG4gICAgICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFuZWwtc2lkZWJhciB7XHJcbiAgICAucGFuZWwtdGl0bGUge1xyXG4gICAgICAgIC8qIEhpZGUgcGFuZWwgaWNvbnMgZ2VuZXJhdGVkIGJ5IFdITUNTICovXHJcbiAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKG1kKSB7XHJcbiAgICAucGFuZWwtc2lkZWJhcjpub3QoLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbikgPiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5wYW5lbC1zaWRlYmFyOm5vdCgucGFuZWwtdGlja2V0LWluZm9ybWF0aW9uKSB7XHJcbiAgICAgICAgPiAubGlzdC1ncm91cCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLXNpZGViYXI6bm90KC5wYW5lbC1yZWNlbnQtdGlja2V0cykge1xyXG4gICAgICAgID4gLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyAvL2ZvciAyIGVsZW1lbnRzIGNvbHVtbnNcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuIChtZCwgbWQpIHtcclxuICAgIC5wYW5lbC1zaWRlYmFyIHtcclxuICAgICAgICA+IC5saXN0LWdyb3VwIHtcclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDMzJSAtIDE2cHgpO1xyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMykge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAzNCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuIChzbSwgc20pIHtcclxuICAgIC5wYW5lbC1zaWRlYmFyIHtcclxuICAgICAgICA+IC5saXN0LWdyb3VwIHtcclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDE2cHgpO1xyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duICh4cykge1xyXG4gICAgLnBhbmVsLXNpZGViYXIge1xyXG4gICAgICAgID4gLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFBhbmVsIFNpZGViYXIgLSBDbGllbnQgRGV0YWlsc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1jbGllbnQtZGV0YWlscyB7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3cpO1xyXG4gICAgLnBhbmVsLWhlYWRpbmcge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwXHJcbiAgICB9XHJcbiAgICBzdHJvbmcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDQpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgKyBiciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZW0ge1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIH1cclxufVxyXG4ucGFuZWwtc2lkZWJhciB7XHJcbiAgICAmLnBhbmVsLWNsaWVudC1kZXRhaWxzLFxyXG4gICAgJi5wYW5lbC1jbGllbnQtY29udGFjdHMsXHJcbiAgICAmW21lbnVpdGVtbmFtZSo9U3VwcG9ydC1QaW5dIHtcclxuICAgICAgIC5wYW5lbC1mb290ZXIge1xyXG4gICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgICAgIC5idG46bm90KC5idG4tb3V0bGluZSkge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUodmFyKC0tdWktcGFkZGluZy1zbS12KSwgdmFyKC0tdWktcGFkZGluZy1zbS1oKSwgdmFyKC0tYnRuLXNtLWZvbnQtc2l6ZSksIHZhcigtLWxpbmUtaGVpZ2h0LXNtKSwgdmFyKC0tYnRuLXNtLWJvcmRlci1yYWRpdXMpKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idG4tc20tZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQodmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlciksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpOyAgICAgICAgIFxyXG4gICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKGxnLCBsZyl7XHJcbiAgICAgICAgICAgICAgICAuYnRuLFxyXG4gICAgICAgICAgICAgICAgLmJ0bi5idG4tb3V0bGluZXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDRweCAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICB9XHJcbiAgICB9ICAgXHJcbiAgICAmLnBhbmVsLWNsaWVudC1kZXRhaWxzIHtcclxuICAgICAgICAucGFuZWwtZm9vdGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTF4KSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTF4KSk7XHJcbiAgICBcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihsZywgbGcpe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIC5idG4sXHJcbiAgICAgICAgICAgICAgICAuYnRuLmJ0bi1vdXRsaW5le1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy0xeCkgMCB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGFuZWwgU2lkZWJhciAtIENsaWVudCBDb250YWN0c1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtc2lkZWJhciB7XHJcbiAgICAmLnBhbmVsLWNsaWVudC1jb250YWN0cyB7XHJcbiAgICAgICAgLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtOHB4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAvKiBTZXQgY29udGFjdCBpY29uICovXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTQyXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgc3BlYWs6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXBhbmVsLXNpZGViYXItbGluay1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IGxhZ29tLXNtYWxsLWljb25zICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvKiBEaXNwbGF5IG9ubHkgMyBmaXJzdCBjb250YWN0cyAqL1xyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSksXHJcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSxcclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpLFxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IGRpdntcclxuICAgICAgICAgICAgICAgICsgLmNvbnRhY3QtbW9yZXtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBQYW5lbCBTaWRlYmFyIC0gU3R5bGVkIExpc3QgR3JvdXBcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLXNpZGViYXIge1xyXG4gICAgJi5wYW5lbC1zdHlsZWQtZ3JvdXAge1xyXG4gICAgICAgIC5saXN0LWdyb3VwIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtc2lkZWJhci1saXN0LWdyb3VwLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpc3QtZ3JvdXAtYm9yZGVyKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tcGFuZWwtc2lkZWJhci1saXN0LWdyb3VwLWJveC1zaGFkb3cpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1zaWRlYmFyLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW17XHJcbiAgICAgICAgICAgICZbbWVudWl0ZW1uYW1lPVwiTWFuYWdlXCJdIHtcclxuICAgICAgICAgICAgICAgIGZvcm0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBQYW5lbCBTaWRlYmFyIC0gVGlja2V0c1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtc2lkZWJhciB7XHJcbiAgICAmLnBhbmVsLXRpY2tldC1pbmZvcm1hdGlvbntcclxuICAgICAgICAuY29sLWJ1dHRvbi1yaWdodCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogN3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY29sLWJ1dHRvbi1sZWZ0IHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogN3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmID4gLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAucHVsbC1yaWdodHtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMnB4IDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnBhbmVsLXN1cHBvcnQtaG91cnN7XHJcbiAgICAgICAgLnBhbmVsLWJvZHl7XHJcbiAgICAgICAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgLm9wZXJhdGluZy1ob3VyLXRpdGxlLFxyXG4gICAgICAgICAgICAgICAgLm9wZXJhdGluZy1ob3VyLXpvbmV7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAub3BlcmF0aW5nLWhvdXItdmFsIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bGcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3gpIHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wYW5lbC1mb290ZXJ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnN1cHBvcnQtc3RhdHVze1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDY4cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgLmxhYmVse1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnBhbmVsLXN1cHBvcnQtdGFncyB7XHJcbiAgICAgICAgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMXB4IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDExcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAmOm5vdCg6aG92ZXIpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5wYW5lbC10aWNrZXQtY2Mge1xyXG4gICAgICAgIC53LWhpZGRlbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50aWNrZXQtY2MtZW1haWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAuZW1haWwge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYucGFuZWwtdGlja2V0LWF0dGFjaGVtZW50c3tcclxuICAgICAgICAubGlzdC1ncm91cHtcclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbXtcclxuICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGFuZWwgU2lkZWJhciAtIEFkZCBGdW5kc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtc2lkZWJhciB7XHJcbiAgICAmLnBhbmVsLWFkZC1mdW5kczpub3QoLnBhbmVsLXN1bW1hcnkpIHtcclxuICAgICAgICAucGFuZWwtYm9keSB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmFsZXJ0IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2Utc20tZm9udC1zaXplKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLXNtLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLXNtLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFBhbmVsIFNpZGViYXIgLSBCb3ggU3R5bGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLXNpZGViYXIucGFuZWwtc2lkZWJhci1wcmltYXJ5IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmcpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJvcmRlcik7XHJcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10b3RhbC1mb250LWNvbG9yKTtcclxuICAgIC5wYW5lbC1oZWFkaW5nIHtcclxuICAgICAgICAucGFuZWwtdGl0bGUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLWZvb3RlciB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5wYW5lbC1jbGllbnQtZGV0YWlscyB7XHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFuZWwtc2lkZWJhci5wYW5lbC1zaWRlYmFyLXNlY29uZGFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stYmcpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stYm9yZGVyKTtcclxuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAucGFuZWwtaGVhZGluZyB7XHJcbiAgICAgICAgLnBhbmVsLXRpdGxlIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLWZvb3RlciB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnBhbmVsLWNsaWVudC1kZXRhaWxzIHtcclxuICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhbmVsLXRpY2tldC1hdHRhY2hlbWVudHMge1xyXG4gICAgYSB7XHJcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGFuZWwgU3VtbWFyeVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtc3VtbWFyeSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBmb250LXNpemU6IHZhcigtLXBhbmVsLXN1bW1hcnktdGV4dC1mb250LXNpemUpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXBhbmVsLXN1bW1hcnktdGV4dC1saW5lLWhlaWdodCk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1wYW5lbC1zdW1tYXJ5LXNoYWRvdyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1zdW1tYXJ5LWJvcmRlci1yYWRpdXMpO1xyXG4gICAgLnBhbmVsLWhlYWRpbmcge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgIC5wYW5lbC10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcGFuZWwtc3VtbWFyeS10aXRsZS1mb250LXNpemUpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcGFuZWwtc3VtbWFyeS10aXRsZS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wYW5lbC1zdW1tYXJ5LXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgKyAjcHJvZHVjdHRvdGFsIC5wYW5lbC1ib2R5LFxyXG4gICAgICAgICsgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgLm9yZGVyLXN1bW1hcnktbGlzdDpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucGFuZWwtZm9vdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgLmJ0bi1jaGVja291dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgICAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgICAgICByaWdodDogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc3VtbWFyeS1hY3Rpb25zIHtcclxuICAgICAgICAgICAgLmJ0biArIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgIG1hcmdpbjogMCB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXN1bW1hcnktbGlzdC1pdGVtLXBhZGRpbmctdikgMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICA+IC5sb2FkZXIge1xyXG4gICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgdG9wOiAyMHB4O1xyXG4gICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICByaWdodDogMjlweDtcclxuICAgICAgIH1cclxuICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgbGVmdDogMjlweDtcclxuICAgICAgIH1cclxuICAgfVxyXG4gICAgKyAuYWxlcnQtcGFuZWwge1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteGxnKSk7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMThweDtcclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hbGVydC1pY29uIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAzN3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5wYW5lbC1zaWRlYmFye1xyXG4gICAgICAgICsgLmFsZXJ0LXBhbmVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHhsZykpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHQuc3VtbWFyeS1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcblx0fVxyXG4gICAgLnByaWNlIHtcclxuICAgICAgICAmICsgLmJ0biB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYW5lbC1zdW1tYXJ5LWxpc3QtaXRlbS1wYWRkaW5nLXYpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdW1tYXJ5LWFjdGlvbnMge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYW5lbC1zdW1tYXJ5LWxpc3QtaXRlbS1wYWRkaW5nLXYpO1xyXG4gICAgfVxyXG4gICAgLnByaWNlLWFtb3VudC10b3RhbHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWgyKTtcclxuICAgIH1cclxuICAgIC5wcmljZS1hbW91bnQtcHJvbW97XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxuICAgIH1cclxuICAgICY6bm90KC5wYW5lbC1zdW1tYXJ5LXByaW1hcnkpOm5vdCgucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkpe1xyXG4gICAgICAgIC5saXN0LWl0ZW0tcHJvbW97XHJcbiAgICAgICAgICAgIC5pdGVtLW5hbWUsLml0ZW0tdmFsdWV7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWxhYmVsLXNhdmluZ3MtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcmljZS1hbW91bnQtcHJvbW97XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuU3VtbWFyeSBMaXN0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zdW1tYXJ5LXRvdGFsIHtcclxuICAgICsgLnN1bW1hcnktY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXBhbmVsLXN1bW1hcnktbGlzdC1pdGVtLXBhZGRpbmctdik7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tcGFuZWwtc3VtbWFyeS1saXN0LWl0ZW0tcGFkZGluZy12KTtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuLnN1bW1hcnktY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IHZhcigtLXBhbmVsLXN1bW1hcnktY29udGVudC1tYXgtaGVpZ2h0KTtcclxuICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgKyAxcHgpO1xyXG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICB3aWR0aDogdmFyKC0tc2Nyb2xsYmFyLXdpZHRoKTtcclxuICAgIH1cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItdHJhY2stYmcpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tc2Nyb2xsYmFyLXdpZHRoKSAvMik7XHJcbiAgICB9XHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXNjcm9sbGJhci13aWR0aCkgLzIpO1xyXG4gICAgfVxyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhci10aHVtYi1ob3Zlci1iZyk7XHJcbiAgICB9XHJcbn1cclxuLnN1bW1hcnktbGlzdCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIHJvdy1nYXA6IHZhcigtLXBhbmVsLXN1bW1hcnktbGlzdC1nYXAtdik7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1zdW1tYXJ5LWxpc3QtaXRlbS1wYWRkaW5nLXYpIDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgJjpmaXJzdC1jaGlsZDpub3QoLnN1bW1hcnktbGlzdC1jb25maWdvcHRpb25zKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQ6bm90KC5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9ucykge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICAmOmhhcygrIC5zdW1tYXJ5LWxpc3QuaGlkZGVuKXtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJi1yZWN1cnJpbmcge1xyXG4gICAgICAgIC5saXN0LWl0ZW06bm90KC5saXN0LWl0ZW0tdGl0bGUpIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zdWJ0b3RhbHtcclxuICAgICAgICByb3ctZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xyXG4gICAgfVxyXG4gICAgLmxpc3QtaXRlbSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgJi1wcm9tb3tcclxuICAgICAgICAgICAgLml0ZW0tbmFtZXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1tYWluIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcGFuZWwtc3VtbWFyeS1tYWluLWl0ZW0tZm9udC1zaXplKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXBhbmVsLXN1bW1hcnktbWFpbi1pdGVtLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXBhbmVsLXN1bW1hcnktbWFpbi1pdGVtLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgLml0ZW0tdmFsdWV7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5saXN0LWl0ZW0tc2VydmljZXN7XHJcbiAgICAgICAgICAgICAgICBhe2N1cnNvcjogcG9pbnRlcjt9XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICArIC5saXN0LWl0ZW0tZG9tYWlue1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcHJvbW97XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTRweDtcclxuICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaXRlbS1uYW1lLC5pdGVtLXZhbHVle1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5mYWRlZCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLml0ZW0tdmFsdWUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxpbmUtdGhyb3VnaCxcclxuICAgICAgICAgICAgW3N0eWxlKj1cImZvbnQtc2l6ZTogMS4yZW07IHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1wiXSAge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGluaGVyaXQhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5pdGVtLXZhbHVlLWZyZWV7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pdGVtLW5hbWUge1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kb21haW4ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7ICAgIFxyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpOyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaXRlbS1hY3Rpb25zIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRpc2NvdW50X2NlbnRlci1iYXNlX2NhcnRfb3JkZXJfdG90YWwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcGFuZWwtc3VtbWFyeS10ZXh0LWZvbnQtc2l6ZSkhaW1wb3J0YW50O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wYW5lbC1zdW1tYXJ5LXRleHQtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmljZS1zYXZpbmdzLWNvbG9yKTtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gQ29uZmlnIE9wdGlvbnMgU3VtbWFyeSBMaXN0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbntcclxuICAgICY6bm90KC5zaG93LWNvbmZvcHRpb24tcHJpY2Upe1xyXG4gICAgICAgIC5zdW1tYXJ5LWxpc3QtY29uZmlnb3B0aW9uc3tcclxuICAgICAgICAgICAgJi5ob3ZlcmFibGV7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAuaXRlbS12YWx1ZXtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgICAqOm5vdCguaXRlbS12YWx1ZS1mcmVlKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAuaXRlbS1uYW1le1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAubGlzdC1pdGVtIHtcclxuICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0tdmFsdWV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IG1pbi1jb250ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAqe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWluLWNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0tbmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pdGVtLW9wdGlvbm5hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20tdikgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1jb2xsYXBzZS1iZyk7XHJcbiAgICBnYXA6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAtNHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgLmxpc3QtaXRlbSB7XHJcbiAgICAgICAgcGFkZGluZzogMnB4IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTtcclxuICAgICAgICAuaXRlbS1uYW1le1xyXG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgbWluLXdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgIC5pdGVtLW9wdGlvbm5hbWV7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaXRlbS12YWx1ZXtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaG93LWZyZWUtbGFuZyB7XHJcbiAgICAuc3VtbWFyeS1saXN0IHtcclxuICAgICAgICAubGlzdC1pdGVtIHtcclxuICAgICAgICAgICAgLml0ZW0tdmFsdWUge1xyXG4gICAgICAgICAgICAgICAgLml0ZW0tdmFsdWUtZnJlZXtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgKyBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhbmVsIFN1bW1hcnkgQ29uZmlndXJhdGlvblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5wYW5lbC1zdW1tYXJ5LWNvbmZpZ3VyYXRpb24ge1xyXG4gICAgLnN1bW1hcnktY29udGVudHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgIH1cclxuICAgIC5zdW1tYXJ5LWxpc3R7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgIH1cclxuICAgIC5zdW1tYXJ5LWl0ZW0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgIC5pdGVtLW5hbWV7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg4KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg4KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDUwcHg7XHJcbiAgICAgICAgICAgIHdlYmtpdC1saW5lLWNsYW1wOiAxO1xyXG4gICAgICAgICAgICB3ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAubmFtZSxcclxuICAgICAgICAgICAgLnN1Ym5hbWV7XHJcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB3ZWJraXQtbGluZS1jbGFtcDogMTtcclxuICAgICAgICAgICAgICAgIHdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3VibmFtZXtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4cyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhzKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5uYW1le1xyXG4gICAgICAgICAgICAgICAgJjpoYXMoLnF0eS1udW1iZXItY29udGFpbmVyKXtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICgyMHB4ICsgNnB4KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+c3BhbntcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLml0ZW0tdmFsdWV7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgICAgICAgICAmLXByaWNle1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zZXR1cC1mZWV7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14eHMpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4cyk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1hZGRvbntcclxuICAgICAgICAgICAgLml0ZW0tbmFtZXtcclxuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB3ZWJraXQtbGluZS1jbGFtcDogMTtcclxuICAgICAgICAgICAgICAgIHdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaXRlbS12YWx1ZS1mcmVle1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXByb21vY29kZXtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIC5pdGVtLW5hbWV7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tbGFiZWwtc2F2aW5ncy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLml0ZW0tdmFsdWV7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1zYXZpbmdzLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnF0eS1udW1iZXItY29udGFpbmVye1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogbWluLWNvbnRlbnQ7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgcGFkZGluZzogMCAycHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcclxuICAgICAgICAucXR5LW51bWJlcntcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4cyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYW5lbC1mb290ZXJ7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgIC5zdW1tYXJ5LWl0ZW17XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICAmOmhhcygrIC5zdW1tYXJ5LWl0ZW0tdGF4Mil7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGF4e1xyXG4gICAgICAgICAgICAgICAgLml0ZW0tbmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAubmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5ncmFwaGljLWl0ZW17XHJcbiAgICAgICAgJjpoYXMoLnN2Zy1pY29uKXtcclxuICAgICAgICAgICAgcGFkZGluZzogM3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuaGlkZS1ob3N0bmFtZXtcclxuICAgICAgICAuc3VibmFtZXtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCBTdW1tYXJ5IENvbmZpZ3VyYXRpb24gUHJpbWFyeS9TZWNvbmRhcnkgU3R5bGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4ucGFuZWwtc3VtbWFyeS1zZWNvbmRhcnkucGFuZWwtc3VtbWFyeS1jb25maWd1cmF0aW9uLFxyXG4ucGFuZWwtc3VtbWFyeS1wcmltYXJ5LnBhbmVsLXN1bW1hcnktY29uZmlndXJhdGlvbiB7XHJcbiAgICAuc3VtbWFyeS1saXN0LWNvbmZpZ29wdGlvbnMge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IzAwMDAwMDE0O1xyXG4gICAgICAgIC5pdGVtLW5hbWV7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgIC5pdGVtLW9wdGlvbm5hbWV7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5ob3ZlcmFibGV7XHJcbiAgICAgICAgICAgLmxpc3QtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtLXZhbHVle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAqe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0tbmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pdGVtLW9wdGlvbm5hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1bW1hcnktaXRlbXtcclxuICAgICAgICAuaXRlbS1uYW1le1xyXG4gICAgICAgICAgICAubmFtZXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3VibmFtZXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pdGVtLXZhbHVle1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIC5zZXR1cC1mZWV7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLWZvb3RlcntcclxuICAgICAgICAuc3VtbWFyeS1pdGVte1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZGl2aWRlci1jb2xvcilcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucXR5LW51bWJlci1jb250YWluZXJ7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjNEO1xyXG4gICAgICAgIC5xdHktbnVtYmVye1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmdyYXBoaWMtaXRlbXtcclxuICAgICAgICAuZ3JhcGhpYy1pdGVtLWJne1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGMjk7XHJcbiAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gIFxyXG4gICAgfSBcclxufVxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBQYW5lbCBTdW1tYXJ5IC0gTWF4IEhlaWdodFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAubWFpbi1zaWRlYmFyIC5zaWRlYmFyLXN0aWNreS1zdW1tYXJ5IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDIgKiB2YXIoLS1tYWluLXNpZGViYXItc3RpY2t5LXRvcCkpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRvcCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgIC5wYW5lbC1zdW1tYXJ5IHtcclxuICAgICAgICAgICAgJixcclxuICAgICAgICAgICAgI3Byb2R1Y3R0b3RhbCxcclxuICAgICAgICAgICAgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnBhbmVsLWhlYWRpbmcge1xyXG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAwO1xyXG4gICAgICAgICAgICAgICAgLnN1bW1hcnktY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICArIC5hbGVydC1wYW5lbCB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2Nyb2xsLXVwIC5tYWluLXNpZGViYXIgLnNpZGViYXItc3RpY2t5LXN1bW1hcnkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyICogdmFyKC0tbWFpbi1zaWRlYmFyLXN0aWNreS10b3ApIC0gdmFyKC0tYXBwLW5hdi1oZWFkZXItaGVpZ2h0KSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFBhbmVsIFN1bW1hcnkgLSBPdGhlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtc3VtbWFyeS5wYXltZW50LWZvcm0ge1xyXG4gICAgcCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gICAgdGFibGUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogdW5zZXQ7XHJcbiAgICAgICAgdGJvZHksIHRyLCB0ZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItY29sbGFwc2U6IHVuc2V0O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0Ym9keSB0ciB0ZCArIHRke1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXHJcbiAgICAuYnRuIHtcclxuICAgICAgICBtYXJnaW46IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIGk6bm90KC5mYS1zcGlubmVyKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5mYS1zcGlubmVye1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTZweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRuLXNtIHtcclxuICAgICAgICBAaW5jbHVkZSBidXR0b24tc2l6ZSh2YXIoLS11aS1wYWRkaW5nLWJhc2UtdiksIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSksIHZhcigtLWZvbnQtc2l6ZS1iYXNlKSwgdmFyKC0tbGluZS1oZWlnaHQtYmFzZSksIHZhcigtLWJ0bi1iYXNlLWJvcmRlci1yYWRpdXMpKTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG4ucGFuZWwtc3VtbWFyeXtcclxuICAgICYudmlldy1pbnZvaWNlIHtcclxuICAgICAgICAuZm9ybS1ncm91cCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgICAgICA+IHNlbGVjdCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5wYW5lbC1zdW1tYXJ5LWRlZmF1bHR7XHJcbiAgICAgICAgJi52aWV3LWludm9pY2V7XHJcbiAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1sYWJlbC1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBheW1lbnQtZm9ybSB7XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLml0ZW0tZG9tYWlue1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5wYW5lbC1zdW1tYXJ5LXByaW1hcnl7XHJcbiAgICAgICAgJi52aWV3LWludm9pY2V7XHJcbiAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5wYW5lbC1zdW1tYXJ5LXNlY29uZGFyeXtcclxuICAgICAgICAmLnZpZXctaW52b2ljZXtcclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFuZWwtc3VtbWFyeS5wYW5lbC1hZGQtZnVuZHMge1xyXG4gICAgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgIC5saXN0LWluZm8ge1xyXG4gICAgICAgICAgICAubGlzdC1pbmZvLXRpdGxlLFxyXG4gICAgICAgICAgICAubGlzdC1pbmZvLXRleHQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saXN0LWNvbG9yLWZhZGVkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFuZWwtc2lkZWJhci5wYW5lbC10aWNrZXQtaW5mb3JtYXRpb24gLnBhbmVsLWZvb3RlciB7ICAgICAgICAgICBcclxuICAgIC5idG4geyBcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgICAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUodmFyKC0tdWktcGFkZGluZy1iYXNlLXYpLCB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCksIHZhcigtLWJ0bi1iYXNlLWZvbnQtc2l6ZSksIHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpLCB2YXIoLS1idG4tYmFzZS1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblN0eWxlIFByaW1hcnlcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLXN1bW1hcnktcHJpbWFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKTtcclxuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtZmFkZWQtY29sb3IpO1xyXG4gICAgLnBhbmVsLWhlYWRpbmcge1xyXG4gICAgICAgIC5wYW5lbC10aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucGFuZWwtZm9vdGVyIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJpY2Uge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpO1xyXG4gICAgICAgIC5wcmljZS10b3RhbCxcclxuICAgICAgICAucHJpY2UtdGl0bGV7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10b3RhbC1mb250LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdW1tYXJ5LWxpc3Qge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgJi1yZWN1cnJpbmcge1xyXG4gICAgICAgICAgICAubGlzdC1pdGVtOm5vdCgubGlzdC1pdGVtLXRpdGxlKSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpc3QtaXRlbSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10b3RhbC10ZXh0LWZvbnQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtbWFpbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5mYWRlZCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaXRlbS12YWx1ZSB7XHJcbiAgICAgICAgICAgICAgICAubGluZS10aHJvdWdoLFxyXG4gICAgICAgICAgICAgICAgW3N0eWxlKj1cImZvbnQtc2l6ZTogMS4yZW07IHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1wiXSAge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5pdGVtLW5hbWUge1xyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLml0ZW0tYWN0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kaXNjb3VudF9jZW50ZXItYmFzZV9jYXJ0X29yZGVyX3RvdGFsIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1bW1hcnktdG90YWwge1xyXG4gICAgICAgICsgLnN1bW1hcnktY29udGVudCB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICBcclxuICAgIC5wYXltZW50LWZvcm0ge1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9ybS1ncm91cCB7XHJcbiAgICAgICAgLmNvbnRyb2wtbGFiZWwgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5TdHlsZSBTZWNvbmRhcnlcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLXN1bW1hcnktc2Vjb25kYXJ5IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZyk7XHJcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3ItZmFkZWQpO1xyXG4gICAgLnBhbmVsLWhlYWRpbmcge1xyXG4gICAgICAgIC5wYW5lbC10aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYW5lbC1mb290ZXIge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByaWNlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRvdGFsLWZvbnQtY29sb3IpO1xyXG4gICAgICAgIC5wcmljZS10b3RhbCxcclxuICAgICAgICAucHJpY2UtdGl0bGV7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvcik7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5saXN0LWdyb3VwIHtcclxuICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3ItZmFkZWQpO1xyXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdG90YWwtZm9udC1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3VtbWFyeS1saXN0IHtcclxuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTtcclxuICAgICAgICAmLXJlY3VycmluZyB7XHJcbiAgICAgICAgICAgIC5saXN0LWl0ZW06bm90KC5saXN0LWl0ZW0tdGl0bGUpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGl0bGUtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5saXN0LWl0ZW0ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10b3RhbC10ZXh0LWZvbnQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtbWFpbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmZhZGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvci1mYWRlZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLml0ZW0tdmFsdWUge1xyXG4gICAgICAgICAgICAgICAgLmxpbmUtdGhyb3VnaCxcclxuICAgICAgICAgICAgICAgIFtzdHlsZSo9XCJmb250LXNpemU6IDEuMmVtOyB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcIl0gIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3ItZmFkZWQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5pdGVtLW5hbWUge1xyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yLWZhZGVkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaXRlbS1hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvci1mYWRlZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRpc2NvdW50X2NlbnRlci1iYXNlX2NhcnRfb3JkZXJfdG90YWwge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3VtbWFyeS10b3RhbCB7XHJcbiAgICAgICAgKyAuc3VtbWFyeS1jb250ZW50IHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcbiAgICAucGF5bWVudC1mb3JtIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvcm0tZ3JvdXAge1xyXG4gICAgICAgIC5jb250cm9sLWxhYmVsIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yLWZhZGVkKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYW5lbC1zdW1tYXJ5IHtcclxuICAgICYtc2Vjb25kYXJ5LFxyXG4gICAgJi1wcmltYXJ5IHtcclxuICAgICAgICAuc3VtbWFyeS1jb250ZW50IHtcclxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXNlY29uZGFyeS10cmFjay1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXNlY29uZGFyeS10aHVtYi1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXNlY29uZGFyeS10aHVtYi1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICAgICAgIFxyXG59ICBcclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuU3VtbWFyeSAtIE1vYmlsZSBcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLm9yZGVyLXN1bW1hcnktbW9iIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW5vbmUpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwOyAgICAgICAgXHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWJhc2UpO1xyXG5cclxuICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgLmJ0bi1jaGVja291dCB7XHJcbiAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKGxnLCBsZykge1xyXG4gICAgLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUge1xyXG4gICAgICAgIC5oaWRlLW1vYiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5vcmRlci1zdW1tYXJ5LW1vYiB7XHJcbiAgICAgICAgICAgIC5oaWRlLW1vYiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5vcmRlci1zdW1tYXJ5LW1vYiB7XHJcbiAgICAgICAgICAgICAgICAuYnRuLWNoZWNrb3V0IHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5pcy1maXhlZHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogdmFyKC0temluZGV4LWZpeGVkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWlue1xyXG4gICAgICAgICAgICAubWFpbi1ib2R5e1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAuaGlkZS1tb2Ige1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAub3JkZXItc3VtbWFyeS1tb2Ige1xyXG4gICAgICAgICYuaXMtZml4ZWR7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgei1pbmRleDogdmFyKC0temluZGV4LWZpeGVkKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bi1jaGVja291dCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAmLmJ0bi1wcmltYXJ5LWZhZGVkLmRpc2FibGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcclxuICAgICAgICAgICAgICAgIC5zcGlubmVyID4gZGl2IHsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmJ0bi1wcmltYXJ5LmRpc2FibGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYWdlLWNvbmZpZ3VyZXByb2R1Y3Rkb21haW4ge1xyXG4gICAgICAgIC5tYWluLWJvZHkge1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBvcG92ZXIgLSBVc2VyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5jbGllbnQtYWxlcnRzIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB3aWR0aDogMzIwcHg7XHJcbiAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTYwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNjBweDtcclxuICAgIH1cclxuICAgIC5jbGllbnQtYWxlcnRzLWhlYWRlciB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAuYXJyb3cge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24taGVhZGVyIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpub3QoOmxhc3Qtb2YtdHlwZSl7XHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9ICAgICAgICBcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXVpLW5hdi1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCkgdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWZhZGVkKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS11aS1uYXYtc2Vjb25kYXJ5LWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDJweDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1lc3NhZ2Uge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMzJweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5ub25lIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgcGFkZGluZzogMzJweCAzMnB4IDI0cHg7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgLm5vbmUtaWNvbntcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2NHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2NHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgICAgICAuc3ZnLWljb24tb3V0bGluZS1zIHtcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLXN2Zy1pY29uLWNvbG9yLXNlY29uZGFyeSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3ZnLWljb24tcHJpbWUuc3ZnLWljb24tc3Ryb2tlIHtcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLXN2Zy1pY29uLWNvbG9yLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCl7XHJcbiAgICAuY2xpZW50LWFsZXJ0cyB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgLmNsaWVudC1hbGVydHMge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICByaWdodDogLTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IC01MHB4O1xyXG4gICAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAmLm5vbmUge1xyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qb3BvdmVyIC0gTG9naW5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmxvZ2luLXBvcG92ZXIge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpO1xyXG4gICAgLmZvcm0tZ3JvdXAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgIH1cclxuICAgIGhyIHtcclxuICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgfSAgIFxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBvcG92ZXIgLSBDcmVkaXQgQ2FyZCBDdnZcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuW2RhdGEtY2MtcG9wb3Zlcl17XHJcbiAgICB0b3A6IC0xNjZweDtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICByaWdodDogLTk1cHg7XHJcbn0iLCIuc2VjdGlvbiB7XHJcbiAgICAuc2VjdGlvbi1oZWFkZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWNhLXNlY3Rpb24taGVhZGVyLW1hcmdpbi1ib3R0b20pO1xyXG4gICAgICAgICYgPiA6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgPiBwe1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0xeCkpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTR4KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zbXtcclxuICAgICAgICAuc2VjdGlvbi1oZWFkZXJ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWNhLXNlY3Rpb24tc20taGVhZGVyLW1hcmdpbi1ib3R0b20pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWN0aW9uLWRlc2MgeyAgICAgICAgXHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNhLXNlY3Rpb24tZGVzYy1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1jYS1zZWN0aW9uLWRlc2MtZm9udC1zaXplKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tY2Etc2VjdGlvbi1kZXNjLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tY2Etc2VjdGlvbi1kZXNjLWxpbmUtaGVpZ2h0KTtcclxuICAgIH1cclxuICAgICYgPiA6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgICYgKyAuc2VjdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTtcclxuICAgIH1cclxuICAgICYuaGlkZGVuOmZpcnN0LWNoaWxkICsgLnNlY3Rpb24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcbn1cclxuLnNlY3Rpb24sXHJcbi5zZWN0aW9uLWhvb2stb3V0cHV0IHtcclxuICAgIC5zZWN0aW9uLXRpdGxlLFxyXG4gICAgJiA+IGgzIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWNhLXNlY3Rpb24tdGl0bGUtZm9udC1zaXplKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tY2Etc2VjdGlvbi10aXRsZS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWNhLXNlY3Rpb24tdGl0bGUtbGluZS1oZWlnaHQpO1xyXG4gICAgfVxyXG59XHJcbi5zZWN0aW9uLXNtIHsgICAgXHJcbiAgICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1jYS1zZWN0aW9uLXNtLXRpdGxlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWNhLXNlY3Rpb24tc20tdGl0bGUtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1jYS1zZWN0aW9uLXNtLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxuICAgIH1cclxuICAgICYgICsgLnNlY3Rpb24tc20geyAgICBcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1jYS1zZWN0aW9uLXNtLXNwYWNpbmcpO1xyXG4gICAgfVxyXG59XHJcbi5tYWluLWNvbnRlbnQgPiAuc2VjdGlvbiB7XHJcbiAgICA+IC50YWJsZS1yZXNwb25zaXZlIHtcclxuICAgICAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgICA+IC50YWJsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIE1vZHVsZSBPdXRwdXQgLSB1c2VkIGZvciBlZy4gUHJvZHVjdCBDcm9zcy1TZWxsaW5nIEZvciBXSE1DUyBieSBNb2R1bGVzIEdhcmRlbiAqL1xyXG4uc2VjdGlvbi1tb2R1bGUtb3V0cHV0e1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgIGZsZXg6IHVuc2V0O1xyXG4gICAgJjplbXB0eXtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwIWltcG9ydGFudDtcclxuICAgIH1cclxufSIsIi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFN0YXR1cyAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnN0YXR1cyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtY29sb3IpO1xyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN0YXR1cy1jb2xvcik7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY3VzdG9tIHtcclxuICAgICAgICAvLyBwYWRkaW5nOiAxcHg7XHJcbiAgICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XHJcbiAgICB9XHJcbiAgICBcclxuICAgICYuZG90LWhpZGRlbntcclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnN0YXR1cy1pY29ue1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1pY29uLXRpY2tldHtcclxuICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtaWNvbi10aWNrZXQsXHJcbiAgICAmLnN0YXR1cy10aWNrZXR7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG4gICAgJi1jb2x7XHJcbiAgICAgICAgPmRpdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblN0YXR1cyAtIENvbG9yc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbiAuZmlsdGVyLW5hbWV7XHJcbiAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7XHJcbiAgICA+IHNwYW57XHJcbiAgICAgICAgJltkYXRhLXN0YXR1cz1cInRpY2tldFwiXSxcclxuICAgICAgICAmLnN0YXR1cy10aWNrZXR7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tZGVmYXVsdC1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuIH1cclxuXHJcbi52aWV3LWZpbHRlci1idG5ze1xyXG4gICAgLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgPiBzcGFuLnN0YXR1c3tcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sYWdvbXtcclxuICAgICY6bm90KC50aWNrZXQtdGFibGUpe1xyXG4gICAgICAgIC5zdGF0dXMge1xyXG4gICAgICAgICAgICAmLWRlZmF1bHR7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLWRlZmF1bHQpO1xyXG4gICAgICAgICAgICAgICAgJjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpe1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLWRlZmF1bHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWRlZmF1bHQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtcGVuZGluZ3RyYW5zZmVyLFxyXG4gICAgICAgICAgICAmLXBlbmRpbmctdHJhbnNmZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1wZW5kaW5nLXRyYW5zZmVyKTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1wZW5kaW5nLXRyYW5zZmVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtcGVuZGluZy10cmFuc2Zlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXBlbmRpbmctdHJhbnNmZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ICBcclxuICAgICAgICAgICAgJi1wZW5kaW5nIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtcGVuZGluZyk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtcGVuZGluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSl7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLXBlbmRpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1wZW5kaW5nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSAgXHJcbiAgICAgICAgICAgICYtYWN0aXZlLFxyXG4gICAgICAgICAgICAmLW9wZW4sXHJcbiAgICAgICAgICAgICYtY29tcGxldGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtYWN0aXZlKTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1hY3RpdmUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pe1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1hY3RpdmUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1hY3RpdmUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtc3VzcGVuZGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtc3VzcGVuZGVkKTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1zdXNwZW5kZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pe1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1zdXNwZW5kZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1zdXNwZW5kZWQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtY3VzdG9tZXItcmVwbHkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1jdXN0b21lci1yZXBseSk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdCguc3RhdHVzLXRpY2tldCk6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtY3VzdG9tZXItcmVwbHkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pe1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1jdXN0b21lci1yZXBseSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWN1c3RvbWVyLXJlcGx5KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWZyYXVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtZnJhdWQpO1xyXG4gICAgICAgICAgICAgICAgJjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpe1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLWZyYXVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZnJhdWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1mcmF1ZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1hbnN3ZXJlZCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLWZyYXVkKTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1mcmF1ZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSl7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLWZyYXVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZnJhdWQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtZXhwaXJlZCxcclxuICAgICAgICAgICAgJi10cmFuc2ZlcnJlZGF3YXksXHJcbiAgICAgICAgICAgICYtdHJhbnNmZXJyZWQtYXdheSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLWV4cGlyZWQpO1xyXG4gICAgICAgICAgICAgICAgJjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpe1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLWV4cGlyZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pe1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1leHBpcmVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZXhwaXJlZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1wZW5kaW5ncmVnaXN0cmF0aW9uLFxyXG4gICAgICAgICAgICAmLXBlbmRpbmctcmVnaXN0cmF0aW9uLFxyXG4gICAgICAgICAgICAmLXJlZGVtcHRpb24sXHJcbiAgICAgICAgICAgICYtZ3JhY2Uge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1ncmFjZSk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZ3JhY2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pe1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1ncmFjZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWdyYWNlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWRyYWZ0LFxyXG4gICAgICAgICAgICAmLXRlcm1pbmF0ZWQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy10ZXJtaW5hdGVkKTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy10ZXJtaW5hdGVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtdGVybWluYXRlZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXRlcm1pbmF0ZWQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtb25ob2xkLFxyXG4gICAgICAgICAgICAmLW9uLWhvbGQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1vbmhvbGQpO1xyXG4gICAgICAgICAgICAgICAgJjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpe1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLW9uaG9sZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSl7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLW9uaG9sZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLW9uaG9sZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pbnByb2dyZXNzIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtaW5wcm9ncmVzcyk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtaW5wcm9ncmVzcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSl7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLWlucHJvZ3Jlc3MpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1pbnByb2dyZXNzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWNsb3NlZCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLWNsb3NlZCk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtY2xvc2VkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtY2xvc2VkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtY2xvc2VkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXBhaWQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1wYWlkKTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1wYWlkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtcGFpZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXBhaWQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdW5wYWlkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtdW5wYWlkKTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy11bnBhaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pe1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy11bnBhaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy11bnBhaWQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtY2FuY2VsbGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtY2FuY2VsbGVkKTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1jYW5jZWxsZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pe1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1jYW5jZWxsZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1jYW5jZWxsZWQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtY29sbGVjdGlvbnMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1jb2xsZWN0aW9ucyk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtY29sbGVjdGlvbnMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN0YXR1cy1pY29uOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pe1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1jb2xsZWN0aW9ucyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWNvbGxlY3Rpb25zKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXJlZnVuZGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtcmVmdW5kZWQpO1xyXG4gICAgICAgICAgICAgICAgJjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpe1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLXJlZnVuZGVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtcmVmdW5kZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1yZWZ1bmRlZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1wYXltZW50LXBlbmRpbmcge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1wYXltZW50LXBlbmRpbmcpO1xyXG4gICAgICAgICAgICAgICAgJjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpe1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLXBheW1lbnQtcGVuZGluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSl7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLXBheW1lbnQtcGVuZGluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXBheW1lbnQtcGVuZGluZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi13YXJuaW5nIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtd2FybmluZyk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtd2FybmluZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RhdHVzLWljb246bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSl7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLXdhcm5pbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy13YXJuaW5nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWRlbGl2ZXJlZCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLWRlbGl2ZXJlZCk7XHJcbiAgICAgICAgICAgICAgICAmOm5vdChbZGF0YS1zdGF0dXM9XCJ0aWNrZXRcIl0pOm5vdCguc3RhdHVzLXRpY2tldCl7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZGVsaXZlcmVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZGVsaXZlcmVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtZGVsaXZlcmVkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWFjY2VwdGVkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtYWNjZXB0ZWQpO1xyXG4gICAgICAgICAgICAgICAgJjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKTpub3QoLnN0YXR1cy10aWNrZXQpe1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLWFjY2VwdGVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtYWNjZXB0ZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy1hY2NlcHRlZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1sb3N0LFxyXG4gICAgICAgICAgICAmLWRlYWQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1sb3N0KTtcclxuICAgICAgICAgICAgICAgICY6bm90KFtkYXRhLXN0YXR1cz1cInRpY2tldFwiXSk6bm90KC5zdGF0dXMtdGlja2V0KXtcclxuICAgICAgICAgICAgICAgICAgICA+IHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy1sb3N0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtbG9zdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWxvc3QpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtZGVmYXVsdCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLWRlZmF1bHQpO1xyXG4gICAgICAgICAgICAgICAgPiBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLWRlZmF1bHQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtaWNvbjpub3QoW2RhdGEtc3RhdHVzPVwidGlja2V0XCJdKXtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtZGVmYXVsdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWRlZmF1bHQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5yZXF1ZXN0b3ItdHlwZSB7XHJcbiAgICAmLW9wZXJhdG9yIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtb3BlcmF0b3ItdGV4dC1jb2xvcik7XHJcbiAgICAgICAgLnN0YXR1cy1pY29ue1xyXG4gICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy10eXBlLW9wZXJhdG9yLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYsXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtdHlwZS1vcGVyYXRvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1vd25lciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy10eXBlLW93bmVyLXRleHQtY29sb3IpO1xyXG4gICAgICAgIC5zdGF0dXMtaWNvbntcclxuICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtdHlwZS1vd25lci10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLFxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtb3duZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtYXV0aG9yaXplZHVzZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zdGF0dXMtdHlwZS1hdXRob3JpemVkdXNlci10ZXh0LWNvbG9yKTtcclxuICAgICAgICAuc3RhdHVzLWljb257XHJcbiAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgIHBhdGh7XHJcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3RhdHVzLXR5cGUtYXV0aG9yaXplZHVzZXItdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJixcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy10eXBlLWF1dGhvcml6ZWR1c2VyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXJlZ2lzdGVyZWR1c2VyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtcmVnaXN0ZXJlZHVzZXItdGV4dC1jb2xvcik7XHJcbiAgICAgICAgLnN0YXR1cy1pY29ue1xyXG4gICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN0YXR1cy10eXBlLXJlZ2lzdGVyZWR1c2VyLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYsXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGF0dXMtdHlwZS1yZWdpc3RlcmVkdXNlcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zdWJhY2NvdW50IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtc3ViYWNjLXRleHQtY29sb3IpO1xyXG4gICAgICAgIC5zdGF0dXMtaWNvbntcclxuICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtdHlwZS1zdWJhY2MtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJixcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICBhcigtLXN0YXR1cy10eXBlLXN1YmFjYyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1ndWVzdCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy10eXBlLWd1ZXN0LXRleHQtY29sb3IpO1xyXG4gICAgICAgIC5zdGF0dXMtaWNvbntcclxuICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgcGF0aHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdGF0dXMtdHlwZS1ndWVzdC10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLFxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLXR5cGUtZ3Vlc3QpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuIiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gVGFibGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4udGFibGUge1xyXG4gICAgLmNlbGwtYWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgfTtcclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgPio6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuLWljb24ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5vcGVuIC5idG4taWNvbixcclxuICAgICAgICAuYnRuLWljb24ge1xyXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi0tbGFzdCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICAgICAgICAgICAgd2lkdGg6IDkwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNlbGwtY2hlY2tib3gge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC5jaGVja2JveC1zdHlsZWQge1xyXG4gICAgICAgICAgICBtYXJnaW46IDNweCAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gVGFibGUgLSBUb3BcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnRhYmxlLXRvcCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLXRhYmxlLWNvbnRhaW5lci1oZWFkZXItaGVpZ2h0KTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMngpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS10YWJsZS1jb250YWluZXItaGVhZGVyLWJnKTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS10YWJsZS1ib3JkZXItY29sb3IpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdGFibGUtY29udGFpbmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLXRhYmxlLWNvbnRhaW5lci1ib3JkZXItcmFkaXVzKSAwIDA7XHJcbiAgICBsYWJlbCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGFibGUtZm9udC1zaXplLXNtYWxsKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbiAgICAuYnRuIHtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIH1cclxuICAgIC5kLWZsZXgge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICBbZGF0YS1pbmFjdGl2ZS1zZXJ2aWNlc117XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10YWJsZS10ZC1mb250LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnN3aXRjaHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFtkYXRhLWluYWN0aXZlLXNlcnZpY2VzLXRleHRdIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGFnZS1jbGllbnRhcmVhcHJvZHVjdHMsXHJcbi5wYWdlLWNsaWVudGFyZWFkb21haW5zIHtcclxuICAgIC50YWJsZS10b3Age1xyXG4gICAgICAgIGdhcDogMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gVGFibGUgLSBDb250YWluZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnRhYmxlLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXI6IHZhcigtLXRhYmxlLWNvbnRhaW5lci1ib3JkZXIpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGFibGUtY29udGFpbmVyLWJnKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLXRhYmxlLWNvbnRhaW5lci1ib3gtc2hhZG93KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXRhYmxlLWNvbnRhaW5lci1ib3JkZXItcmFkaXVzKTtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG4gICAgJi5sb2FkaW5nIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAzMzVweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIC50YWJsZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxvYWRlci10YWJsZSB7XHJcbiAgICAgICAgICAgIHRvcDogY2FsYyh2YXIoLS10YWJsZS1jb250YWluZXItaGVhZGVyLWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nLTJ4KSlcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWFqYXh7XHJcbiAgICAgICAgJi5sb2FkaW5ne1xyXG4gICAgICAgICAgICB0YWJsZXtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIyNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sb2FkZXItdGFibGV7XHJcbiAgICAgICAgICAgIC5zcGlubmVye1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tbG9hZGVyLWJhcnMtaGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAubGlzdHRhYmxlIHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS10YWJsZS1jb250YWluZXItdGFibGUtcGFkZGluZyk7XHJcbiAgICB9XHJcbiAgICAuZGF0YVRhYmxlc193cmFwcGVye1xyXG4gICAgICAgIC5kYXRhVGFibGV7XHJcbiAgICAgICAgICAgIHRib2R5e1xyXG4gICAgICAgICAgICAgICAgdHJ7XHJcbiAgICAgICAgICAgICAgICAgICAgdGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVse1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRhdGFUYWJsZXNfbGVuZ3RoLFxyXG4gICAgLmRhdGFUYWJsZXNfZmlsdGVyIHtcclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS10YWJsZS1mb250LXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRhdGFUYWJsZXNfbGVuZ3RoIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10YWJsZS1jb250YWluZXItcGFnaW5hdGlvbi1iZyk7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogdmFyKC0tdWktYmxvY2stZGl2aWRlci1ib3JkZXIpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGFibGUtZm9udC1zaXplLXNtYWxsKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tdGFibGUtY29udGFpbmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLXRhYmxlLWNvbnRhaW5lci1ib3JkZXItcmFkaXVzKTtcclxuICAgIH1cclxuICAgIC5kYXRhVGFibGVzX2luZm8ge1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGFibGUtY29udGFpbmVyLXBhZ2luYXRpb24tYmcpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IHZhcigtLXRhYmxlLWNvbnRhaW5lci1ib3JkZXIpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGFibGUtZm9udC1zaXplLXNtYWxsKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgIH1cclxuICAgIC50YWJsZS1saXN0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgLnBhZ2luYXRpb24ge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZGF0YVRhYmxlc19maWx0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuZGF0YVRhYmxlIC5zbWFsbCxcclxuICAgIC5kYXRhVGFibGUgLnRleHQtc21hbGwge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLXRhYmxlLWZvbnQtc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAmOm5vdChhKSxcclxuICAgICAgICAmOm5vdChhKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxyXG4gICAgLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCB0Ym9keSB0aDpmaXJzdC1jaGlsZDpiZWZvcmUge1xyXG4gICAgICAgIHRvcDogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTZweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmR0ci1pbmxpbmUgLmR0ci10aXRsZTplbXB0eSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmR0ci1pbmxpbmUgLnJlc3BvbnNpdmUtZWRpdC1idXR0b24ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19sZW5ndGggbGFiZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XHJcbiAgICAuZGF0YVRhYmxlIHRyIHRkIGEge1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgIH1cclxuICAgIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfaW5mbyB7XHJcbiAgICAgICAgcGFkZGluZzogOXB4IDEwcHggNDBweDtcclxuICAgIH1cclxuICAgIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfZmlsdGVyIHtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfZmlsdGVyIGxhYmVsIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDVweDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gICAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIgbGFiZWwgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLnRhYmxlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgLmRhdGFUYWJsZXNfd3JhcHBlcntcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgLmxpc3R0YWJsZXtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBvcmRlcjogMztcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDJweDtcclxuICAgICAgICB9IFxyXG4gICAgICAgIC5kYXRhVGFibGVzX2xlbmd0aCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAgKG1kKSB7XHJcbiAgICAjdGFibGVTZXJ2aWNlc0xpc3Qge1xyXG4gICAgICAgIHRib2R5IHtcclxuICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgdGQ6bm90KC5kYXRhVGFibGVzX2VtcHR5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiN0YWJsZVNlcnZpY2VzTGlzdCB7XHJcbiAgICAuc3NsLWluZm8ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICY6ZW1wdHkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4jdGFibGVEb21haW5zTGlzdCB7XHJcbiAgICAuc3NsLWluZm8ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgJjplbXB0eSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgPiAqIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiN0YWJsZVRpY2tldHNMaXN0IHtcclxuICAgIHRib2R5e1xyXG4gICAgICAgIC5kdHItY29udHJvbHtcclxuICAgICAgICAgICAgPiBzcGFue1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICB0Ym9keSxcclxuICAgIHRoZWFke1xyXG4gICAgICAgIHRye1xyXG4gICAgICAgICAgICB0aCxcclxuICAgICAgICAgICAgdGR7XHJcbiAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM0MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgzKXtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuI3RhYmxlUmVuZXdhbExpc3R7XHJcbiAgICAudG9vbHRpcC1pY29ue1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDhweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY2VsbC1hY3Rpb24tY29udGFpbmVye1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgLnNwaW5uZXItc217XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWxvYWRlci1iYXJzLXNtLWhlaWdodCk7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi50aWNrZXQtdGFibGV7XHJcbiAgICB0Ym9keXtcclxuICAgICAgICA+IHRye1xyXG4gICAgICAgICAgICAuc3RhdHVze1xyXG4gICAgICAgICAgICAgICAgdGV4dC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiB0ZHtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZDpoYXMoYSl7XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMSU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLm5vLWRhdGEtdGFibGV7XHJcbiAgICBtaW4taGVpZ2h0OiAyNjZweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgc3Zne1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDQ4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgfVxyXG4gICAgLm5vLWRhdGEtdGFibGUtdGl0bGV7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgfVxyXG4gICAgLm5vLWRhdGEtdGFibGUtZGVzY3JpcHRpb257XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgIH1cclxuICAgICYtaW5hY3RpdmV7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDZweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBbZGF0YS1jbGVhci10YWJsZS1zZWFyY2hde1xyXG4gICAgICAgIGdhcDogNnB4O1xyXG4gICAgICAgIGl7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uaGlkZS1pbmFjdGl2ZS1pdGVtc3tcclxuICAgIC5uby1kYXRhLXRhYmxlLXNlYXJjaHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLm5vLWRhdGEtdGFibGUtaW5hY3RpdmV7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblRpbGVzIC0gR2VuZXJhbFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4udGlsZXMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpKSFpbXBvcnRhbnQ7XHJcbiAgICAudGlsZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICB9XHJcbn1cclxuLnRpbGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS10aWxlLXBhZGRpbmcpO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0tdGlsZS1taW4taGVpZ2h0KTtcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7ICBcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXRpbGUtbWluLWhlaWdodCk7XHJcbiAgICB9XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWJnLWNvbG9yKTtcclxuICAgIGJvcmRlcjogdmFyKC0tdGlsZS1ib3JkZXIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdGlsZS1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLXRpbGUtYm94LXNoYWRvdyk7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAmLWljb24ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxle1xyXG4gICAgICAgIC50aWxlLWljb24tYWJzb2x1dGUge1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGlsZS1ib3JkZXItY29sb3ItaG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtaWNvbi1hYnNvbHV0ZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTBweDtcclxuICAgICAgICByaWdodDogMTZweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZGVjb3JhdGlvbi1pY29ucyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICB9XHJcbiAgICAmLXN0YXQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA0cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10aWxlLXN0YXQtY29sb3IpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10aWxlLXN0YXQtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zdGF0LWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgJi1zbSB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zdGF0LXNtLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRpbGUtdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS10aXRsZS1mb250LXNpemUpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10aWxlLXRpdGxlLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tdGlsZS10aXRsZS1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJi1zbSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2V0O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDc0cHg7XHJcbiAgICAgICAgLnRpbGUtaWNvbi1hYnNvbHV0ZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpbGUtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXRpbGUtc20tdGl0bGUtZm9udC1zaXplKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpbGUtc3RhdCB7XHJcbiAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS10aWxlLXNtLXN0YXQtZm9udC1zaXplKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgYS50aWxlLFxyXG4gICAgLnNsaWRlci1uYXZpZ2F0aW9uIC50aWxlIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGlsZS1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGlsZS1ib3JkZXItY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLThweCwwKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy14bGcpO1xyXG4gICAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGlsZS1ib3JkZXItY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxufVxyXG5cclxuLyogSG9tZXBhZ2UgdGlsZSBSVEwgKi9cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIGh0bWxbZGlyPVwicnRsXCJdIC5ob21lcGFnZS10aWxlcyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxufVxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbjIuIFRpbGVzIC0gUmVzcG9uc2l2ZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKSB7ICAgIFxyXG4gICAgLnN3aXBlciB7XHJcbiAgICAgICAgJi13cmFwcGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1zbGlkZSB7XHJcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1wYWdpbmF0aW9uIHtcclxuICAgICAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgJi1idWxsZXQ6bm90KC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtcHJvbW90aW9uKSB7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDRweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kZWNvcmF0aW9uLWljb25zKTtcclxuICAgICAgICAgICAgICAgICYtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRpbGVzIHtcclxuICAgICAgICA+IC5yb3cge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50aWxlIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiB1bnNldDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogNzRweDtcclxuICAgICAgICAgICAgJi1pY29uLFxyXG4gICAgICAgICAgICAmLWljb24tYWJzb2x1dGUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnN2Zy1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS10aWxlLW1vYi10aXRsZS1mb250LXNpemUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtc3RhdCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXRpbGUtbW9iLXN0YXQtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtc20ge1xyXG4gICAgICAgICAgICAgICAgLnRpbGUtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zbS1tb2ItdGl0bGUtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIH0gICBcclxuICAgICAgICAgICAgICAgIC50aWxlLXN0YXQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdGlsZS1zbS1tb2Itc3RhdC1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIFNwaW5uZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnNwaW5uZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGhlaWdodDogdmFyKC0tbG9hZGVyLWJhcnMtaGVpZ2h0KTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIGJvcmRlcjogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICBhbmltYXRpb246IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgPiBkaXYge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1sb2FkZXItYmcpO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiB2YXIoLS1sb2FkZXItYmFycy13aWR0aCk7XHJcbiAgICAgIGFuaW1hdGlvbjogc2stc3RyZXRjaGRlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xyXG4gICAgfVxyXG4gICAgPiAqICsgKiB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1sb2FkZXItYmFycy13aWR0aCk7XHJcbiAgICB9XHJcbiAgICAmLWxpZ2h0IHtcclxuICAgICAgPiBkaXYge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxvYWRlci1saWdodC1iZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yZWN0MiB7XHJcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMXM7XHJcbiAgICB9XHJcbiAgICAucmVjdDMge1xyXG4gICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjBzO1xyXG4gICAgfVxyXG4gICAgLnJlY3Q0IHtcclxuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC45cztcclxuICAgIH1cclxuICAgIC5yZWN0NSB7XHJcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuOHM7XHJcbiAgICB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLXN0cmV0Y2hkZWxheSB7XHJcbiAgICAwJSwgNDAlLCAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwLjQpIH0gIFxyXG4gICAgMjAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxLjApIH1cclxufVxyXG5Aa2V5ZnJhbWVzIHNrLXN0cmV0Y2hkZWxheSB7XHJcbiAgICAwJSwgNDAlLCAxMDAlIHsgXHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDAuNCk7XHJcbiAgICB9ICAyMCUgeyBcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMS4wKTtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gU3Bpbm5lciAtIFNJemVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnNwaW5uZXIge1xyXG4gICAgJi1zbSB7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1sb2FkZXItYmFycy1zbS1oZWlnaHQpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICA+IGRpdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tbG9hZGVyLWJhcnMtc20td2lkdGgpO1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tbG9hZGVyLWJhcnMtc20td2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gU3Bpbm5lciAtIENvbG9yc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uYnRuLXByaW1hcnkge1xyXG4gIC5zcGlubmVyIHtcclxuICAgICAgPiBkaXYge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgfVxyXG4gIH1cclxufVxyXG4uYnRuLXByaW1hcnktZmFkZWQge1xyXG4gICAgLnNwaW5uZXIge1xyXG4gICAgICAgID4gZGl2IHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuIExvYWRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ubG9hZGVyIHtcclxuICAgICYtdGFibGUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYmxlLWJnKTtcclxuICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgfVxyXG4gICAgJi1idXR0b24ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG4gICYtcGFuZWwge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgJi5sb2FkaW5ne1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgfVxyXG4gIH1cclxufVxyXG4uaW52aXNpYmxlICsgLmxvYWRlci1idXR0b24ge1xyXG4gIGRpc3BsYXk6IGZsZXghaW1wb3J0YW50O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSFpbXBvcnRhbnQ7XHJcbn1cclxuLmxvYWRlci1yaW5nIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgZGl2IHtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMjhweDtcclxuICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgbWFyZ2luOiAycHg7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTIpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBhbmltYXRpb246IGxkcy1yaW5nIDEuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMC41LCAxKSBpbmZpbml0ZTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0yKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICAgICYtMTIge1xyXG4gICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDFweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLTE4IHtcclxuICAgICAgICB3aWR0aDogMThweDtcclxuICAgICAgICBoZWlnaHQ6IDE4cHg7IFxyXG4gICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGRpdjpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuNDVzO1xyXG4gICAgfVxyXG4gICAgZGl2Om50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC4zcztcclxuICAgIH1cclxuICAgIGRpdjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMTVzO1xyXG4gICAgfVxyXG59XHJcbkBrZXlmcmFtZXMgbGRzLXJpbmcge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gV29ybGQgTG9hZGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi53b3JsZC1sb2FkZXJ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWluLWhlaWdodDogMTcwcHg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICAmLWNvbnRlbnR7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctN3gpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy03eCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1sb2FkZXItYmcpO1xyXG4gICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHdvcmxkLWxvYWRlcjtcclxuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgd29ybGQtbG9hZGVyIHtcclxuICAgIDAlIHtcclxuICAgICAgbGVmdDogMTAwJTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICBsZWZ0OiAtNzQ0cHg7XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJhbm5lciAtIEdlbmVyYWwgRWxlbWVudHNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmJhbm5lciB7XHJcbiAgICAmLWNhcHRpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDYpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNik7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1zaXRlLWJhbm5lci10aXRsZS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXRlLWJhbm5lci10aXRsZS1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1zaXRlLWJhbm5lci10aXRsZS1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2l0ZS1iYW5uZXItZWxlbWVudC1zcGFjaW5nKTtcclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWRlc2Mge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICYsXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogIHZhcigtLXNpdGUtYmFubmVyLWRlc2MtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXNpdGUtYmFubmVyLWRlc2MtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tc2l0ZS1iYW5uZXItZGVzYy1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtYWN0aW9ucyB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNpdGUtYmFubmVyLWVsZW1lbnQtc3BhY2luZyk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxNjRweDtcclxuICAgICAgICAgICAgKy5idG4ge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1pY29ucyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy00eCk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IDQwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXsgXHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtc3VidGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNHgpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7IFxyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1ncmFwaGljIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICB3aWR0aDogdmFyKC0tc2l0ZS1iYW5uZXItZ3JhcGhpYy13aWR0aCk7XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucHJvbW8tc2xpZGVyLWljb24geyAgXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgYm90dG9tOiB1bnNldDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tc2l0ZS1iYW5uZXItZ3JhcGhpYy13aWR0aCk7XHJcbiAgICAgICAgICAgIC8vIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zaGFwZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDY2MnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29udGVudCB7XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tb3ZlcmZsb3cge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNTBweDtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBcclxuICAgICAgICAuYmFubmVyLXRpdGxlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBib3R0b206IDUwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNXgpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMik7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5CYW5uZXIgLSBkb21haW4gcmVnaXN0cmF0aW9uIG1vZGVybiBwYWdlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLmxhZ29te1xyXG4gICAgJjpub3QoLmxhb2dtLWZ1dHVyaXN0aWMpe1xyXG4gICAgICAgIC5iYW5uZXItZGVmYXVsdC5iYW5uZXItZG9tYWluLXJlZ2lzdGVye1xyXG4gICAgICAgICAgICAmICsgLm1haW4tYm9keXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAuYmFubmVyIHtcclxuICAgICAgICAmLWdyYXBoaWMge1xyXG4gICAgICAgICAgICAucHJvbW8tc2xpZGVyLWljb24ge1xyXG4gICAgICAgICAgICAgICAgdG9wOiB2YXIoLS11aS1ndXR0ZXItYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAobWQpIHtcclxuICAgIC5iYW5uZXIge1xyXG4gICAgICAgICYtYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAvLyByaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ncmFwaGljIHtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLXNpdGUtYmFubmVyLWdyYXBoaWMtd2lkdGgpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXNoYXBlIHtcclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC5iYW5uZXIge1xyXG4gICAgICAgICYgPiAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSxcclxuICAgICAgICAmLWRlc2MsXHJcbiAgICAgICAgJi1kZXNjIHB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1hY3Rpb25zIHtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC04cHggLTE2cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICArIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1iYWNrZ3JvdW5kIHtcclxuICAgICAgICAgICAgb3JkZXI6IDE7IFxyXG4gICAgICAgICAgICAuYmFubmVyLWdyYXBoaWNze1xyXG4gICAgICAgICAgICAgICAgLmJhbm5lci1ncmFwaGlje1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1zaXRlLWJhbm5lci1ncmFwaGljLXdpZHRoKTtcclxuICAgICAgICAgICAgICAgICAgICA+IC5wcm9tby1zbGlkZXItaWNvbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLXNpdGUtYmFubmVyLWdyYXBoaWMtd2lkdGgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmdyYXBoaWMtY3VzdG9te1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLWlsbHVzdHJhdGlvbi13aWR0aCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmdyYXBoaWNzLWN1c3RvbXtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWdyYXBoaWMge1xyXG4gICAgICAgICAgICBtYXJnaW46IC00OHB4IGF1dG8gMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gJi1ncmFwaGljLFxyXG4gICAgICAgIC8vICYtZ3JhcGhpYyA+IC5wcm9tby1zbGlkZXItaWNvbiB7XHJcbiAgICAgICAgLy8gICAgIGhlaWdodDogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLWlsbHVzdHJhdGlvbi1oZWlnaHQpO1xyXG4gICAgICAgIC8vICAgICB3aWR0aDogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLWlsbHVzdHJhdGlvbi13aWR0aCk7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgICYtc2hhcGUge1xyXG4gICAgICAgICAgICA+IHN2ZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtLW92ZXJmbG93IHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDExMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5CYW5uZXIgLSBTaWRlc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG46cm9vdHtcclxuICAgIC8vIE1pbiBoZWlnaHQgb25seSBmb3IgZGVza3RvcFxyXG4gICAgLS1iYW5uZXItc2lkZXMtbWluLWhlaWdodDogNjc3cHg7XHJcblxyXG4gICAgLS1iYW5uZXItc2lkZXMtY29udGVudC1tYXgtd2lkdGg6IDU0NHB4O1xyXG4gICAgLS1iYW5uZXItc2lkZXMtY29udGVudC1zcGFjaW5nLXJpZ2h0OiA4MHB4O1xyXG5cclxuICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtd2lkdGg6IDU5NnB4O1xyXG4gICAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1oZWlnaHQ6IDQ4MHB4O1xyXG5cclxuICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtd2lkdGg6IDI1NDJweDtcclxuICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtaGVpZ2h0OiA4MDhweDtcclxuICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtcmlnaHQ6IC0xMzgwcHg7XHJcblxyXG4gICAgLS1iYW5uZXItY29udGVudC1wYWRkaW5nLXY6IDEwMHB4O1xyXG5cclxuICAgIC0tYmFubmVyLXNpZGVzLWJhY2tncm91bmQtbWFyZ2luLXRvcDogMTAwcHg7XHJcblxyXG4gICAgLS1iYW5uZXItc2lkZXMtcHJvbW8taWNvbi1tYXJnaW4tdG9wOiAtMzZweDtcclxuICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtYm90dG9tOiAwcHg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpe1xyXG4gICAgICAgIC0tYmFubmVyLXNpZGVzLWNvbnRlbnQtbWF4LXdpZHRoOiA1MDZweDtcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1jb250ZW50LXNwYWNpbmctcmlnaHQ6IDU2cHg7XHJcbiAgICBcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXdpZHRoOiA0ODJweDtcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLWhlaWdodDogMzkycHg7XHJcbiAgICBcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLXdpZHRoOiAyMTcycHg7XHJcbiAgICAgICAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1oZWlnaHQ6IDY5MHB4O1xyXG4gICAgICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtcmlnaHQ6IC0xMTcycHg7XHJcbiAgICAgICAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1ib3R0b206IDBweDsgXHJcblxyXG4gICAgICAgIC0tYmFubmVyLXNpZGVzLXByb21vLWljb24tbWFyZ2luLXRvcDogLTI0cHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xyXG4gICAgICAgIC0tYmFubmVyLXNpZGVzLWNvbnRlbnQtbWF4LXdpZHRoOiA0MzJweDtcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1jb250ZW50LXNwYWNpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1yaWdodDogLTE0MzJweDtcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLWJvdHRvbTogMjRweDtcclxuICAgIFxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXdpZHRoOiAzNjBweDtcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLWhlaWdodDogMjYwcHg7XHJcblxyXG4gICAgICAgIC0tYmFubmVyLXNpZGVzLWNvbnRlbnQtc3BhY2luZy1yaWdodDogMDsgXHJcbiAgICBcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLXdpZHRoOiAxNDAwcHg7XHJcbiAgICAgICAgLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1oZWlnaHQ6IDQ0NHB4O1xyXG4gICAgICAgIC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtcmlnaHQ6IC03NjJweDtcclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLWJvdHRvbTogMHB4O1xyXG5cclxuICAgICAgICAtLWJhbm5lci1jb250ZW50LXBhZGRpbmctdjogNzJweDtcclxuXHJcbiAgICAgICAgLS1iYW5uZXItc2lkZXMtYmFja2dyb3VuZC1tYXJnaW4tdG9wOiA3MnB4O1xyXG5cclxuICAgICAgICAtLWJhbm5lci1zaWRlcy1wcm9tby1pY29uLW1hcmdpbi10b3A6IC01MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmFubmVye1xyXG4gICAgJi5iYW5uZXItc2lkZXMge1xyXG4gICAgICAgIC5iYW5uZXItY29udGVudCB7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogdmFyKC0tYmFubmVyLXNpZGVzLWNvbnRlbnQtbWF4LXdpZHRoKTsgLy9kbyB6bWllbm55Y2ggP1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tYmFubmVyLWNvbnRlbnQtcGFkZGluZy12KTsgIC8vZG8gem1pZW5ueWNoLXYgP1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tYmFubmVyLWNvbnRlbnQtcGFkZGluZy12KTsgIC8vZG8gem1pZW5ueWNoLXYgP1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWJhbm5lci1zaWRlcy1jb250ZW50LXNwYWNpbmctcmlnaHQpOyAvL2RvIHptaWVubnljaCA/XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWJhbm5lci1zaWRlcy1jb250ZW50LXNwYWNpbmctcmlnaHQpOyAvL2RvIHptaWVubnljaCA/XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJhbm5lci1iYWNrZ3JvdW5kIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcclxuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtd2lkdGgpOyAgLy9kbyB6bWllbm55Y2ggP1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1oZWlnaHQpOyAgLy9kbyB6bWllbm55Y2ggP1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1iYW5uZXItc2lkZXMtYmFja2dyb3VuZC1tYXJnaW4tdG9wKTtcclxuICAgICAgICAgICAgLmJhbm5lci1ncmFwaGljc3tcclxuICAgICAgICAgICAgICAgICZbZGF0YS1wcm9tby1zbGlkZXItaG9tZXBhZ2VdeyBcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgICAgICAgICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdy1zdGFydDogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5iYW5uZXItZ3JhcGhpY3tcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtd2lkdGgpOyAvL2RvIHptaWVubnljaCA/XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWJhbm5lci1zaWRlcy1ncmFwaGljLWhlaWdodCk7IC8vZG8gem1pZW5ueWNoID9cclxuICAgICAgICAgICAgICAgIC5wcm9tby1zbGlkZXItaWNvbntcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtd2lkdGgpOyAvL2RvIHptaWVubnljaCA/IFxyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLWJhbm5lci1zaWRlcy1wcm9tby1pY29uLW1hcmdpbi10b3ApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5iYW5uZXItc2hhcGV7XHJcbiAgICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwxKTtcclxuICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS13aWR0aCk7IC8vZG8gem1pZW5ueWNoID9cclxuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtaGVpZ2h0KTsgLy9kbyB6bWllbm55Y2ggP1xyXG4gICAgICAgICAgICAgICAgdG9wOiB1bnNldDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtYm90dG9tKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtcmlnaHQpOyAvL2RvIHptaWVubnljaCA/XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdmFyKC0tYmFubmVyLXNpZGVzLWdyYXBoaWMtc2hhcGUtcmlnaHQpOyAvL2RvIHptaWVubnljaCA/XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpe1xyXG4gICAgLmJhbm5lcntcclxuICAgICAgICAmLmJhbm5lci1zaWRlc3tcclxuICAgICAgICAgICAgPiAuY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogdmFyKC0tYmFubmVyLXNpZGVzLW1pbi1oZWlnaHQpOyAvL2RvIHptaWVubnljaCA/XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLmJhbm5lcntcclxuICAgICAgICAmLmJhbm5lci1zaWRlcyB7XHJcbiAgICAgICAgICAgID4gLmNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5iYW5uZXItYmFja2dyb3VuZCB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAuYmFubmVyLWdyYXBoaWN7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5CYW5uZXIgLSBDZW50ZXJlZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uYmFubmVyLWNlbnRlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAuYmFubmVyLWFjdGlvbnMge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLmJhbm5lci1jb250ZW50IHtcclxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC1tZCk7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgICAmLnNpdGUtYmFubmVyIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblNpdGUgQmFubmVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zaXRlLWJhbm5lciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7ICBcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICAvL292ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmID4gLmNvbnRhaW5lciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgIC5yb3cge1xyXG4gICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpZGVyLXdyYXBwZXIsXHJcbiAgICAuc2xpZGVyLXNsaWRlcyxcclxuICAgIC5zbGlkZXItc2xpZGUge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgIC5zbGlkZXItd3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgLnNsaWRlci1zbGlkZXMge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjQ1cywgbWluLWhlaWdodCAwLjQ1cztcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDEsIDAsIDEsIDEpO1xyXG4gICAgfVxyXG4gICAgLnNsaWRlci1zbGlkZSB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtY3VzdG9tLWljb24ge1xyXG4gICAgICAgICAgICAuYmFubmVyLWdyYXBoaWMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6bm90KC5zaXRlLXNsaWRlcikge1xyXG4gICAgICAgIC5iYW5uZXItZ3JhcGhpYyB7XHJcbiAgICAgICAgICAgIC5wcm9tby1zbGlkZXItaWNvbiB7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNob3dTbGlkZXJJY29ucztcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMCwgMSk7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcclxuICAgICAgICAgICAgICAgICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4NHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5wcm9tby1zbGlkZXItaWNvbi1yZXZlcnNle1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzaG93U2xpZGVySWNvbnNSZXZlcnNlO1xyXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjEycztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4yNHM7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4wcztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuMTJzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4yNHM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJhbm5lci1zaGFwZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihtZCwgbWQpIHtcclxuICAgICAgICAgICAgICAgIHRvcDogLTI1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmJhbm5lci1wcmltYXJ5e1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCggMGRlZywgdmFyKC0tYnJhbmQtcHJpbWFyeS1ncmFkaWVudC1zdGFydCkgMCUsIHZhcigtLWJyYW5kLXByaW1hcnktZ3JhZGllbnQtZW5kKSAxMDAlKTtcclxuICAgIH1cclxuICAgICYuYmFubmVyLXNlY29uZGFyeXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIDBkZWcsIHZhcigtLWJyYW5kLXNlY29uZGFyeS1ncmFkaWVudC1zdGFydCkgMCUsIHZhcigtLWJyYW5kLXNlY29uZGFyeS1ncmFkaWVudC1lbmQpIDEwMCUpO1xyXG4gICAgfVxyXG4gICAgXHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgLnNpdGUtYmFubmVyIHsgICAgXHJcbiAgICAgICAgJixcclxuICAgICAgICAmID4gLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLXNpdGUtYmFubmVyLWhlaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLnNpdGUtYmFubmVyIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcclxuICAgICAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vICY6bm90KC5iYW5uZXItcHJpbWFyeSksXHJcbiAgICAgICAgLy8gJjpub3QoLmJhbm5lci1zZWNvbmRhcnkpIHtcclxuICAgICAgICAvLyAgICAgLmJhbm5lci1jb250ZW50IHtcclxuICAgICAgICAvLyAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXNpdGUtYmFubmVyLXBhZGRpbmctdikgLyAyKTtcclxuICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAuc2xpZGVyLXNsaWRlIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Ib21lcGFnZSBTbGlkZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4uc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2xpZGVyLWJ0bntcclxuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTR4KTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zaXRlLWJhbm5lci1ob21lLXRpbGUtaGVpZ2h0KSAvIC0zKSFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAmLnNlY3Rpb24tc2xpZGVyLWJ0bi1leHRlbnNpb257XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLWJhbm5lci1jb250ZW50LXBhZGRpbmctdikhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLnNsaWRlci1uYXZpZ2F0aW9uLXByb21vdGlvbntcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoLTEqdmFyKC0tc3BhY2luZy0zeCkpO1xyXG4gICAgICAgIC5zd2lwZXJ7XHJcbiAgICAgICAgICAgICYtd3JhcHBlcntcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXNsaWRle1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcclxuICAgICAgICAgICAgICAgIC8vIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIC8vIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAvLyB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UtaW47XHJcbiAgICAgICAgICAgICAgICAvLyAmLm5hdi1lbGVtZW50LXZpc2libGV7XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgIC8vICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgIC8vICAgICBvcGFjaXR5OiAwOyAgLyogSW5pdGlhbGx5IGhpZGRlbiAqL1xyXG4gICAgICAgIC8vICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2U7ICAvKiBTbW9vdGggdHJhbnNpdGlvbiAqL1xyXG4gICAgICAgIC8vICAgfVxyXG4gICAgICAgIC8vICAgLnN3aXBlci1zbGlkZS12aXNpYmxlIHtcclxuICAgICAgICAvLyAgICAgb3BhY2l0eTogMTsgIC8qIEZhZGUgaW4gdmlzaWJsZSBzbGlkZXMgKi9cclxuICAgICAgICAvLyAgIH1cclxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tcHJvbW90aW9ue1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC8vIGhlaWdodDogOHB4O1xyXG4gICAgICAgICAgICAmLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHN7XHJcbiAgICAgICAgICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e1xyXG4gICAgICAgICAgICAgICAgICAgICY6b25seS1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlICsgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcclxuICAgICAgICAgICAgICAgICAgICAmOmhhcygrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMzUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdpZHRoOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGhlaWdodDogNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjY1KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyArIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgICArIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gJjpub3QoLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0sXHJcbi5zaXRlLnNpdGUtaW5kZXgge1xyXG4gICAgLy9PbiBJUGhvbmVzIHByZXZlbnRzIGNvbnRlbnQgZnJvbSBzdHJlY2hpbmcgcGFnZVxyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIC5zaXRlLWJhbm5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgICAgICAmOm5vdCguc2xpZGVyLXNpbmdsZSkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tc2l0ZS1iYW5uZXItaG9tZS10aWxlLWhlaWdodCkgLyAyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNpdGUtc2xpZGVyOm5vdCguc2l0ZS1zbGlkZXItY3VzdG9tKSB7XHJcbiAgICAgICAgICAgIC5zbGlkZXItYmFja2dyb3VuZD4qIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zbGlkZSB7XHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIC5wcm9tby1zbGlkZXItaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWN0aW9uLXNsaWRlci1idG4ge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zaXRlLWJhbm5lci1ob21lLXRpbGUtaGVpZ2h0KSAvIC0yKTtcclxuICAgICAgICAuY29sLWxnIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMHB4IDhweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpbGUge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1zaXRlLWJhbm5lci1ob21lLXRpbGUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAuc3ZnLWljb24sXHJcbiAgICAgICAgICAgID5zdmcge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA2NHB4O1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgPmltZ3tcclxuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA2NHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC0yMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjJweDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwM1wiO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1tZWRpdW0pO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC01cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDRweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC50aWxlLWxvYWRlcntcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50aWxlLWxvYWRlcntcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTJweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xyXG4gICAgICAgICAgICAgICAgbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICB0b3A6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGlsZS1sb2FkZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcclxuICAgICAgICAgICAgICAgIC50aWxlLWxvYWRlci1wcm9ncmVzc3tcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWxvYWRlci1wcm9ncmVzcy1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAvLyBhbmltYXRpb246IGZpbGxQcm9ncmVzc0JhciA1cyBsaW5lYXIgZm9yd2FyZHM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAa2V5ZnJhbWVzIGZpbGxQcm9ncmVzc0JhciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZnJvbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdG8ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zbGlkZXItbmF2aWdhdGlvbntcclxuICAgICAgICAgICAgJi5hbmltYXRpb24tcGF1c2Vke1xyXG4gICAgICAgICAgICAgICAgLnRpbGUtbG9hZGVye1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgLnRpbGUtbG9hZGVyLXByb2dyZXNze1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmFuaW1hdGlvbi1ydW5uaW5ne1xyXG4gICAgICAgICAgICAgICAgLnRpbGUtbG9hZGVye1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgLnRpbGUtbG9hZGVyLXByb2dyZXNze1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IGZpbGxQcm9ncmVzc0JhciA1cyBsaW5lYXIgZm9yd2FyZHM7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdIC5zZWN0aW9uLXNsaWRlci1idG4gLnRpbGUuYWN0aXZlOmFmdGVye1xyXG4gICAgdG9wOiAtM3B4OyBcclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC5wYWdlLWxhZ29tLWNtcyAuc2l0ZSBbZGF0YS1wcm9tby1zbGlkZXJdLFxyXG4gICAgLnNpdGUuc2l0ZS1pbmRleCB7XHJcbiAgICAgICAgLnNpdGUtYmFubmVyIHtcclxuICAgICAgICAgICAgLnNsaWRlci13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5iYW5uZXItZ3JhcGhpY3Mge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuZ3JhcGhpY3MtY3VzdG9te1xyXG4gICAgICAgICAgICAgICAgICAgID4gZGl2IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA4MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYmFubmVyLWdyYXBoaWMge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvLyAuYmFubmVyLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAvLyAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAvLyAgICAgcGFkZGluZy10b3A6IHZhcigtLXByb21vLXNsaWRlci14cy1pbGx1c3RyYXRpb24taGVpZ2h0KTtcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zaXRlLXNsaWRlci1jdXN0b217XHJcbiAgICAgICAgLnNsaWRlci13cmFwcGVye1xyXG4gICAgICAgICAgICAuc2xpZGVyLXNsaWRlc3tcclxuICAgICAgICAgICAgICAgICYuc2xpZGVyLWN1c3RvbS1pY29ue1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGNhbGModmFyKC0tc2l0ZS1iYW5uZXItaGVpZ2h0KSArIHZhcigtLXNwYWNpbmctM3gpKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB1bnNldCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgLnNsaWRlci1zbGlkZS5zbGlkZXItc2xpZGUtY3VzdG9tLWljb257IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm5vdCguZ3JhcGhpYy1jdXN0b20tZW1wdHkpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYzsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5zbGlkZXItc2xpZGUtY3VzdG9tLWljb257XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYW5uZXItY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc2l0ZS1iYW5uZXItcGFkZGluZy12KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYW5uZXItYmFja2dyb3VuZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYW5uZXItZ3JhcGhpY3N7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bm90KC5hY3RpdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYW5uZXItY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk1hcmtldENvbm5lY3QgU2xpZGVyc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uc2l0ZXtcclxuICAgICYuc2l0ZXtcclxuICAgICAgICAmLXdwLXRvb2xraXQsXHJcbiAgICAgICAgJi1jb2RlZ3VhcmQsXHJcbiAgICAgICAgJi1tYXJrZXRnb28sXHJcbiAgICAgICAgJi1zaXRlYnVpbGRlciwgXHJcbiAgICAgICAgJi1zaXRlbG9jayxcclxuICAgICAgICAmLXNpdGVsb2NrdnBuLFxyXG4gICAgICAgICYtc3BhbWV4cGVydHMsXHJcbiAgICAgICAgJi14b3Zpbm93LFxyXG4gICAgICAgICYtdGhyZWVzaXh0eW1vbml0b3JpbmcsXHJcbiAgICAgICAgJi1zc2wtY2VydGlmaWNhdGVzLFxyXG4gICAgICAgICYtd2ViYmx5LFxyXG4gICAgICAgICYtb3gsXHJcbiAgICAgICAgJi1zb2NpYWxiZWV7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuc2l0ZS13cC10b29sa2l0e1xyXG4gICAgICAgIC5iYW5uZXItYmFja2dyb3VuZHtcclxuICAgICAgICAgICAgLmJhbm5lci1ncmFwaGlje1xyXG4gICAgICAgICAgICAgICAgLnN2Zy13ZWVibHl7XHJcbiAgICAgICAgICAgICAgICAgICAgLmxvZ297XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYtd2VlYmx5e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLXdvcmRwcmVzc3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tb3Rpb24gTWFuYWdlciBTbGlkZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhZ2UtbGFnb20tY21zIC5zaXRlIFtkYXRhLXByb21vLXNsaWRlcl0sXHJcbi5zaXRlLnNpdGUtaW5kZXgge1xyXG4gICAgLnNpdGUtYmFubmVyIHsgICAgICAgIFxyXG4gICAgICAgICYuc2l0ZS1zbGlkZXItY3VzdG9tIHtcclxuICAgICAgICAgICAgLmJhbm5lci1ncmFwaGljIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRvcDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnByb21vLXNsaWRlci1pY29ue1xyXG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2xpZGVyLWJhY2tncm91bmR7XHJcbiAgICAgICAgICAgICAgICAuYmFubmVyLWJhY2tncm91bmR7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5iYW5uZXJ7XHJcbiAgICAgICAgICAgICAgICAmLmJhbm5lci1zaWRlc3tcclxuICAgICAgICAgICAgICAgICAgICAuYmFubmVyLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogdmFyKC0tYmFubmVyLXNpZGVzLWNvbnRlbnQtbWF4LXdpZHRoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIC5zbGlkZXItYmFja2dyb3VuZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gICAgIC5zbGlkZS1kZWZhdWx0LWJne1xyXG4gICAgICAgICAgICAgICAgICAgIC5iYW5uZXItYmFja2dyb3VuZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmJhbm5lci1zaGFwZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLTIzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMTJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyByaWdodDogY2FsYyh2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1yaWdodCkgKyAxMzBweCk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0xODRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogY2FsYyh2YXIoLS1iYW5uZXItc2lkZXMtZ3JhcGhpYy1zaGFwZS1yaWdodCkgKyA4NnB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuc2xpZGVyLXNsaWRlLnNsaWRlLWRlZmF1bHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYW5uZXItYmFja2dyb3VuZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zaXRlLXNsaWRlciB7XHJcbiAgICAgICAgICAgIC5iYW5uZXItY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zbGlkZXItYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICA+KiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwLjQ1cywgb3BhY2l0eSAwLjQ1cztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDFzLCBvcGFjaXR5IDFzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+LnNsaWRle1xyXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5hY3RpdmUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0cmFuc2l0aW9uOiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAxcywgb3BhY2l0eSAxcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID5kaXYge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbltkaXI9XCJydGxcIl0ge1xyXG4gICAgLnNpdGUuc2l0ZS1pbmRleCB7XHJcbiAgICAgICAgLnNpdGUtYmFubmVyIHtcclxuICAgICAgICAgICAgJi5zaXRlLXNsaWRlci1jdXN0b20ge1xyXG4gICAgICAgICAgICAgICAgJi5iYW5uZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5iYW5uZXItc2lkZXN7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYmFubmVyLWJhY2tncm91bmR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAuc2l0ZS1zbGlkZXIge1xyXG4gICAgICAgIC5zbGlkZXItc2xpZGUtY3VzdG9tLWljb24ge1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFtkaXI9XCJydGxcIl0ge1xyXG4gICAgICAgIC5zaXRlLnNpdGUtaW5kZXgge1xyXG4gICAgICAgICAgICAuc2l0ZS1iYW5uZXIge1xyXG4gICAgICAgICAgICAgICAgJi5zaXRlLXNsaWRlci1jdXN0b20ge1xyXG4gICAgICAgICAgICAgICAgICAgICYuYmFubmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmJhbm5lci1zaWRlc3sgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYmFubmVyLWJhY2tncm91bmQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYW5uZXItc2hhcGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKHZhcigtLWJhbm5lci1zaWRlcy1ncmFwaGljLXNoYXBlLXJpZ2h0KSArIDg2cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQmFubmVyIC0gXCJEZWZhdWx0XCIgSG9tZXBhZ2UgVGVtcGFsdGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmJhbm5lci1ob21lIHtcclxuICAgIC5iYW5uZXItdGl0bGUge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5iYW5uZXItYmcge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIC5iYW5uZXItc3ZnIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDIwJTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDE5MThweDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5iYW5uZXItYnJvd3NlciwgXHJcbiAgICAgICAgLmJhbm5lci1sYXB0b3AsIFxyXG4gICAgICAgIC5iYW5uZXItY29tcHV0ZXIge1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBiYW5uZXJFbGVtZW50RmFkZUluRG93bjtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiA2MDBtcztcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxMDAwbXM7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYmFubmVyLWJyb3dzZXIge1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5iYW5uZXItbGFwdG9wLCBcclxuICAgICAgICAuYmFubmVyLWNvbXB1dGVyIHtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiA4MDBtcztcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJhbm5lci13ZWItaWNvbiwgXHJcbiAgICAgICAgLmJhbm5lci1zZWFyY2gtaWNvbiB7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJhbm5lckVsZW1lbnRGYWRlSW47XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDEwMDBtcztcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5iYW5uZXItbGluZXMge1xyXG4gICAgICAgICAgICBwYXRoIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICBzdHJva2UtZGFzaG9mZnNldCA0MDAwbXM7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAsIDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5bZGF0YS1hbmltYXRpb24tZmFkZS1ib3R0b21de1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBiYW5uZXJFbGVtZW50RmFkZUluRG93bjtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjZzO1xyXG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcbn1cclxuXHJcbltkYXRhLWFuaW1hdGlvbi1kZWxheS0xXSB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IDFzO1xyXG59XHJcbltkYXRhLWFuaW1hdGlvbi1kZWxheS0yXSB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuOHM7XHJcbn1cclxuXHJcblxyXG5Aa2V5ZnJhbWVzIGJhbm5lckVsZW1lbnRGYWRlSW5Eb3duIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtMTBweCwgMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIH1cclxufVxyXG5Aa2V5ZnJhbWVzIGJhbm5lckVsZW1lbnRGYWRlSW4ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi5ob21lcGFnZS10aWxlcyB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAudGlsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQmFubmVyIC0gU3R5bGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5iYW5uZXItcHJpbWFyeSB7ICAgIFxyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1iZyk7XHJcbiAgICAuYmFubmVyLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAuYmFubmVyLWRlc2Mge1xyXG4gICAgICAgICYsXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiArIC5zZWN0aW9uLXNsaWRlci1idG4ge1xyXG4gICAgICAgIC50aWxlIHtcclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlci0zKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJhbm5lci1zZWNvbmRhcnkgeyAgICBcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZyk7XHJcbiAgICAuYmFubmVyLXRpdGxlLFxyXG4gICAgLmJhbm5lci1zdWJ0aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAuYmFubmVyLWRlc2Mge1xyXG4gICAgICAgICYsXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJhbm5lci1wcmltYXJ5LFxyXG4uYmFubmVyLXNlY29uZGFyeSxcclxuLnByb21vLXNsaWRlci1wcmltYXJ5LFxyXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeSB7XHJcbiAgICAvL21hcmdpbi10b3A6IC0xcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgLnByb21vLXNoYXBlIHtcclxuICAgICAgICAmLWxlZnQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXByaW1hcnktc2hhcGUtbGVmdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcmlnaHQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXByaW1hcnktc2hhcGUtcmlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctYmFubmVyLXNoYXBlLWxlZnQge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1iYW5uZXItcHJpbWFyeS1zaGFwZS1sZWZ0KTtcclxuICAgIH1cclxuICAgIC5zdmctYmFubmVyLXNoYXBlLXJpZ2h0IHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXByaW1hcnktc2hhcGUtcmlnaHQpO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubGFnb20ubGFnb20tZnV0dXJpc3RpY3tcclxuICAgIC5iYW5uZXJ7XHJcbiAgICAgICAgLmJhbm5lci1jYXB0aW9ue1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIuYWRkb24tcHJvbW8tY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1iZyk7XHJcbiAgICBib3JkZXI6IHZhcigtLXBhbmVsLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLXBhbmVsLWJveC1zaGFkb3cpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmLmlzLXNlbGVjdGVkIHtcclxuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtYWN0aXZlLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wYW5lbC1hY3RpdmUtYmcpO1xyXG4gICAgfVxyXG4gICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIzMnB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICAvL2NvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgICAgICB9XHJcblx0XHRoMyB7XHJcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcclxuXHRcdH1cclxuICAgIH1cclxuICAgIGRpdi5wdWxsLXJpZ2h0IHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdDaG9vc2UgUGFja2FnZSdcclxuICAgICAgICB9XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgZmxvYXQ6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIC8vY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sb2dvIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAtOTBweDtcclxuICAgICAgICByaWdodDogLTMwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIzMnB4O1xyXG4gICAgICAgIGhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMjMycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnJhZGlvLWlubGluZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAucHVsbC1yaWdodCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucmFkaW8tc3R5bGVkIHtcclxuICAgICAgICAgICAgdG9wOiAxcHg7XHJcbiAgICAgICAgICAgIEBzdXBwb3J0cyAoLW1vei1hcHBlYXJhbmNlOiBub25lKSB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAc3VwcG9ydHMgKC13ZWJraXQtaHlwaGVuczpub25lKXtcclxuICAgICAgICAgICAgICAgIHRvcDogMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYnIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAuYWRkb24tcHJvbW8tY29udGFpbmVyIHtcclxuICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgIHRvcDogLTQwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNDJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNDJweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblByb21vIFNsaWRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5wcm9tby1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogbm9uZTsgLy8gVFlNQ1pBU09XRSAhXHJcbn1cclxuLnByb21vLXNsaWRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1pbi1oZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci1taW4taGVpZ2h0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteGxnKTtcclxuICAgIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMtbGcpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93LWxnKTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICAmLXhzIHtcclxuICAgICAgICAucHJvbW8tc2xpZGVyLW1vcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgICAmLWhlYWRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDMwO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcHJvbW8tc2xpZGVyLWhlYWRlci1wYWRkaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcHJvbW8tc2xpZGVyLWhlYWRlci1wYWRkaW5nLXJ0bCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1jbG9zZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS11aS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZVxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgLy8gY29sb3I6IHZhcigtLXVpLW5hdi1zZWNvbmRhcnktbGluay1pY29uLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXdyYXBwZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgIH1cclxuICAgICYtYmFja2dyb3VuZCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICA+ICoge1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IGRpdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zaGFwZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICAgIG9wYWNpdHk6IDEhaW1wb3J0YW50O1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgID4gc3ZnIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6ICAtMTZweDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI3MXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgID4gc3ZnIHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgID4gc3ZnIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXNsaWRlcyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNDVzLCBtaW4taGVpZ2h0IDAuNDVzO1xyXG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMSwwLDEsMSk7XHJcbiAgICB9XHJcbiAgICAmLXNsaWRlIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyOTtcclxuICAgICAgICAgICAgLnByb21vLXNsaWRlci1tb3JlIHtcclxuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICAgICAgICAgIC5wcm9tby1zbGlkZXItbW9yZSB7XHJcbiAgICAgICAgICAgICAgICAmLFxyXG4gICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktbmF2LXNlY29uZGFyeS1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWN1c3RvbS1pY29uIHtcclxuICAgICAgICAgICAgLnByb21vLXNsaWRlci1pY29ucyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxuICAgICYtYm9keSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDIyO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXByb21vLXNsaWRlci1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1wcm9tby1zbGlkZXItYm9keS1wYWRkaW5nLXJ0bCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1jb250ZW50IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogNTA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1wcm9tby1zbGlkZXItY29udGVudC1wYWRkaW5nKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChsZykge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1x0XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcHJvbW8tc2xpZGVyLWNvbnRlbnQtcGFkZGluZy1ydGwpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKGxnKSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1x0XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWljb25zIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB6LWluZGV4OiAyMDtcclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYucHJvbW8tc2xpZGVyLWljb25zLS1pbWFnZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgIC5wcm9tby1zbGlkZXItaWNvbiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1jYXB0aW9ue1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcm9tby1zbGlkZXItY2FwdGlvbi1mb250LXNpemUpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcm9tby1zbGlkZXItY2FwdGlvbi1mb250LXdlaWdodCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci1jYXB0aW9uLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICArIC5wcm9tby1zbGlkZXItdGl0bGV7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy0yeCkgLSA0cHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtdGl0bGUge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcm9tby1zbGlkZXItdGl0bGUtZm9udC1zaXplKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcHJvbW8tc2xpZGVyLXRpdGxlLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJvbW8tc2xpZGVyLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxuICAgIH1cclxuICAgICYtZGVzYyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICsgLnByb21vLXNsaWRlci1kZXNjIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1tb3JlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbGVmdDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdWktbmF2LXNlY29uZGFyeS1saW5rLWNvbG9yKTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXVpLW5hdi1zZWNvbmRhcnktbGluay1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWFjdGlvbnMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgICAgIC5idG4gKyAuYnRuIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXVwc2VsbHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBmb3Jte1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAuYnRuICsgLmJ0bntcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICB1bC5wcm9tby1zbHVkZXItZGVzYyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItaWNvbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDQycHg7XHJcbiAgICAgICAgdG9wOiAtNTRweDtcclxuICAgICAgICB3aWR0aDogdmFyKC0tcHJvbW8tc2xpZGVyLWlsbHVzdHJhdGlvbi13aWR0aCk7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgJiNQcm9tb3Rpb257XHJcbiAgICAgICAgJi5wcm9tby1zbGlkZXJ7XHJcbiAgICAgICAgICAgICY6bm90KC5wcm9tby1zbGlkZXIteHMpe1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgLnByb21vLXNsaWRlci1zaGFwZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0gIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYucHJvbW8tc2xpZGVyLXhze1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKG1kLCBtZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgLnByb21vLXNsaWRlci1zaGFwZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucHJvbW8tc2hhcGUge1xyXG4gICAgJi1sZWZ0IHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXNoYXBlLWxlZnQpO1xyXG4gICAgICAgIGZpbGwtcnVsZTogZXZlbm9kZDtcclxuICAgICAgICBjbGlwLXJ1bGU6IGV2ZW5vZGQ7XHJcbiAgICB9XHJcbiAgICAmLXJpZ2h0IHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctYmFubmVyLXNoYXBlLXJpZ2h0KTtcclxuICAgICAgICBmaWxsLXJ1bGU6IGV2ZW5vZGQ7XHJcbiAgICAgICAgY2xpcC1ydWxlOiBldmVub2RkO1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIC5wcm9tby1zbGlkZXIge1xyXG4gICAgICAgICY6bm90KC5wcm9tby1zbGlkZXIteHMpIHtcclxuICAgICAgICAgICAgLnByb21vLXNsaWRlci1pY29uIHtcclxuICAgICAgICAgICAgICAgICZbd2lkdGg9XCI1OTZcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTQ4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblByb21vIFNsaWRlciAtIFdpdGggU2xpZGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wcm9tby1zbGlkZXJbZGF0YS1wcm9tby1zbGlkZXJdIHsgICAgXHJcbiAgICAucHJvbW8tc2xpZGVyLWJhY2tncm91bmQge1xyXG4gICAgICAgID4gKjpub3QoLnByb21vLXNsaWRlci1zaGFwZSkge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMC40NXMsIG9wYWNpdHkgMC40NXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci13cmFwcGVyLCAgICBcclxuICAgIC5wcm9tby1zbGlkZXItc2xpZGUgeyAgICAgICAgXHJcbiAgICAgICAgbWluLWhlaWdodDogdmFyKC0tcHJvbW8tc2xpZGVyLW1pbi1oZWlnaHQpO1xyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci1zbGlkZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci1ib2R5IHsgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcHJvbW8tc2xpZGVyLWJvZHktcGFkZGluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXByb21vLXNsaWRlci1ib2R5LXBhZGRpbmctcnRsKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWNvbnRlbnQge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLy8gd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItaWNvbiB7ICAgICAgICBcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC8vIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XHJcbiAgICB9XHJcbn1cclxuLnByb21vLXNsaWRlcjpub3QoW2RhdGEtcHJvbW8tc2xpZGVyXSkge1xyXG4gICAgLnByb21vLXNsaWRlci1ib2R5IHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci1jb250ZW50IHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWxnKTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctbGcpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblByb21vIFNsaWRlciAtIFNtYWxsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBtaXhpbiBwcm9tby1zbGlkZXIteHMoKSB7XHJcbiAgICAucHJvbW8tc2xpZGVyLXNsaWRlIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvIWltcG9ydGFudDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICYubm8taWNvbnMge1xyXG4gICAgICAgICAgICAucHJvbW8tc2xpZGVyLWljb25zIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItYm9keSB7XHJcbiAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWNvbnRlbnQge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWljb25zIHtcclxuICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci14cy1pbGx1c3RyYXRpb24taGVpZ2h0KTtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhsZyk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgJi5wcm9tby1zbGlkZXItaWNvbnMtLWltYWdlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWljb24ge1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IDUwJTsgICAgXHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLWlsbHVzdHJhdGlvbi1oZWlnaHQpO1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1wcm9tby1zbGlkZXIteHMtaWxsdXN0cmF0aW9uLXdpZHRoKTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tcHJvbW8tc2xpZGVyLXhzLWlsbHVzdHJhdGlvbi13aWR0aCkgLyAtMik7XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLW1vcmUge1xyXG4gICAgICAgIHJpZ2h0OiAyNHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItdGl0bGUge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItbmF2IHtcclxuICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAuZnVsbC1uYW1lIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNob3J0LW5hbWUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWNsb3NlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnktYm9keS1jb2xvcik7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJvbW8tc2xpZGVyLXhzLXRpdGxlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci14cy10aXRsZS1saW5lLWhlaWdodCk7XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWJhY2tncm91bmR7XHJcbiAgICAgICAgbWluLXdpZHRoOiA1MTZweDtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci1zaGFwZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgPiBzdmcge1xyXG4gICAgICAgICAgICB0b3A6IC01OHB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogLTgxcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAtODFweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnByb21vLXNsaWRlci1zaGFwZS14c3tcclxuICAgICAgICAgICAgPiBzdmcge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6bm90KFtkYXRhLXByb21vLXNsaWRlcl0pIHsgICAgICAgIFxyXG4gICAgICAgIC5wcm9tby1zbGlkZXItYm9keSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9tby1zbGlkZXItY29udGVudCB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJltkYXRhLXByb21vLXNsaWRlcl0geyAgICAgICAgXHJcbiAgICAgICAgLnByb21vLXNsaWRlci1ib2R5IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAwIDQwcHggMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByb21vLXNsaWRlci1jb250ZW50IHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgcGFkZGluZzogMjRweCAyNHB4IDMycHggMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1peGluIHByb21vLXNsaWRlci1zbSgpIHtcclxuICAgIC5wcm9tby1zbGlkZXItY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci1pY29uIHtcclxuICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJvbW8tc2xpZGVyLXNtLXRpdGxlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXByb21vLXNsaWRlci1zbS10aXRsZS1saW5lLWhlaWdodCk7XHJcbiAgICB9XHJcbn1cclxuLnByb21vLXNsaWRlciB7XHJcbiAgICAmLW1kIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDcxOHB4O1xyXG4gICAgfVxyXG4gICAgJi1zbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgcHJvbW8tc2xpZGVyLXNtKCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgICAgICYteHMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwcm9tby1zbGlkZXIteHMoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnByb21vLXNsaWRlciB7IFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgICAgIEBpbmNsdWRlIHByb21vLXNsaWRlci14cygpO1xyXG4gICAgfVxyXG59XHJcbkBrZXlmcmFtZXMgc2hvd1NsaWRlckljb25zIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MnB4LC0zMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5Aa2V5ZnJhbWVzIHNob3dTbGlkZXJJY29uc1JldmVyc2Uge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUycHgsMzBweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBzaG93U2xpZGVySW5zIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTZweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDsgICAgICAgIFxyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcbkBrZXlmcmFtZXMgc2xpZGVyRmFkZUluIHtcclxuICAgIGZyb20geyBcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgLnByb21vLXNsaWRlci14c3tcclxuICAgICAgICAucHJvbW8tc2xpZGVyLWljb24ge1xyXG4gICAgICAgICAgICAmW3dpZHRoPVwiNTk2XCJdIHtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogLTQ4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUHJvbW8gU2xpZGVyIC0gTmF2XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBtaXhpbiBwcm9tby1zbGlkZXItZG90cygpIHtcclxuICAgID4gbGkge1xyXG4gICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiOyAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogOHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktYmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBwcm9tby1zbGlkZXItZG90cy1wcmltYXJ5KCkge1xyXG4gICAgPiBsaSB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1kb3QtbmF2LWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1kb3QtbmF2LWFjdGl2ZS1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnByb21vLXNsaWRlciB7XHJcbiAgICAmLW5hdiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIG1hcmdpbjogMCAtNXB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktbmF2LXNlY29uZGFyeS1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2hvcnQtbmFtZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1uYXYtZG90cyB7XHJcbiAgICAgICAgQGluY2x1ZGUgcHJvbW8tc2xpZGVyLWRvdHMoKTtcclxuICAgIH1cclxuICAgICYteHN7XHJcbiAgICAgICAgLnByb21vLXNsaWRlci1uYXZ7XHJcbiAgICAgICAgICAgID4gbGl7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICY6aG92ZXIsJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAobGcpIHtcclxuICAgIC5wcm9tby1zbGlkZXIge1xyXG4gICAgICAgICYtbmF2IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcHJvbW8tc2xpZGVyLWRvdHMoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUHJvbW8gU2xpZGVyIC0gU3R5bGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wcm9tby1zbGlkZXItcHJpbWFyeSB7XHJcbiAgICAucHJvbW8tc2xpZGVyLXdyYXBwZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stYmcpO1xyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci1uYXYge1xyXG4gICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICYuYWN0aXZlLFxyXG4gICAgICAgICAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWNsb3NlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWNvbG9yKTtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAmOmFjdGl2ZSwgXHJcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci1zbGlkZSB7ICAgICAgICBcclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGUsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAucHJvbW8tc2xpZGVyLW1vcmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWRlc2Mge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpO1xyXG4gICAgfVxyXG59XHJcbi5wcm9tby1zbGlkZXItc2Vjb25kYXJ5IHtcclxuICAgIC5wcm9tby1zbGlkZXItd3JhcHBlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKTtcclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItbmF2IHtcclxuICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItY2xvc2Uge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stbGluay1jb2xvcik7XHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICY6YWN0aXZle1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9tby1zbGlkZXItc2xpZGUgeyAgICAgICAgXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIC5wcm9tby1zbGlkZXItbW9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByb21vLXNsaWRlci10aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLWRlc2Mge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuLnByb21vLXNsaWRlci1wcmltYXJ5LFxyXG4ucHJvbW8tc2xpZGVyLXNlY29uZGFyeSB7XHJcbiAgICAucHJvbW8tc2xpZGVyLW1vcmUsXHJcbiAgICAucHJvbW8tc2xpZGVyLW5hdiA+IGxpIHtcclxuICAgICAgICAmLFxyXG4gICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAmLFxyXG4gICAgICAgICAgICA+IGkgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICAucHJvbW8tc2xpZGVyLW1vcmUge1xyXG4gICAgICAgICAgICAmLFxyXG4gICAgICAgICAgICA+IGkgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvbW8tc2xpZGVyLW5hdi1kb3RzIHsgICAgICAgIFxyXG4gICAgICAgIC8vQGluY2x1ZGUgcHJvbW8tc2xpZGVyLWRvdHMtcHJpbWFyeSgpO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucHJvbW8tc2xpZGVyLWljb257XHJcbiAgICAmOm5vdCgucHJvbW8tc2xpZGVyLWljb24tcmV2ZXJzZSl7XHJcbiAgICAgICAgJltjbGFzcyo9XCItbGVmdFwiXXtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltjbGFzcyo9XCItY2VudGVyXCJde1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2NsYXNzKj1cIi1yaWdodFwiXXsgXHJcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucHJvbW8tc2xpZGVyLWljb24tcmV2ZXJzZXtcclxuICAgICZbY2xhc3MqPVwiLWxlZnRcIl17XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuICAgICZbY2xhc3MqPVwiLWNlbnRlclwiXXtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgfVxyXG4gICAgJltjbGFzcyo9XCItcmlnaHRcIl17IFxyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIFN0eWxlcyBmb3IgbmFtZSBvZiBzbGlkZVxyXG4ucHJvbW8tc2xpZGVye1xyXG4gICAgJi14c3tcclxuICAgICAgICAucHJvbW8tc2xpZGVyLW5hdntcclxuICAgICAgICAgICAgPiBsaXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWRvdC1uYXYtaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciwmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1saW5rLWFjdGl2ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcm9tby1zbGlkZXItcHJpbWFyeSwucHJvbW8tc2xpZGVyLXNlY29uZGFyeSB7XHJcbiAgICAucHJvbW8tc2xpZGVyLW5hdntcclxuICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYteHN7XHJcbiAgICAgICAgLnByb21vLXNsaWRlci1uYXZ7XHJcbiAgICAgICAgICAgID4gbGl7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1kb3QtbmF2LWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgICY6aG92ZXIsJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBTdHlsZXMgZm9yIGRvdHMgb2Ygc2xpZGVcclxuXHJcbi5wcm9tby1zbGlkZXItcHJpbWFyeSwucHJvbW8tc2xpZGVyLXNlY29uZGFyeSB7XHJcbiAgICAucHJvbW8tc2xpZGVyLW5hdi1kb3Rze1xyXG4gICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAmOjphZnRlcntcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dmFyKC0tcHJpbWFyeS1ibG9jay1kb3QtbmF2LWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2stbGluay1hY3RpdmUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi14c3tcclxuICAgICAgICAucHJvbW8tc2xpZGVyLW5hdi1kb3Rze1xyXG4gICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp2YXIoLS1wcmltYXJ5LWJsb2NrLWRvdC1uYXYtaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICYuYWN0aXZle1xyXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWxpbmstYWN0aXZlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIi5wcmljZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiB2YXIoLS1wcmljZS1jb2xvcik7XHJcbiAgICBmb250LXNpemU6IHZhcigtLXByaWNlLWZvbnQtc2l6ZSk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2UtZm9udC13ZWlnaHQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLWxpbmUtaGVpZ2h0KTtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAmLWlubGluZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XHJcbiAgICB9XHJcbiAgICAmLWN5Y2xlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmLWFtb3VudCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAmLnByaWNlLWlubGluZS1hbW91bnR7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICArIC5wcmljZS1jeWNsZS1pbmxpbmV7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWN5Y2xlLCAgICBcclxuICAgICYtc2V0dXAtZmVlLFxyXG4gICAgJi1zZXR1cC1mZWUgW3N0eWxlPVwiY29sb3I6IHJlZDsgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XCJdLFxyXG4gICAgJi1zdGFydGluZy1mcm9tIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpY2UtY3ljbGUtY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2UtY3ljbGUtZm9udC1zaXplKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2UtY3ljbGUtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1jeWNsZS1saW5lLWhlaWdodCk7XHJcbiAgICB9XHJcbiAgICAmLWN1cnJlbmN5LFxyXG4gICAgc3ViIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLWN1cnJlbmN5LWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLWN1cnJlbmN5LWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2UtY3VycmVuY3ktbGluZS1oZWlnaHQpO1xyXG4gICAgfVxyXG4gICAgJi1zYXZpbmdzIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpY2Utc2F2aW5ncy1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLXNhdmluZ3MtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1kaXNjb3VudCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpY2Utc2F2aW5ncy1iYWNrZ3JvdW5kKTtcclxuICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICB9XHJcbiAgICAmLXRvdGFsLFxyXG4gICAgJi10aXRsZSB7ICAgICAgICBcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpY2UtdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2UtdGl0bGUtZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2UtdGl0bGUtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgIH1cclxuICAgICYtYWRkb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKVxyXG4gICAgfVxyXG4gICAgJi1kaXNjb3VudENlbnRlciB7XHJcbiAgICAgICAgLnByaWNlLWFtb3VudHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmljZS1zYXZpbmdzLWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1zYXZpbmdzLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLXNhdmluZ3MtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmRvbWFpbi1wcmljZSB7XHJcbiAgICAgICAgICAgIC5wcmljZXtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtbGVmdCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIC5wYWNrYWdlLWN5Y2xlLFxyXG4gICAgICAgIC5wcmljZS10aXRsZSxcclxuICAgICAgICAucHJpY2UtYW1vdW50LFxyXG4gICAgICAgIC5wcmljZS10b3RhbCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcmljZS1zYXZpbmdzIHtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWgge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAucHJpY2Uge1xyXG4gICAgICAgICAgICAgICAgJi1hbW91bnQge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAvL2ZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtc2F2aW5ncyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtcmlnaHQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgLnBhY2thZ2UtY3ljbGUge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByaWNlLXNhdmluZ3Mge1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWgge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgICYtYW1vdW50IHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLXNhdmluZ3Mge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1sZyB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1sZy1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1sZy1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLWxnLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICAucHJpY2UtY3VycmVuY3ksXHJcbiAgICAgICAgc3ViIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1sZy1jdXJyZW5jeS1mb250LXNpemUpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2UtbGctY3VycmVuY3ktbGluZS1oZWlnaHQpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2UtbGctY3VycmVuY3ktZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtc20ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2Utc20tZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2Utc20tbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1zbS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgLnByaWNlLWN1cnJlbmN5LFxyXG4gICAgICAgIHN1YiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcHJpY2Utc20tY3VycmVuY3ktZm9udC1zaXplKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLXNtLWN1cnJlbmN5LWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLXNtLWN1cnJlbmN5LWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXhzIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXhzLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLXhzLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2UteHMtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIC5wcmljZS1jdXJyZW5jeSxcclxuICAgICAgICBzdWIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXhzLWN1cnJlbmN5LWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS14cy1jdXJyZW5jeS1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS14cy1jdXJyZW5jeS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5kaXNjb3VudF9jZW50ZXItYmFzZV9jYXJ0X2RvbWFpbl9saXN0X3JlZ2lzdGVyLFxyXG4uZGlzY291bnRfY2VudGVyLXN0YW5kYXJkX2NhcnRfYWRkb25fcHJpY2UsXHJcbi5kaXNjb3VudF9jZW50ZXItc3RhbmRhcmRfY2FydF9kb21haW5fcmVnaXN0ZXIsXHJcbi5kaXNjb3VudF9jZW50ZXItc3RhbmRhcmRfY2FydF9kb21haW5fdHJhbnNmZXJ7XHJcbiAgICBjb2xvcjogdmFyKC0tcHJpY2Utc2F2aW5ncy1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtc2l6ZSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2Utc2F2aW5ncy1saW5lLWhlaWdodCk7XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2Utc2F2aW5ncy1mb250LXdlaWdodCk7XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhY2thZ2UgIFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5wYWNrYWdlcyB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG4ucGFja2FnZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhY2thZ2UtYmcpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1wYWNrYWdlLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYWNrYWdlLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tcGFja2FnZS1ibG9jay1zaGFkb3cpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tcGFja2FnZS1wYWRkaW5nKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgJi5oYXMtc2hhZG93IHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG4gICAgLnBhY2thZ2Utc2lkZS1sZWZ0ID4gKixcclxuICAgID4gKiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAucGFja2FnZS1zaWRlLWxlZnQgPiAqOm5vdCgubGFiZWwtY29ybmVyKSArICosXHJcbiAgICA+ICo6bm90KC5sYWJlbC1jb3JuZXIpICsgKiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tcGFja2FnZS1lbGVtZW50LXNwYWNpbmcpO1xyXG4gICAgfVxyXG4gICAgLnBhY2thZ2Utc2lkZSA+ICo6ZW1wdHksXHJcbiAgICA+ICo6ZW1wdHkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAucGFja2FnZS1zaWRlLWxlZnQgPiAqICsgKixcclxuICAgID4gKiArICoge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2UtZWxlbWVudC1zcGFjaW5nKVxyXG4gICAgfVxyXG4gICAgLnByZW1pdW0tZGl2aWRlcntcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuICAgICYtYm9keSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgfVxyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcGFja2FnZS10aXRsZS1mb250LXNpemUpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wYWNrYWdlLXRpdGxlLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcGFja2FnZS10aXRsZS1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgICAgICArIC5wYWNrYWdlLXByaWNlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tcGFja2FnZS10aXRsZS1zcGFjaW5nLWJvdHRvbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zdWJ0aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcikhaW1wb3J0YW50OyAvLyBvdmVycmlkZSB0aGUgc2Vjb25kYXJ5IGJhY2tncm91bmQgY29sb3IgZm9yIHBhcmFncmFwaHNcclxuICAgIH1cclxuICAgICYtc2V0dXAtZmVlLFxyXG4gICAgJi1zdGFydGluZy1mcm9tLFxyXG4gICAgJi1xdHksXHJcbiAgICAmLWJpbGxpbmctY3ljbGUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgIFtzdHlsZT1cImNvbG9yOiByZWQ7IHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1wiXSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAucHJpY2UtcHJlZml4IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXF0eSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC04cHg7XHJcbiAgICB9XHJcbiAgICAucGFja2FnZS1mZWF0dXJlc3tcclxuICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgPiBiLFxyXG4gICAgICAgICAgICA+IHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZmVhdHVyZXMge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAwO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgPiBiLFxyXG4gICAgICAgICAgICA+IHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gW2RhdGEtdG9nZ2xlPVwidG9vbHRpcFwiXXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5mZWF0dXJlcy1oZWFkaW5nIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtY29uZGVuc2VkIHtcclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1mZWF0dXJlcyxcclxuICAgICYtY29udGVudCB7XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICB9XHJcbiAgICAmLWZlYXR1cmVzLFxyXG4gICAgJi1kZXNjLFxyXG4gICAgJi1jb250ZW50ID4gcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wYWNrYWdlLWRlc2MtZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcGFja2FnZS1kZXNjLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcGFja2FnZS1kZXNjLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICA+IDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29udGVudCB7XHJcbiAgICAgICAgPiAqICsgKiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2UtZWxlbWVudC1zcGFjaW5nKVxyXG4gICAgICAgIH1cclxuICAgICAgICAubHMge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1jb250ZW50IHsgICAgIFxyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZsZXg6IDE7ICBcclxuICAgICAgICA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IHAge1xyXG4gICAgICAgICAgICAmLnBhY2thZ2UtZGVzYyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tcGFja2FnZS1lbGVtZW50LXNwYWNpbmcpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5wYWNrYWdlLWZlYXR1cmVzIHtcclxuICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICsgcCB7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhcmFncmFwaC1tYXJnaW4tYm90dG9tKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJiA+IHA6bm90KDplbXB0eSkge1xyXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2UtZWxlbWVudC1zcGFjaW5nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmID4gcDplbXB0eXtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWljb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgJi1hY3Rpb25zLFxyXG4gICAgJi1mb290ZXIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWNrYWdlLWVsZW1lbnQtc3BhY2luZyk7XHJcbiAgICAgICAgJi5wYWNrYWdlLXNpZGV7IFxyXG4gICAgICAgICAgICAucGFja2FnZS1wcmljZXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhY2thZ2UtYWN0aW9ucyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1wYWNrYWdlLWJ0bi1taW4td2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtYWN0aW9ucyB7XHJcbiAgICAgICAgPiAqICsgKjpub3QoLnBhY2thZ2UtbGVhcm4tbW9yZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICAgICAgPiBmb3JtIHNlbGVjdCArIC5idG4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuYnRuICsgLnBhY2thZ2UtbGVhcm4tbW9yZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXdwIHtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAmLmJ0bi1hZGQtdG8tY2FydHtcclxuICAgICAgICAgICAgICAgICAgICAmLmJ0bi1pbmZvW2Rpc2FibGVkXXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1pbmZvLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLWluZm8tYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1pbmZvLWJvcmRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1sZWFybi1tb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgIH1cclxuICAgICYtbW9uaXRvcmluZyB7XHJcbiAgICAgICAgLnBhY2thZ2Uge1xyXG4gICAgICAgICAgICAmLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDVweDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXN1YnRpdGxlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtYWN0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXByaWNlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWFkZG9uc3tcclxuICAgICAgICAucGFja2FnZS10aXRsZXtcclxuICAgICAgICAgICAgJjpoYXMoLmdyYXBoaWMtaXRlbSl7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYWNrYWdlIC0gRmVhdHVyZWRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhY2thZ2UtZmVhdHVyZWQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAubGFiZWw6bm90KC5sYWJlbC1jb3JuZXIpOm5vdCgucHJpY2UtZGlzY291bnQtc2F2ZSkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgfVxyXG4gICAgLmxhYmVsLWNvcm5lciB7XHJcbiAgICAgICAgdG9wOiAtMTVweDtcclxuICAgICAgICByaWdodDogMTVweDtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWCg1MCUpO1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7ICBcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhY2thZ2UgLSBTZXBhcmF0b3IgbGluZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFja2FnZS10aXRsZSArIC5wYWNrYWdlLWNvbnRlbnQsXHJcbi5wYWNrYWdlLXByaWNlICsgLnBhY2thZ2UtY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFja2FnZSAtIFNpemVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhY2thZ2Utc20ge1xyXG4gICAgcGFkZGluZzogdmFyKC0tcGFja2FnZS1zbS1wYWRkaW5nKTtcclxuICAgID4gKiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC5wYWNrYWdlLXNpZGUtbGVmdCA+ICo6bm90KC5sYWJlbC1jb3JuZXIpICsgKixcclxuICAgID4gKjpub3QoLmxhYmVsLWNvcm5lcikgKyAqIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1wYWNrYWdlLXNtLWVsZW1lbnQtc3BhY2luZyk7XHJcbiAgICB9XHJcbiAgICAucGFja2FnZS1zaWRlLWxlZnQgPiAqICsgKixcclxuICAgIC5wYWNrYWdlLXRpdGxlLFxyXG4gICAgLnBhY2thZ2UtbmFtZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wYWNrYWdlLXNtLXRpdGxlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXBhY2thZ2Utc20tdGl0bGUtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wYWNrYWdlLXNtLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxuICAgIH1cclxuICAgIC5wYWNrYWdlLXN0YXJ0aW5nLWZyb217XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgfVxyXG4gICAgLnBhY2thZ2Utc2V0dXAtZmVlLFxyXG4gICAgLnBhY2thZ2UtcXR5LFxyXG4gICAgLnBhY2thZ2UtYmlsbGluZy1jeWNsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7XHJcbiAgICB9XHJcbiAgICAucGFja2FnZS1mZWF0dXJlcyxcclxuICAgIC5wYWNrYWdlLWRlc2MsXHJcbiAgICAucGFja2FnZS1jb250ZW50ID4gcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wYWNrYWdlLWRlc2Mtc20tZm9udC1zaXplKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcGFja2FnZS1kZXNjLXNtLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcGFja2FnZS1kZXNjLXNtLWZvbnQtd2VpZ2h0KTtcclxuICAgIH1cclxuICAgIC5wYWNrYWdlLXRpdGxlICsgLnBhY2thZ2UtY29udGVudCxcclxuICAgIC5wYWNrYWdlLXByaWNlICsgLnBhY2thZ2UtY29udGVudCxcclxuICAgIC5wYWNrYWdlLXByaWNlICsgLnBhY2thZ2UtZmVhdHVyZXMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhY2thZ2Utc20tZWxlbWVudC1zcGFjaW5nKTtcclxuICAgIH1cclxuICAgIC5wYWNrYWdlLWFjdGlvbnMsXHJcbiAgICAucGFja2FnZS1mb290ZXIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWNrYWdlLXNtLWVsZW1lbnQtc3BhY2luZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFja2FnZSAtIExheW91dFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFja2FnZSB7XHJcbiAgICAmLWxlZnQsXHJcbiAgICAmLWFkZG9ucyB7XHJcbiAgICAgICAgLnBhY2thZ2UtY29udGVudCB7ICAgICAgIFxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhY2thZ2UtZmVhdHVyZXMge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWFkZG9ucyB7XHJcbiAgICAgICAgJi1uYXJyb3cge1xyXG4gICAgICAgICAgICAucGFja2FnZS1mZWF0dXJlcyB7XHJcbiAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYWNrYWdlIC0gTGVmdCBBbGlnblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFja2FnZS1sZWZ0IHtcclxuICAgICYsXHJcbiAgICAucGFja2FnZS1jb250ZW50LFxyXG4gICAgLnBhY2thZ2UtZmVhdHVyZXMsXHJcbiAgICAucGFja2FnZS1hY3Rpb25zIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG4gICAgLnBhY2thZ2UtcHJpY2Uge1xyXG4gICAgICAgIC5wcmljZSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICYgKyAucGFja2FnZS1hY3Rpb25ze1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wYWNrYWdlLXN0YXJ0aW5nLWZyb20ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG4gICAgLnBhY2thZ2UtZm9vdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIC5wYWNrYWdlLWFjdGlvbnN7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhY2thZ2UtcHJpY2Uge1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYWNrYWdlLWFjdGlvbnMgeyBcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhY2thZ2UgLSBIb3Jpem9udGFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLnBhY2thZ2UtaG9yaXpvbnRhbHtcclxuICAgIC5wYWNrYWdlLWRpdmlkZXJ7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5wcmljZSB7XHJcbiAgICAgICAgJi1kaXNjb3VudENlbnRlciB7XHJcbiAgICAgICAgICAgIC5wcmljZS1hbW91bnQge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIC5wYWNrYWdlLWhvcml6b250YWwge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgLnBhY2thZ2UtaGVhZGVyIHtcclxuICAgICAgICAgICAgJjpoYXMoLmdyYXBoaWMtaXRlbSl7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTtcclxuICAgICAgICAgICAgICAgIC5ncmFwaGljLWl0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wYWNrYWdlLXByaWNle1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICArIC5wYWNrYWdlLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wYWNrYWdlLXNpZGV7XHJcbiAgICAgICAgICAgICYtbGVmdHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhY2thZ2UtYm9keSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhY2thZ2UtY29udGVudCB7XHJcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICAgICAgZmxleC1zaHJpbms6IDE7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHA6bm90KDplbXB0eSk6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucGFja2FnZS1hY3Rpb25zLFxyXG4gICAgICAgIC5wYWNrYWdlLWZvb3RlciB7XHJcbiAgICAgICAgICAgIC5wYWNrYWdlLXByaWNle1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvcm0sXHJcbiAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhY2thZ2UtZmVhdHVyZXMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNTAlO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAwO1xyXG4gICAgICAgICAgICAgICAgKyBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wYWNrYWdlLXByaWNlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIC5wcmljZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgIH1cclxuICAgIC5wYWNrYWdlLWhvcml6b250YWwtaW5saW5lIHtcclxuICAgICAgICAucGFja2FnZS1ib2R5IHtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhY2thZ2UtY29udGVudCxcclxuICAgICAgICAucGFja2FnZS1mb290ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucGFja2FnZS1jb250ZW50IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgKyAqIHsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWNrYWdlLWVsZW1lbnQtc3BhY2luZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhY2thZ2UtZm9vdGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgIC5wcmljZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhY2thZ2UtZWxlbWVudC1zcGFjaW5nKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgLnBhY2thZ2UtaG9yaXpvbnRhbCB7XHJcbiAgICAgICAgLnBhY2thZ2UtcHJpY2Uge1xyXG4gICAgICAgICAgICAucHJpY2Uge1xyXG4gICAgICAgICAgICAgICAgJi1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtc2F2aW5ncyB7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcmVtaXVtLWRpdmlkZXJ7XHJcbiAgICBtYXgtd2lkdGg6IDIxMHB4OyAvLz9cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTsgXHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbGlnaHQpO1xyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDE2LCA5OCwgMjU0LCAwKSAwJSwgdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKSAyMC4zMSUsIHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcikgODAuNzMlLCByZ2JhKDE2LCA5OCwgMjU0LCAwKSAxMDAlKTtcclxuICAgIH1cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBoZWlnaHQ6IDFweDsgXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgxNiwgOTgsIDI1NCwgMCkgMCUsIHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcikgMjAuMzElLCB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpIDgwLjczJSwgcmdiYSgxNiwgOTgsIDI1NCwgMCkgMTAwJSk7XHJcbiAgICB9XHJcbiAgICA+IHNwYW57XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBwYWRkaW5nOiA0cHggdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgIH1cclxufVxyXG4vLyBmaXggcGFja2FnZSBhZGRvbnMgc2V0dXAgZmVlIHZpZXdcclxuLnBhZ2UtYWRkb25ze1xyXG4gICAgLnBhY2thZ2UtcHJpY2V7XHJcbiAgICAgICAucHJpY2UtaW5saW5le1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICB9IFxyXG4gICAgfVxyXG59XHJcbkBtZWRpYShtYXgtd2lkdGg6MTI0MHB4KSBhbmQgKG1pbi13aWR0aDo5OTJweCl7XHJcbiAgICAucGFnZS1hZGRvbnN7XHJcbiAgICAgICAgLnBhY2thZ2UtZm9vdGVye1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgLnByaWNle1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhZ2UtaG9tZXBhZ2V7XHJcbiAgICAucGFja2FnZS1pY29ue1xyXG4gICAgICAgID5zdmcsID4gaW1ne1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJcclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Gb3JtIC0gU3dpdGNoXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zd2l0Y2gge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRoZWlnaHQ6IDI0cHg7XHJcblx0d2lkdGg6IDQwcHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdCsuZm9ybS10ZXh0IHtcclxuXHRcdG1hcmdpbi1sZWZ0OiBzcGFjaW5nKDJ4KTtcclxuXHR9XHJcblx0LyogU3dpdGNoOiBDaGVja2JveCAqL1xyXG5cdCZfX2NoZWNrYm94IHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHQrLnN3aXRjaF9fY29udGFpbmVyIHtcclxuXHRcdFx0LnN3aXRjaF9faGFuZGxlIHtcclxuXHRcdFx0XHRyaWdodDogMThweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0JjpjaGVja2VkIHtcclxuXHRcdFx0Ky5zd2l0Y2hfX2NvbnRhaW5lciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcblx0XHRcdFx0LnN3aXRjaF9faGFuZGxlIHtcclxuXHRcdFx0XHRcdHJpZ2h0OiAycHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLS1kb21haW57XHJcblx0XHRcdC5sb2FkZXJ7XHJcblx0XHRcdFx0dHJhbnNpdGlvbjogMnM7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5pcy1sb2FkaW5ne1xyXG5cdFx0XHRcdCsuc3dpdGNoX19jb250YWluZXIge1xyXG5cdFx0XHRcdFx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHRcdFx0XHRcdC5sb2FkZXJ7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0XHRyaWdodDogOHB4O1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiB1bnNldDtcclxuXHRcdFx0XHRcdFx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCY6YWZ0ZXJ7XHJcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCY6Y2hlY2tlZHtcclxuXHRcdFx0XHQmLmlzLWxvYWRpbmd7XHJcblx0XHRcdFx0XHQrIC5zd2l0Y2hfX2NvbnRhaW5lcntcclxuXHRcdFx0XHRcdFx0LmxvYWRlcntcclxuXHRcdFx0XHRcdFx0XHRsZWZ0OiA3cHg7XHJcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IHVuc2V0O1xyXG5cdFx0XHRcdFx0XHRcdC5zcGlubmVye1xyXG5cdFx0XHRcdFx0XHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC8qIFN3aXRjaDogSGFuZGxlICovXHJcblx0Jl9faGFuZGxlIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMnB4O1xyXG5cdFx0cmlnaHQ6IDJweDtcclxuXHRcdHotaW5kZXg6IDI7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGhlaWdodDogMjBweDtcclxuXHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDEycHg7XHJcblx0XHR0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG5cdH1cclxuXHQvKiBTd2l0Y2g6IENvbnRhaW5lciAqL1xyXG5cdCZfX2NvbnRhaW5lciB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItMyk7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxMnB4O1xyXG5cdFx0dHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuXHJcblx0XHQvKlN3aXRjaCBsb2FkZXIqL1xyXG5cdFx0LmxvYWRlcntcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdFx0dHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuXHRcdFx0ei1pbmRleDogMjtcclxuXHRcdFx0LnNwaW5uZXJ7XHJcblx0XHRcdFx0Ji1zbXtcclxuXHRcdFx0XHRcdGhlaWdodDogMTZweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0PiBkaXZ7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHRcclxuXHJcbn1cclxuXHJcbnRye1xyXG5cdCYucHJldmVudC1jbGlja3tcclxuXHRcdD4gdGR7XHJcblx0XHRcdGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5zd2l0Y2h7XHJcblx0JltkYXRhLWF1dG8tcmVuZXctc3dpdGNoXXtcclxuXHRcdCYuaXMtbG9hZGluZ3tcclxuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHRcdCY6YmVmb3Jle1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHRcdFx0XHR6LWluZGV4OiAxMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cdFxyXG59XHJcblxyXG4uc3dpdGNoIHtcclxuXHQmLS10ZXh0IHtcclxuXHRcdHdpZHRoOiA1MHB4O1xyXG5cdFx0LnN3aXRjaF9fY2hlY2tib3gge1xyXG5cdFx0XHQrLnN3aXRjaF9fY29udGFpbmVyIHtcclxuXHRcdFx0XHQuc3dpdGNoX19oYW5kbGUge1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDI4cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0dG9wOiAycHg7XHJcblx0XHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDZweDtcclxuXHRcdFx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdFx0Y29udGVudDogXCJvZmZcIjtcclxuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItMik7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IDExcHg7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmOmNoZWNrZWQge1xyXG5cdFx0XHRcdCsuc3dpdGNoX19jb250YWluZXIge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcblx0XHRcdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0XHR0b3A6IDJweDtcclxuXHRcdFx0XHRcdFx0Ym90dG9tOiAwO1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFx0XHR6LWluZGV4OiAxO1xyXG5cdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRcdFx0XHRjb250ZW50OiBcIm9uXCI7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDExcHg7XHJcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuXHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgbHRye1xyXG5cdFx0XHRcdFx0XHRcdGxlZnQ6IDhweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBydGx7XHJcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IDI4cHghaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQuc3dpdGNoX19oYW5kbGUge1xyXG5cdFx0XHRcdFx0XHRyaWdodDogMnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuICAgICYtLWRhcmstbW9kZXtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIC5zd2l0Y2hfX2NoZWNrYm94IHtcclxuXHRcdFx0Ky5zd2l0Y2hfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICAuc3dpdGNoX19oYW5kbGV7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUgLCAtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9saWdodC1tb2RlLWljb24uc3ZnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmOmNoZWNrZWQge1xyXG5cdFx0XHRcdCsuc3dpdGNoX19jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIC5zd2l0Y2hfX2hhbmRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcbiAgICB9XHJcblx0Ji0tc217XHJcblx0XHRoZWlnaHQ6IDE4cHg7XHJcblx0XHR3aWR0aDogMzJweDtcclxuXHRcdC5zd2l0Y2hfX2hhbmRsZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XHJcblx0XHR9XHJcblx0XHQuc3dpdGNoX19jaGVja2JveCB7XHJcblx0XHRcdCsuc3dpdGNoX19jb250YWluZXIge1xyXG5cdFx0XHRcdC5zd2l0Y2hfX2hhbmRsZSB7XHJcblx0XHRcdFx0XHRyaWdodDogMTZweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0JjpjaGVja2VkIHtcclxuXHRcdFx0XHQrLnN3aXRjaF9fY29udGFpbmVyIHtcclxuXHRcdFx0XHRcdC5zd2l0Y2hfX2hhbmRsZSB7XHJcblx0XHRcdFx0XHRcdHJpZ2h0OiAycHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG4gICAgJi0tbGcge1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIC5zd2l0Y2hfX2hhbmRsZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zd2l0Y2hfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc3dpdGNoLS10ZXh0IHtcclxuICAgICAgICAgICAgLnN3aXRjaF9fY2hlY2tib3ggKyAuc3dpdGNoX19jb250YWluZXIgLnN3aXRjaF9faGFuZGxlIHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAzNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zd2l0Y2hfX2NoZWNrYm94OmNoZWNrZWQgKyAuc3dpdGNoX19jb250YWluZXI6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMzZweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnN3aXRjaF9fY2hlY2tib3g6Y2hlY2tlZCArIC5zd2l0Y2hfX2NvbnRhaW5lciAuc3dpdGNoX19oYW5kbGUge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3dpdGNoX19jaGVja2JveCArIC5zd2l0Y2hfX2NvbnRhaW5lcjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICByaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcblx0Ji0tcHJpbWFyeSB7XHJcblx0XHQuc3dpdGNoX19oYW5kbGUge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuXHRcdH1cclxuXHRcdC5zd2l0Y2hfX2NoZWNrYm94IHtcclxuXHRcdFx0JjpjaGVja2VkIHtcclxuXHRcdFx0XHQrLnN3aXRjaF9fY29udGFpbmVyIHtcclxuXHRcdFx0XHRcdC5zd2l0Y2hfX2hhbmRsZSB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQuc3dpdGNoX19jb250YWluZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5odG1se1xyXG4gICAgJi5sYWdvbS1kYXJrLW1vZGV7XHJcbiAgICAgICAgLnBhZ2UtbGFnb20tY21ze1xyXG4gICAgICAgICAgICAuc3dpdGNoLS1kYXJrLW1vZGV7XHJcbiAgICAgICAgICAgICAgICAuc3dpdGNoX19jaGVja2JveCB7XHJcbiAgICAgICAgICAgICAgICAgICAgKy5zd2l0Y2hfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJvblwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDhweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMjhweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN3aXRjaF9faGFuZGxlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN3aXRjaF9faGFuZGxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6bm90KC5sYWdvbS1kYXJrLW1vZGUpe1xyXG4gICAgICAgIC5wYWdlLWxhZ29tLWNtc3tcclxuICAgICAgICAgICAgLnN3aXRjaC0tZGFyay1tb2Rle1xyXG4gICAgICAgICAgICAgICAgLnN3aXRjaF9fY2hlY2tib3gge1xyXG4gICAgICAgICAgICAgICAgICAgICsuc3dpdGNoX19jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zd2l0Y2hfX2hhbmRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMjhweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwib2ZmXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zd2l0Y2hfX2hhbmRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUgLCAtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2xpZ2h0LW1vZGUtaWNvbi5zdmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi5mb3JtLXRleHQrLnN3aXRjaCB7XHJcblx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRm9ybSAtIEJvb3N0cmFwIFN3aXRjaFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uYm9vdHN0cmFwLXN3aXRjaCB7XHJcblx0bWFyZ2luLXRvcDogMTFweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcbiAgICB3aWR0aDogNjBweCFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRpbnB1dFt0eXBlPWNoZWNrYm94XSxcclxuXHRpbnB1dFt0eXBlPXJhZGlvXSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxuXHQmLWNvbnRhaW5lciB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0d2lkdGg6IDEwMCUhaW1wb3J0YW50O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMTJweDtcclxuXHRcdHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcblx0XHRtYXJnaW46IDAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQmLWhhbmRsZSB7XHJcblx0XHQmLW9uLFxyXG5cdFx0Ji1vZmYge1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0Zm9udC1zaXplOiAxMXB4O1xyXG5cdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRib3R0b206IDA7XHJcblx0XHRcdHdpZHRoOiBhdXRvIWltcG9ydGFudDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XHJcblx0XHR9XHJcblx0XHQmLW9mZntcclxuXHRcdFx0cmlnaHQ6IDhweDtcclxuXHRcdH1cclxuXHRcdCYtb257XHJcblx0XHRcdGxlZnQ6IDhweDtcclxuXHRcdH1cclxuXHR9XHJcblx0Ji1sYWJlbHtcclxuXHRcdCY6YWZ0ZXJ7XHJcblx0XHRcdHdpZHRoOiAyNHB4O1xyXG5cdFx0XHRoZWlnaHQ6IDI0cHg7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiAycHg7XHJcblx0XHRcdGxlZnQ6IDJweDtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0ei1pbmRleDogOTk5O1xyXG5cdFx0d2lkdGg6IDEwMCUhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQmLW9mZntcclxuXHRcdC5ib290c3RyYXAtc3dpdGNoIHtcclxuXHRcdFx0Ji1oYW5kbGV7XHJcblx0XHRcdFx0Ji1vbntcclxuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdCYtb257XHJcblx0XHQuYm9vdHN0cmFwLXN3aXRjaCB7XHJcblx0XHRcdCYtaGFuZGxle1xyXG5cdFx0XHRcdCYtb2Zme1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji1sYWJlbHtcclxuXHRcdFx0XHQmOmFmdGVye1xyXG5cdFx0XHRcdFx0bGVmdDogMzRweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji1jb250YWluZXJ7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCJcclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gU1ZHIEljb25zXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zdmctaWNvbiB7XHJcbiAgICAmLXN0cm9rZSB7ICAgICAgICBcclxuICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcclxuICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgIH1cclxuICAgICYtb3V0bGluZS1wLFxyXG4gICAgJi1vdXRsaW5lLWwsXHJcbiAgICAmLW91dGxpbmUtcyxcclxuICAgICYtb3V0bGluZS1pIHtcclxuICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogMnB4O1xyXG4gICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgfVxyXG4gICAgJi1vdXRsaW5lLXAge1xyXG4gICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLWljb24tY29sb3ItYmFzZSk7XHJcbiAgICB9XHJcbiAgICAmLW91dGxpbmUtbCB7XHJcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctaWNvbi1jb2xvci1saWdodGVyKTtcclxuICAgIH1cclxuICAgICYtb3V0bGluZS1zIHtcclxuICAgICAgICBzdHJva2U6IHZhcigtLXN2Zy1pY29uLWNvbG9yLXNlY29uZGFyeSk7XHJcbiAgICB9XHJcbiAgICAmLW91dGxpbmUtaSB7XHJcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctaWNvbi1jb2xvci1pY29uKTtcclxuICAgIH1cclxuICAgICYtaSB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWljb24tY29sb3ItaWNvbik7XHJcbiAgICAgICAgJi5zdmctaWNvbi1zdHJva2Uge1xyXG4gICAgICAgICAgICBzdHJva2U6IHZhcigtLXN2Zy1pY29uLWNvbG9yLWljb24pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtcHJpbWUge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1pY29uLWNvbG9yLWJhc2UpO1xyXG4gICAgICAgICYuc3ZnLWljb24tc3Ryb2tlIHtcclxuICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctaWNvbi1jb2xvci1iYXNlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXByaW1lLWwge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1pY29uLWNvbG9yLWxpZ2h0ZXIpO1xyXG4gICAgICAgICYuc3ZnLWljb24tc3Ryb2tlIHtcclxuICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctaWNvbi1jb2xvci1saWdodGVyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNlY3Rpb24tc2Vjb25kYXJ5LFxyXG4uYXBwLW5hdi1zZWNvbmRhcnksXHJcbi5tYWluLWZvb3Rlci1leHRlbmRlZC1wcmltYXJ5LFxyXG4ubWFpbi1mb290ZXItZXh0ZW5kZWQtc2Vjb25kYXJ5LFxyXG4uc3ZnLWljb24tb24tZGFyayB7XHJcbiAgICAuc3ZnLWljb24ge1xyXG4gICAgICAgICYtb3V0bGluZS1zIHtcclxuICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLXNlY29uZGFyeSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhY2thZ2Uge1xyXG4gICAgICAgIC5zdmctaWNvbiB7XHJcbiAgICAgICAgICAgICYtb3V0bGluZS1zIHtcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLWljb24tY29sb3Itc2Vjb25kYXJ5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG46cm9vdHtcclxuICAgIC5zZWN0aW9uLXByaW1hcnksXHJcbiAgICAuc2VjdGlvbi1zZWNvbmRhcnksXHJcbiAgICAubWFpbi1mb290ZXItZXh0ZW5kZWQtcHJpbWFyeSxcclxuICAgIC5tYWluLWZvb3Rlci1leHRlbmRlZC1zZWNvbmRhcnkge1xyXG4gICAgICAgIC5zdmctaWNvbi1vbi1kYXJre1xyXG4gICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTEpO1xyXG4gICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTIpO1xyXG4gICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTMpO1xyXG4gICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgICAgIC5sYWdvbTpub3QoLmxhZ29tLWxheW91dC1sZWZ0KTpub3QoLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUpIC5hcHAtbmF2LXByaW1hcnkgLm1lbnUubWVudS1wcmltYXJ5ID4gbGkgPiBhLFxyXG4gICAgICAgIC5sYWdvbTpub3QoLmxhZ29tLWxheW91dC1sZWZ0KTpub3QoLmxhZ29tLWxheW91dC1sZWZ0LXdpZGUpIC5hcHAtbmF2LXNlY29uZGFyeSAubWVudS5tZW51LXByaW1hcnkgPiBsaSA+IGEge1xyXG4gICAgICAgICAgICAuc3ZnLWljb24tb24tZGFya3tcclxuICAgICAgICAgICAgICAgIC0tc3ZnLWljb24tY29sb3ItMTogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMSk7XHJcbiAgICAgICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTIpO1xyXG4gICAgICAgICAgICAgICAgLS1zdmctaWNvbi1jb2xvci0zOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0zKTtcclxuICAgICAgICAgICAgICAgIC0tc3ZnLWljb24tY29sb3ItNDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItNCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAubGFnb20gLmFwcC1uYXYtcHJpbWFyeSAubWVudS5tZW51LXByaW1hcnkgPiBsaSA+IGEsXHJcbiAgICAgICAgLmxhZ29tIC5hcHAtbmF2LXNlY29uZGFyeSAubWVudS5tZW51LXByaW1hcnkgPiBsaSA+IGEsXHJcbiAgICAgICAgLmxhZ29tIC5hcHAtbmF2LXByaW1hcnkgLm1lbnUubWVudS1wcmltYXJ5ID4gbGkuZHJvcGRvd24gPiB1bC5kcm9wZG93bi1tZW51ID4gbGkgPiBhLFxyXG4gICAgICAgIC5sYWdvbSAuYXBwLW5hdi1zZWNvbmRhcnkgLm1lbnUubWVudS1wcmltYXJ5ID4gbGkuZHJvcGRvd24gPiB1bC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcclxuICAgICAgICAgICAgLnN2Zy1pY29uLW9uLWRhcmt7XHJcbiAgICAgICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTEpO1xyXG4gICAgICAgICAgICAgICAgLS1zdmctaWNvbi1jb2xvci0yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0yKTtcclxuICAgICAgICAgICAgICAgIC0tc3ZnLWljb24tY29sb3ItMzogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMyk7XHJcbiAgICAgICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN2Zy1pY29uLW9uLWRhcms6bm90KFtjbGFzcyo9J29uRGFyayddKXtcclxuICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTE6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTEpO1xyXG4gICAgICAgIC0tc3ZnLWljb24tY29sb3ItMjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMik7XHJcbiAgICAgICAgLS1zdmctaWNvbi1jb2xvci0zOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0zKTtcclxuICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTQpO1xyXG4gICAgfVxyXG4gICAgLmxhZ29tLmxhZ29tLWxheW91dC1sZWZ0LFxyXG4gICAgLmxhZ29tLmxhZ29tLWxheW91dC1sZWZ0LXdpZGV7XHJcbiAgICAgICAgLmFwcC1uYXYtcHJpbWFyeSxcclxuICAgICAgICAuYXBwLW5hdi1zZWNvbmRhcnl7XHJcbiAgICAgICAgICAgIC5hcHAtbmF2LW1lbnV7XHJcbiAgICAgICAgICAgICAgICAubWVudS1wcmltYXJ5e1xyXG4gICAgICAgICAgICAgICAgICAgID4gbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID5he1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN2Zy1pY29uLW9uLWRhcmt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1zdmctaWNvbi1jb2xvci0xOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0xKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tc3ZnLWljb24tY29sb3ItMzogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1zdmctaWNvbi1jb2xvci00OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci00KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sYWdvbS5sYWdvbS1sYXlvdXQtbGVmdC13aWRle1xyXG4gICAgICAgIC5hcHAtbmF2LXByaW1hcnksXHJcbiAgICAgICAgLmFwcC1uYXYtc2Vjb25kYXJ5e1xyXG4gICAgICAgICAgICAuYXBwLW5hdi1tZW51e1xyXG4gICAgICAgICAgICAgICAgLm1lbnUtcHJpbWFyeXtcclxuICAgICAgICAgICAgICAgICAgICA+IGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+dWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4uZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEsIC5uYXYtaGVhZGVyLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdmctaWNvbi1vbi1kYXJre1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1zdmctaWNvbi1jb2xvci0xOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci0xKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tc3ZnLWljb24tY29sb3ItMjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXN2Zy1pY29uLW9uLWRhcmstY29sb3ItMik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLXN2Zy1pY29uLWNvbG9yLTM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS1zdmctaWNvbi1vbi1kYXJrLWNvbG9yLTMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1zdmctaWNvbi1jb2xvci00OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tc3ZnLWljb24tb24tZGFyay1jb2xvci00KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gU1ZHIEdyYXBoaWNzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zdmctZ3JhcGhpYyB7IFxyXG4gICAgJi1zdHJva2Uge1xyXG4gICAgICAgICYtdyxcclxuICAgICAgICAmLXAsXHJcbiAgICAgICAgJi1mLFxyXG4gICAgICAgICYtZi0yLFxyXG4gICAgICAgICYtMixcclxuICAgICAgICAmLTQgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDFweDtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXcge1xyXG4gICAgICAgICAgICBzdHJva2U6IHZhcigtLXN2Zy1ncmFwaGljLXN0cm9rZS13aGl0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcCB7XHJcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLWdyYXBoaWMtc3Ryb2tlLXByaW1hcnkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWYsIFxyXG4gICAgICAgICYtZ3JheSB7XHJcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLWdyYXBoaWMtc3Ryb2tlLWZhZGVkKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1mLTIge1xyXG4gICAgICAgICAgICBzdHJva2U6IHZhcigtLXN2Zy1ncmFwaGljLXN0cm9rZS1mYWRlZC0yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0yIHtcclxuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtNCB7XHJcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWRhc2hlZCB7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDQsNDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJvZHkge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWJvZHkpO1xyXG4gICAgfVxyXG4gICAgJi1icm93c2VyLXRvcCB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWdyYXBoaWMtYmctYnJvd3Nlci10b3ApO1xyXG4gICAgfVxyXG4gICAgJi1icm93c2VyLWFjdGlvbnMge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWJyb3dzZXItYWN0aW9ucyk7XHJcbiAgICB9XHJcbiAgICAmLWJyb3dzZXItc2VhcmNoIHsgICAgICAgIFxyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWJyb3dzZXItc2VhcmNoKTtcclxuICAgIH1cclxuICAgICYtYmFubmVyIHsgICAgICAgIFxyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWJhbm5lcik7XHJcbiAgICB9XHJcbiAgICAmLXdoaXRlIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy13aGl0ZSk7XHJcbiAgICB9XHJcbiAgICAmLWZhZGVkIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1mYWRlZCk7XHJcbiAgICB9XHJcbiAgICAmLWZhZGVkLTIge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWZhZGVkLTIpO1xyXG4gICAgfVxyXG4gICAgJi1mYWRlZC0zIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1mYWRlZC0zKTtcclxuICAgIH1cclxuICAgICYtZ3JlZW4ge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLWdyZWVuKTtcclxuICAgIH1cclxuICAgICYtcmVkIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1yZWQpO1xyXG4gICAgfVxyXG4gICAgJi1yZWQtZGFya2VyIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1yZWQtZGFya2VyKTtcclxuICAgIH1cclxuICAgICYtcHJpbWFyeSB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWdyYXBoaWMtYmctcHJpbWFyeSk7XHJcbiAgICAgICAgJi5zdmctZ3JhcGhpYy1zdHJva2UsXHJcbiAgICAgICAgJi5zdmctZ3JhcGhpYy1zdHJva2UtMixcclxuICAgICAgICAmLnN2Zy1ncmFwaGljLXN0cm9rZS00IHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy1wcmltYXJ5KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXNlY29uZGFyeSB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWdyYXBoaWMtYmctc2Vjb25kYXJ5KTtcclxuICAgIH1cclxuICAgICYtZmlsbC1ub25lIHtcclxuICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgfSAgIFxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBTVkcgSWxsdXN0cmF0aW9uc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4vKiBTaGFyZWQgRWxlbWVudHMgKi9cclxuXHJcbi5zdmctc2NyZWVuIHtcclxuICAgICYtYm90dG9tIHtcclxuICAgICAgICAmLWZyb250IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi1ib3R0b20tZnJvbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJhY2sge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLWJvdHRvbS1iYWNrKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1idXR0b24ge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLWJvdHRvbS1idXR0b24pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtdG9wIHtcclxuICAgICAgICAmLWZyb250IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi10b3AtZnJvbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJnIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi10b3AtYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJhY2sge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLXRvcC1iYWNrKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sb2dvIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi10b3AtbG9nbyk7XHJcbiAgICAgICAgICAgICYtZWwge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi10b3AtbG9nby1lbCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWxlZyB7XHJcbiAgICAgICAgJi1iYWNrIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNjcmVlbi1sZWctYmFjayk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZnJvbnQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2NyZWVuLWxlZy1mcm9udCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zdmctc21hcnRwaG9uZSB7XHJcbiAgICAmLWJvcmRlciB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNtYXJ0cGhvbmUtYm9yZGVyKTtcclxuICAgIH1cclxuICAgICYtZnJvbnQge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zbWFydHBob25lLWZyb250KTtcclxuICAgIH1cclxuICAgICYtc2NyZWVuIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctc21hcnRwaG9uZS1zY3JlZW4pO1xyXG4gICAgfVxyXG4gICAgJi1pY29uIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctc21hcnRwaG9uZS1pY29uKTtcclxuICAgICAgICAmLWJnIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNtYXJ0cGhvbmUtaWNvbi1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zdmctdGFibGV0IHtcclxuICAgICYtYmFjayB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXRhYmxldC1iYWNrKTtcclxuICAgIH1cclxuICAgICYtZnJvbnQge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy10YWJsZXQtZnJvbnQpO1xyXG4gICAgfVxyXG4gICAgJi1zY3JlZW4ge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy10YWJsZXQtc2NyZWVuKTtcclxuICAgIH1cclxufVxyXG4uc3ZnLWJyb3dzZXIge1xyXG4gICAgJi1ib2R5IHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctYnJvd3Nlci1ib2R5KTtcclxuICAgIH1cclxuICAgICYtdG9wIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctYnJvd3Nlci10b3ApO1xyXG4gICAgICAgICYtMSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1icm93c2VyLXRvcC0xKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXRleHQge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1icm93c2VyLXRleHQpO1xyXG4gICAgfVxyXG4gICAgJi1iYW5uZXIge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1icm93c2VyLWJhbm5lcik7XHJcbiAgICB9XHJcbn1cclxuLnN2Zy1ib3JkZXJ7XHJcbiAgICAmLWlubmVyLWZyb250e1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ib3JkZXItaW5uZXItZnJvbnQpO1xyXG4gICAgfVxyXG4gICAgJi1pbm5lci1iYWNre1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ib3JkZXItaW5uZXItYmFjayk7XHJcbiAgICB9XHJcbiAgICAmLXRvcC1mcm9udHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctYm9yZGVyLXRvcC1mcm9udCk7XHJcbiAgICB9XHJcbiAgICAmLXRvcC1iYWNre1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ib3JkZXItdG9wLWJhY2spO1xyXG4gICAgfVxyXG4gICAgJi1ib3R0b217XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWJvcmRlci1ib3R0b20pO1xyXG4gICAgfVxyXG59XHJcbi5zdmctY3BhbmVsc2VvLWJveHtcclxuICAgICYtZnJvbnR7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWNwYW5lbHNlby1ib3gtZnJvbnQpO1xyXG4gICAgfVxyXG4gICAgJi10b3B7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWNwYW5lbHNlby1ib3gtdG9wKTtcclxuICAgIH1cclxuICAgICYtcmlnaHR7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWNwYW5lbHNlby1ib3gtcmlnaHQpO1xyXG4gICAgfVxyXG4gICAgJi1vbmV7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWNwYW5lbHNlby1ib3gtb25lKTtcclxuICAgIH1cclxufVxyXG4uc3ZnLWtvbmZldHRpe1xyXG4gICAgJi1zbWFsbHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmcta29uZmV0dGktc21hbGwpO1xyXG4gICAgfVxyXG4gICAgJi1ub3JtYWx7XHJcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmcta29uZmV0dGktbm9ybWFsKTtcclxuICAgIH1cclxufVxyXG4uc3ZnLWxhcHRvcCB7XHJcbiAgICAmLWJvdHRvbSB7XHJcbiAgICAgICAgJi1iYWNrIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWxhcHRvcC1ib3R0b20tYmFjayk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdG9wIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWxhcHRvcC1ib3R0b20tdG9wKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXRvdWNocGFkIHtcclxuICAgICAgICAmLWluc2lkZSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1sYXB0b3AtdG91Y2hwYWQtaW5zaWRlKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC40ODtcclxuICAgICAgICAgICAgZW5hYmxlLWJhY2tncm91bmQ6IG5ldztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1vdXRzaWRlIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWxhcHRvcC10b3VjaHBhZC1vdXRzaWRlKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC40ODtcclxuICAgICAgICAgICAgZW5hYmxlLWJhY2tncm91bmQ6IG5ldztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXNjcmVlbiB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWxhcHRvcC1zY3JlZW4pO1xyXG4gICAgICAgICYtbG9nbyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1sYXB0b3Atc2NyZWVuLWxvZ28pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJhY2sge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctbGFwdG9wLXNjcmVlbi1iYWNrKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1mcm9udCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1sYXB0b3Atc2NyZWVuLWZyb250KTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG59XHJcbi5zdmcta2V5Ym9hcmQge1xyXG4gICAgLy9vcGFjaXR5OiAwLjQ4O1xyXG4gICAgJi1rZXlzIHtcclxuICAgICAgICAmLWJvdHRvbSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1rZXlib2FyZC1rZXlzLWJvdHRvbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdG9wIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWtleWJvYXJkLWtleXMtdG9wKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJvZHktdG9wIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmcta2V5Ym9hcmQtYm9keS10b3ApO1xyXG4gICAgfVxyXG4gICAgJi1ib2R5LWJvdHRvbSB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWtleWJvYXJkLWJvZHktYm90dG9tKTtcclxuICAgIH1cclxufVxyXG4uc3ZnLWN1cC1mbG93ZXIge1xyXG4gICAgLnN2Zy1jdXB7XHJcbiAgICAgICAgJi1ib2R5IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWN1cC1ib2R5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10b3Age1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY3VwLXRvcCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaW5zaWRlIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWN1cC1pbnNpZGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctZmxvd2Vye1xyXG4gICAgICAgICYtbGVhZiB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1mbG93ZXItbGVhZik7XHJcbiAgICAgICAgICAgICYtMSB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctZmxvd2VyLWxlYWYtMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi0yIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1mbG93ZXItbGVhZi0yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc3ZnLWVudmVsb3BlIHtcclxuICAgICYtdG9wIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctZW52ZWxvcGUtdG9wKTtcclxuICAgIH1cclxuICAgICYtdG9wLW9wZW4ge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1lbnZlbG9wZS10b3Atb3Blbik7XHJcbiAgICB9XHJcbiAgICAmLWluc2lkZSB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWVudmVsb3BlLWluc2lkZSk7XHJcbiAgICB9XHJcbiAgICAmLXJpZ2h0LXNpZGUtb3BlbiB7XHJcbiAgICAgICAgZmlsbDp2YXIoLS1zdmctZW52ZWxvcGUtcmlnaHQtc2lkZS1vcGVuKTtcclxuICAgIH1cclxuICAgICYtbGVmdC1zaWRlLW9wZW4ge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1lbnZlbG9wZS1sZWZ0LXNpZGUtb3Blbik7XHJcbiAgICB9XHJcbiAgICAmLXNwbGl0LW9wZW4ge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1lbnZlbG9wZS1zcGxpdC1vcGVuKTtcclxuICAgIH1cclxuICAgICYtc3BsaXQge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1lbnZlbG9wZS1zcGxpdCk7XHJcbiAgICB9XHJcbiAgICAmLXJpZ2h0LXNpZGUge1xyXG4gICAgICAgIGZpbGw6dmFyKC0tc3ZnLWVudmVsb3BlLXJpZ2h0LXNpZGUpO1xyXG4gICAgfVxyXG4gICAgJi1sZWZ0LXNpZGUge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1lbnZlbG9wZS1sZWZ0LXNpZGUpO1xyXG4gICAgfVxyXG59XHJcbi5zdmctY29sb3JzIHtcclxuICAgICYtYm90dG9tIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctd2VlYmx5LWNvbG9ycy1ib3R0b20pO1xyXG4gICAgfVxyXG4gICAgJi10b3Age1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy13ZWVibHktY29sb3JzLXRvcCk7XHJcbiAgICAgICAgJi0xIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1jb2xvcnMtdG9wLTEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTIge1xyXG4gICAgICAgICAgICBmaWxsOnZhcigtLXN2Zy13ZWVibHktY29sb3JzLXRvcC0yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0zIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1jb2xvcnMtdG9wLTMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogV2Vic2l0ZSBCdWlsZGVyIChXZWVibHkpICovXHJcblxyXG4uc3ZnLXdlZWJseSB7XHJcbiAgICAuc3ZnLWN1cCB7XHJcbiAgICAgICAgJi1ib2R5IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1jdXAtYm9keSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdG9wIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1jdXAtdG9wKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pbnNpZGUge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctd2VlYmx5LWN1cC1pbnNpZGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctbGVmdHtcclxuICAgICAgICAmLWVsZW1lbnRzIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1sZWZ0LWVsZW1lbnRzKTtcclxuICAgICAgICAgICAgJi1ib3R0b20ge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1sZWZ0LWVsZW1lbnRzLWJvdHRvbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ib2R5IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXdlZWJseS1sZWZ0LWJvZHkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnN2Zy1zcGFtZXhwZXJ0cyB7XHJcbiAgICAuc3ZnLWJyb3dzZXIge1xyXG4gICAgICAgICYtdGV4dC1sZWZ0IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNwYW1leHBlcnRzLWJyb3dzZXItdGV4dC1sZWZ0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0LXJpZ2h0IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNwYW1leHBlcnRzLWJyb3dzZXItdGV4dC1yaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdXNlciB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zcGFtZXhwZXJ0cy1icm93c2VyLXVzZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXVzZXItYmcge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc3BhbWV4cGVydHMtYnJvd3Nlci11c2VyLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1iYW5uZXIge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc3BhbWV4cGVydHMtYnJvd3Nlci1iYW5uZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnN2Zy1zeW1hbnRlYyB7XHJcbiAgICAuc3ZnLWxlZnR7XHJcbiAgICAgICAgJi1ib2R5IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLWxlZnQtYm9keSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZWxlbWVudHMge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtbGVmdC1lbGVtZW50cyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN2Zy1tZWRhbCB7XHJcbiAgICAgICAgJi1yaWJib24ge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtbWVkYWwtcmliYm9uKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pbnNpZGUge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMtbWVkYWwtaW5zaWRlKTtcclxuICAgICAgICAgICAgJi1lbGVtZW50IHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1tZWRhbC1pbnNpZGUtZWxlbWVudCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1yb3VuZC1iYWNrIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLW1lZGFsLXJvdW5kLWJhY2spO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXJvdW5kLWZyb250IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLW1lZGFsLXJvdW5kLWZyb250KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3ZnLXBhZGxvY2sge1xyXG4gICAgICAgICYtcmlnaHQtc2lkZSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1wYWRsb2NrLXJpZ2h0LXNpZGUpO1xyXG4gICAgICAgICAgICAmLWVsZW1lbnQge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLXBhZGxvY2stcmlnaHQtc2lkZS1lbGVtZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRvcHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLXBhZGxvY2stdG9wKTtcclxuICAgICAgICAgICAgJi1yb3VuZC1lbGVtZW50IHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1wYWRsb2NrLXRvcC1yb3VuZC1lbGVtZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWVsZW1lbnQge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLXBhZGxvY2stdG9wLWVsZW1lbnQpO1xyXG4gICAgICAgICAgICAgICAgJi0xIHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLXN5bWFudGVjLXBhZGxvY2stdG9wLWVsZW1lbnQtMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxODtcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1mcm9udCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1wYWRsb2NrLWZyb250KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sb2NrIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXN5bWFudGVjLXBhZGxvY2stbG9jayk7XHJcbiAgICAgICAgICAgICYtaW5zaWRlIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1wYWRsb2NrLWxvY2staW5zaWRlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmcta2V5IHtcclxuICAgICAgICAmLWJvdHRvbSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zeW1hbnRlYy1rZXktYm90dG9tKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10b3Age1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc3ltYW50ZWMta2V5LXRvcCk7XHJcbiAgICAgICAgICAgICYtMSB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOnZhcigtLXN2Zy1zeW1hbnRlYy1rZXktdG9wLTEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zdmctY29kZWd1YXJkIHtcclxuICAgIC5zdmctcGhvdG8ge1xyXG4gICAgICAgICYtZnJhbWUge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWZyYW1lKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1iZyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtcGhvdG8tYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWxvZ28ge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWxvZ28pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWZyb250LWNvcm5lcnMge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWZyb250LWNvcm5lcnMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJhY2sge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWJhY2spO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJyb3dzZXIge1xyXG4gICAgICAgICAgICAmLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWNvZGVndWFyZC1waG90by1icm93c2VyLWJvZHkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdG9wIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtcGhvdG8tYnJvd3Nlci10b3ApO1xyXG4gICAgICAgICAgICAgICAgJi0xIHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWJyb3dzZXItdG9wLTEpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLXBob3RvLWJyb3dzZXItdGV4dCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3ZnLWxpc3Qge1xyXG4gICAgICAgICYtYmcge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLWxpc3QtYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29kZWd1YXJkLWxpc3QtaXRlbSk7XHJcbiAgICAgICAgICAgICYtYm90dG9tIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtbGlzdC1pdGVtLWJvdHRvbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3ZnLWZvbGRlcntcclxuICAgICAgICAmLW1hbHdhcmUge1xyXG4gICAgICAgICAgICAmLWJnIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtZm9sZGVyLW1hbHdhcmUtYmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbG9nbyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtZm9sZGVyLWxvZ28pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJhY2t1cCB7XHJcbiAgICAgICAgICAgICYtdG9wIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtZm9sZGVyLWJhY2t1cC10b3ApO1xyXG4gICAgICAgICAgICAgICAgJi1ib3JkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtZm9sZGVyLWJhY2t1cC10b3AtYm9yZGVyKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWJnIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtZm9sZGVyLWJhY2t1cC1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1sb2dvIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1jb2RlZ3VhcmQtZm9sZGVyLWJhY2t1cC1sb2dvKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnN2Zy1tYXJrZXRnb28gIHtcclxuICAgIC5zdmctcGhvbmUge1xyXG4gICAgICAgICYtYm9yZGVyIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1waG9uZS1ib3JkZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJnIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1waG9uZS1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYnV0dG9uIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1waG9uZS1idXR0b24pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWVsZW1lbnRzIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1waG9uZS1lbGVtZW50cyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN2Zy1ncmFwaHMge1xyXG4gICAgICAgICYtYmcge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWdyYXBocy1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGV4dHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1ncmFwaHMtdGV4dCk7XHJcbiAgICAgICAgICAgICYtYmcge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1ncmFwaHMtdGV4dC1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1lbGVtZW50cyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tZ3JhcGhzLWVsZW1lbnRzKTtcclxuICAgICAgICAgICAgJi0xIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tZ3JhcGhzLWVsZW1lbnRzLTEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtMiB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWdyYXBocy1lbGVtZW50cy0yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctYmFyIHtcclxuICAgICAgICAmLXRvcCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tYmFyLXRvcCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZnJvbnQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWJhci1mcm9udCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtc2lkZSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tYmFyLXNpZGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctc2VhcmNoe1xyXG4gICAgICAgICYtYm9yZGVycyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tc2VhcmNoLWJvcmRlcnMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRvcCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tc2VhcmNoLXRvcCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYmcge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLXNlYXJjaC1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tc2VhcmNoLXRleHQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctYnJvd3NlcntcclxuICAgICAgICAmLXNlYXJjaCB7XHJcbiAgICAgICAgICAgICYtYmcge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1icm93c2VyLXNlYXJjaC1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tYnJvd3Nlci1zZWFyY2gtaWNvbik7XHJcbiAgICAgICAgICAgICAgICAmLWJnIHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWJyb3dzZXItc2VhcmNoLWljb24tYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtY29udGVudCB7XHJcbiAgICAgICAgICAgICYtYm90dG9tIHtcclxuICAgICAgICAgICAgICAgIC5jb250ZW50LWJvdHRvbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJi1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tY29udGVudC1ib3R0b20tcmlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJi1jaXJjbGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctbWFya2V0Z29vLWNvbnRlbnQtYm90dG9tLWNpcmNsZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLW51bSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tY29udGVudC1ib3R0b20tbnVtKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10b3Age1xyXG4gICAgICAgICAgICAgICAgLmNvbnRlbnQtdG9wIHtcclxuICAgICAgICAgICAgICAgICAgICAmLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1jb250ZW50LXRvcC1yaWdodCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYtY2lyY2xlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW1hcmtldGdvby1jb250ZW50LXRvcC1jaXJjbGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLW51bSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1tYXJrZXRnb28tY29udGVudC10b3AtbnVtKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdmctc2l0ZWxvY2t2cG4ge1xyXG4gICAgLnN2Zy1sZWZ0IHtcclxuICAgICAgICAmLWVsZW1lbnRzIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWxlZnQtZWxlbWVudHMpO1xyXG4gICAgICAgICAgICAmLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWxlZnQtZWxlbWVudHMtYm9keSk7XHJcbiAgICAgICAgICAgICAgICAmLTEge1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1sZWZ0LWVsZW1lbnRzLWJvZHktMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1iZyB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tbGVmdC1lbGVtZW50cy1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1sZWZ0LWVsZW1lbnRzLXRleHQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGltZSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1sZWZ0LXRpbWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNpcmNsZSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1sZWZ0LWNpcmNsZSk7XHJcbiAgICAgICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tbGVmdC1jaXJjbGUtaWNvbik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3ZnLWNpcmNsZSB7XHJcbiAgICAgICAgJi1ib3R0b20ge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tY2lyY2xlLWJvdHRvbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZnJvbnQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tY2lyY2xlLWZyb250KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10b3Age1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tY2lyY2xlLXRvcCk7XHJcbiAgICAgICAgICAgICYtYm9yZGVyIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1jaXJjbGUtdG9wLWJvcmRlcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1jaXJjbGUtdG9wLXRleHQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN2Zy1icm93c2Vye1xyXG4gICAgICAgICYtbWFwIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWJyb3dzZXItbWFwKTtcclxuICAgICAgICAgICAgJi1tYXJrZXIge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrdnBuLWJyb3dzZXItbWFwLW1hcmtlcik7XHJcbiAgICAgICAgICAgICAgICAmLWJnIHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2t2cG4tYnJvd3Nlci1tYXAtbWFya2VyLWJnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLW1hcmtlciB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9ja3Zwbi1icm93c2VyLW1hcmtlcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc3ZnLXNpdGVsb2NrIHtcclxuICAgIC5zdmctbGVmdCB7XHJcbiAgICAgICAgJi1lbGVtZW50cyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1sZWZ0LWVsZW1lbnRzKTtcclxuICAgICAgICAgICAgJi0xIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1sZWZ0LWVsZW1lbnRzLTEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtYm9keSB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stbGVmdC1lbGVtZW50cy1ib2R5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctY29kZSB7XHJcbiAgICAgICAgJi1iZyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1jb2RlLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLWNvZGUtdGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN2Zy1zaGllbGQge1xyXG4gICAgICAgICYtYmFjayB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zaGllbGQtYmFjayk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNDg7XHJcbiAgICAgICAgICAgIGVuYWJsZS1iYWNrZ3JvdW5kOiBuZXc7XHJcbiAgICAgICAgICAgICYtMSB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2hpZWxkLWJhY2stMSk7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjQ4O1xyXG4gICAgICAgICAgICAgICAgZW5hYmxlLWJhY2tncm91bmQ6IG5ldztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXJpZ2h0LXNpZGUge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2hpZWxkLXJpZ2h0LXNpZGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRvcCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zaGllbGQtdG9wKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1mcm9udCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zaGllbGQtZnJvbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWxvZ28ge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2hpZWxkLWxvZ28pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctc2VhcmNoIHtcclxuICAgICAgICAmLWJvdHRvbS1lbGVtZW50IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLXNlYXJjaC1ib3R0b20tZWxlbWVudCk7XHJcbiAgICAgICAgICAgICYtMSB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2VhcmNoLWJvdHRvbS1lbGVtZW50LTEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYm9yZGVycyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zZWFyY2gtYm9yZGVycyk7XHJcbiAgICAgICAgICAgICYtaW5zaWRlIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zZWFyY2gtYm9yZGVycy1pbnNpZGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1zZWFyY2gtaWNvbik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYmcge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2VhcmNoLWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10b3Age1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWxvY2stc2VhcmNoLXRvcCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN2Zy1icm93c2VyIHtcclxuICAgICAgICAmLWVsZW1lbnRzIHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLWJyb3dzZXItZWxlbWVudHMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWF2YXRhciB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlbG9jay1icm93c2VyLWF2YXRhcik7XHJcbiAgICAgICAgICAgICYtYmcge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVsb2NrLWJyb3dzZXItYXZhdGFyLWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnN2Zy1veCB7XHJcbiAgICAuc3ZnLWJyb3dzZXIge1xyXG4gICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgICYtcmlnaHQge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLW94LWJyb3dzZXItdGV4dC1yaWdodCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1sZWZ0IHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1veC1icm93c2VyLXRleHQtbGVmdCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1iYW5uZXIge1xyXG4gICAgICAgICAgICAmLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1veC1icm93c2VyLWJhbm5lci1yaWdodCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1sZWZ0IHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1veC1icm93c2VyLWJhbm5lci1sZWZ0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXVzZXIge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctb3gtYnJvd3Nlci11c2VyKTtcclxuICAgICAgICAgICAgJi1iZyB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctb3gtYnJvd3Nlci11c2VyLWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnN2Zy1zaXRlYnVpbGRlciB7XHJcbiAgICAuc3ZnLWJhbm5lciB7XHJcbiAgICAgICAgJi1ib3JkZXJlZC1lbGVtZW50IHtcclxuICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItYmFubmVyLWJvcmRlcmVkLWVsZW1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJvZHkge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItYmFubmVyLWJvZHkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJvZHktZWxlbWVudCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1iYW5uZXItYm9keS1lbGVtZW50KTtcclxuICAgICAgICAgICAgJi0xIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1iYW5uZXItYm9keS1lbGVtZW50LTEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN2Zy1zbWFydHBob25lIHtcclxuICAgICAgICAmLWJvcmRlcmVkLWVsZW1lbnQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItcGhvbmUtYm9yZGVyZWQtZWxlbWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZWxlbWVudCB7XHJcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLXBob25lLWVsZW1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctdGFibGV0IHtcclxuICAgICAgICAmLWVsZW1lbnQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItdGFibGV0LWVsZW1lbnQpO1xyXG4gICAgICAgICAgICAmLTEge1xyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItdGFibGV0LWVsZW1lbnQtMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi0yIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci10YWJsZXQtZWxlbWVudC0yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLTMge1xyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItdGFibGV0LWVsZW1lbnQtMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3ZnLW5vdGVwYWQge1xyXG4gICAgICAgICYtYmFjayB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1ub3RlcGFkLWJhY2spO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJvcmRlciB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1ub3RlcGFkLWJvcmRlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZnJvbnQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItbm90ZXBhZC1mcm9udCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLW5vdGVwYWQtdGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdmctaG9sZSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1ob2xlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3ZnLXBlbiB7XHJcbiAgICAgICAgJi1lbGVtZW50IHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLXBlbi1lbGVtZW50KTtcclxuICAgICAgICAgICAgJi1kYXJrIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1wZW4tZWxlbWVudC1kYXJrKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLTEge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLXBlbi1lbGVtZW50LTEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN2Zy1wZW5jaWwge1xyXG4gICAgICAgICYtZWxlbWVudCB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1wZW5jaWwtZWxlbWVudCk7XHJcbiAgICAgICAgICAgICYtZGFyayB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItcGVuY2lsLWVsZW1lbnQtZGFyayk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi0xIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1wZW5jaWwtZWxlbWVudC0xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctc2NyZWVuIHtcclxuICAgICAgICAmLWVsZW1lbnQge1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItc2NyZWVuLWVsZW1lbnQpO1xyXG4gICAgICAgICAgICAmLTEge1xyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItc2NyZWVuLWVsZW1lbnQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYm9yZGVyZWQtZWxlbWVudCB7XHJcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLXNpdGVidWlsZGVyLXNjcmVlbi1lbGVtZW50KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3ZnLXJpZ2h0e1xyXG4gICAgICAgICYtYm9keSB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1yaWdodC1ib2R5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1lbGVtZW50cyB7XHJcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1zaXRlYnVpbGRlci1yaWdodC1lbGVtZW50cyk7XHJcbiAgICAgICAgICAgICYtMSB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctc2l0ZWJ1aWxkZXItcmlnaHQtZWxlbWVudHMtMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdmctaWNvbiB7XHJcbiAgICAmLWRhc2hlZCxcclxuICAgIC5kYXNoZWQge1xyXG4gICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDMuODQgNy42OTtcclxuICAgICAgICAmLTEge1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA0IDg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMiB7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcuNzEgOS42NDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0zIHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNy41IDkuMzc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtNHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNi42IDguMjU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtNXtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNy42MSA5LjUxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTZ7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcuNTUgOS40MztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi03e1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA2Ljc2IDguNDU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtOHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNy42MyA5LjU0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTl7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYuNTIgOC4xNTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0xMHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNy43OSA5Ljc0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTExe1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA4LjM5IDEwLjQ5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTEye1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA3LjgzIDkuNzg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMTN7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDggMTA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMTR7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDggODtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0xNXtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNi40MiA2LjQyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTE2e1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA3LjY2IDkuNTg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMTd7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcuNjQgOS41NTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0xOHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNi41NiA4LjE5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTE5e1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA3LjYgOS41O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTIwe1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA2LjU3IDguMjE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMjF7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDQuMjcgOC41MztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0yMntcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogMy43IDcuNDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0yM3tcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNy42NyA5LjU5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTI0e1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA2LjUgOC4xMztcclxuICAgICAgICB9ICAgICAgIFxyXG4gICAgICAgICYtMjV7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcuNTggOS40ODtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0yNntcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNi40OCA4LjE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMjd7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDQgNjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0yOHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogOS4wOSwxMS4zNjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0yOXtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogMjMuMjUsMjkuMTk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMzB7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDIzLjM1LDI5LjE5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTMxe1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAyMy4yNSwyOS4wNztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0zMntcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogOS4wOSwxMS4zNztcclxuICAgICAgICB9ICAgICAgICBcclxuICAgICAgICAmLTMze1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAxMC45MywxMy42NjtcclxuICAgICAgICB9ICAgICAgXHJcbiAgICAgICAgJi0zNHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogMjAuODIsMjYuMDI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMzR7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDIwLjg4LDI2LjE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtMzUge1xyXG4gICAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAxMy41NCwxNi45MztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0zNiB7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDIxLjE0LDI2LjQyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTM3IHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogMjEuMDQsMjYuMzE7XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICAgICAgJi0zOCB7XHJcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEzLjQyLDE2Ljc4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLTM5IHtcclxuICAgICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNy45Niw5Ljk0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5zdmctYmFubmVyLWxpbmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGZpbGwtcnVsZTogZXZlbm9kZDtcclxuICAgIGNsaXAtcnVsZTogZXZlbm9kZDtcclxuICAgIGZpbGw6IG5vbmU7XHJcbiAgICBzdHJva2U6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgc3Ryb2tlLXdpZHRoOiAyO1xyXG4gICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG59XHJcbi5zdmctYmFubmVyLXNoYXBlIHtcclxuICAgICYtbGVmdCB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWJhbm5lci1zaGFwZS1sZWZ0KTtcclxuICAgICAgICBmaWxsLXJ1bGU6IGV2ZW5vZGQ7XHJcbiAgICAgICAgY2xpcC1ydWxlOiBldmVub2RkO1xyXG4gICAgfVxyXG4gICAgJi1yaWdodCB7XHJcbiAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWJhbm5lci1zaGFwZS1yaWdodCk7XHJcbiAgICAgICAgZmlsbC1ydWxlOiBldmVub2RkO1xyXG4gICAgICAgIGNsaXAtcnVsZTogZXZlbm9kZDtcclxuICAgIH1cclxufVxyXG4uc3ZnLWJyb3dzZXItZWxlbWVudCB7XHJcbiAgICAmLTEge1xyXG4gICAgICAgIGZpbGw6IHZhcigtLXN2Zy1icm93c2VyLXRleHQpO1xyXG4gICAgfVxyXG4gICAgJi0yIHtcclxuICAgICAgICBmaWxsOiB2YXIoLS1zdmctYnJvd3Nlci1iYW5uZXIpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3ZnLWNvb2tpZS1pY29ue1xyXG4gICAgLnN2Zy1jb29raWUtaWNvbntcclxuICAgICAgICAmLXRvcHtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWNvb2tpZS1pY29uLXRvcCk7XHJcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLWNvb2tpZS1pY29uLXRvcCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYm90dG9te1xyXG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1zdmctY29va2llLWljb24tYm90dG9tKTtcclxuICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctY29va2llLWljb24tYm90dG9tKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi13aGl0ZXtcclxuICAgICAgICAgICAgZmlsbDogdmFyKC0tc3ZnLWNvb2tpZS1pY29uLXdoaXRlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkVtYWlsIFZlcmlmaWNhdGlvbiAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnVzZXItdmFsaWRhdGlvbi5hbGVydCxcclxuLmVtYWlsLXZlcmlmaWNhdGlvbi5hbGVydHtcclxuICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICBib3JkZXItbGVmdDogMCFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAuYWxlcnQtYm9keSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC50ZXh0IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiA2cHggMDtcclxuICAgIH1cclxuICAgIC5hbGVydC1hY3Rpb25zIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5FbWFpbCBWZXJpZmljYXRpb24gLSBSZXNwb25zaXZlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAobWQpIHtcclxuICAgIC5sYWdvbS1sYXlvdXQtbGVmdC13aWRlIC5lbWFpbC12ZXJpZmljYXRpb24sXHJcbiAgICAubGFnb20tbGF5b3V0LWxlZnQgLmVtYWlsLXZlcmlmaWNhdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLmVtYWlsLXZlcmlmaWNhdGlvbiB7XHJcbiAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hbGVydC1ib2R5IHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hbGVydC1hY3Rpb25zIHtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi50d29mYS1tb2R1bGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpO1xyXG4gICAgfVxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICB9XHJcbiAgICAuY29sLWxvZ28ge1xyXG4gICAgICAgIHdpZHRoOiA2NHB4O1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgID4gaW1nIHtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgID4gKiArICoge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgfVxyXG59XHJcbiIsIi50aGVtZS1zd2l0Y2hlcntcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IDEwMDI7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiBjYWxjKDEwMCUpO1xyXG4gICAgd2lkdGg6IDkyM3B4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XHJcbiAgICBoMSB7XHJcbiAgICAgICAgY29sb3I6ICMzOTNkNDU7XHJcbiAgICB9XHJcbiAgICBoMiB7XHJcbiAgICAgICAgY29sb3I6ICMzOTNkNDU7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICB9XHJcbiAgICAmLW9wZW57XHJcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gICAgICAgIC50aGVtZS1zd2l0Y2hlcntcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtYnV0dG9uIC5idG57XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6ICNmZmY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLm92ZXJsYXl7XHJcbiAgICAgICAgICAgIC8vZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1oZWFkZXJ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNDhweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgaDF7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1ib2R5e1xyXG4gICAgICAgIHBhZGRpbmc6IDAgNTZweDtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIC5zZWN0aW9ue1xyXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJ1dHRvbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogLTUycHg7XHJcbiAgICAgICAgd2lkdGg6IDUycHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2ZmZjtcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDY0cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMzJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29udGVudHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDg1cHg7XHJcbiAgICAgICAgLmNvbC0yMCAge1xyXG4gICAgICAgICAgICB3aWR0aDogMjAlO1xyXG4gICAgICAgIH0gICAgICAgIFxyXG4gICAgfVxyXG4gICAgJi1mb290ZXIge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1x0XHRcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0d2lkdGg6IDk1MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDE4cHggNTZweCAxOHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgKyAuYnRue1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bi1kZWZhdWx0IHtcclxuICAgICAgICAgICAgY29sb3I6ICMzOTNkNDU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjZGVlMjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJveHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NhZTNmYztcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNyk7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKTtcclxuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTFcIjtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEycHg7XHJcbiAgICAgICAgfVxyXG5cdFx0PiBpbWcge1xyXG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcbiAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICArIGg0IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICsgaDR7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMzkzZDQ1O1xyXG4gICAgICAgICAgICAubGFiZWwgeyBcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtc29vbiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAjY2FlM2ZjO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAgICAgaW1nIHtcclxuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICBjb2xvcjogIzM5M2Q0NTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmJvZHk6bm90KC50aGVtZS1zd2l0Y2hlci1vcGVuKSB7XHJcbiAgICAudGhlbWUtc3dpdGNoZXI6aG92ZXIge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAudGhlbWUtc3dpdGNoZXItY29udGVudCxcclxuICAgICAgICAudGhlbWUtc3dpdGNoZXItZm9vdGVyIHtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRoZW1lLXN3aXRjaGVyLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogOHB4IHNvbGlkIHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC02MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4gKGxnLCBsZykge1xyXG4gICAgLnRoZW1lLXN3aXRjaGVye1xyXG4gICAgICAgIHdpZHRoOiA4ODVweDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuIChtZCwgbWQpIHtcclxuICAgIC50aGVtZS1zd2l0Y2hlcntcclxuICAgICAgICB3aWR0aDogNjgwcHg7XHJcbiAgICAgICAgJi1oZWFkZXIsXHJcbiAgICAgICAgJi1mb290ZXIsXHJcbiAgICAgICAgJi1ib2R5e1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKXtcclxuICAgIC50aGVtZS1zd2l0Y2hlcntcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICYtb3BlbntcclxuICAgICAgICAgICAgLm92ZXJsYXl7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZlYXV0ZSAtIEdlbmVyYWxcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmZlYXR1cmUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZmVhdHVyZS1tYXJnaW4tYm90dG9tKTtcclxuICAgICYtaWNvbiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWZlYXR1cmUtaWNvbi1tYXJnaW4tYm90dG9tKTtcclxuICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZmVhdHVyZS10aXRsZS1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1mZWF0dXJlLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZmVhdHVyZS10aXRsZS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZGVzYyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZmVhdHVyZS1kZXNjLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWZlYXR1cmUtZGVzYy1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZlYXR1cmUtZGVzYy1mb250LXdlaWdodCk7XHJcbiAgICAgICAgKyAqIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1jb250ZW50IHtcclxuICAgICAgICA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1udW1iZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICB2YXIoLS1mZWF0dXJlLWljb24tbWFyZ2luLWJvdHRvbSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1saWdodCk7XHJcbiAgICAgICAgJi1jaXJjbGVkIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcclxuICAgICAgICAgICAgd2lkdGg6IDU2cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTZweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWxlZnQge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgLmZlYXR1cmUtaWNvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctM3gpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmxhZ29tLWRlZmF1bHR7XHJcbiAgICAuc2l0ZXtcclxuICAgICAgICAuc2VjdGlvbi1zdGVwc3tcclxuICAgICAgICAgICAgLmZlYXR1cmUtYm94ZWR7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5GZWF1dGUgLSBCb3hlZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uZmVhdHVyZS1ib3hlZCxcclxuLmZlYXR1cmUtYm9yZGVyZWQge1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZmVhdHVyZS1ib3hlZC1ib3JkZXItcmFkaXVzKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLWZlYXR1cmUtYm94ZWQtcGFkZGluZyk7XHJcbn1cclxuLmZlYXR1cmUtYm94ZWQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tZmVhdHVyZS1ib3hlZC1iZyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1mZWF0dXJlLWJveGVkLXNoYWRvdyk7XHJcbn1cclxuLmZlYXR1cmUtYm9yZGVyZWQge1xyXG4gICAgYm9yZGVyOiB2YXIoLS1mZWF0dXJlLWJveGVkLWJvcmRlcik7XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRmVhdXRlIC0gU2l6ZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmZlYXR1cmUtc20ge1xyXG4gICAgLmZlYXR1cmUtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZmVhdHVyZS1zbS10aXRsZS1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1mZWF0dXJlLXNtLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZmVhdHVyZS1zbS10aXRsZS1mb250LXdlaWdodCk7XHJcbiAgICB9XHJcbiAgICAuZmVhdHVyZS1pY29uIC5zdmctaWNvbiB7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1mZWF0dXJlLXNtLXN2Zy1pY29uLXNpemUpO1xyXG4gICAgfVxyXG4gICAgJi5mZWF0dXJlLWJveGVkLCBcclxuICAgICYuZmVhdHVyZS1ib3JkZXJlZCB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tZmVhdHVyZS1zbS1ib3hlZC1wYWRkaW5nKTtcclxuICAgICAgICAuZmVhdHVyZS1pY29uIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5mZWF0dXJlLWxlZnQge1xyXG4gICAgICAgIC5mZWF0dXJlLWljb24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uZmVhdHVyZS1sZyB7XHJcbiAgICAmLmZlYXR1cmUtYm94ZWQsIFxyXG4gICAgJi5mZWF0dXJlLWJvcmRlcmVkIHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1mZWF0dXJlLWJveGVkLXBhZGRpbmcpO1xyXG4gICAgfVxyXG4gICAgLmZlYXR1cmUtaWNvbiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZmVhdHVyZS1sZy1pY29uLW1hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG4gICAgLmZlYXR1cmUtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZmVhdHVyZS1sZy10aXRsZS1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1mZWF0dXJlLWxnLXRpdGxlLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZmVhdHVyZS1sZy10aXRsZS1mb250LXdlaWdodCk7XHJcbiAgICB9XHJcbiAgICAuZmVhdHVyZS1kZXNjIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZlYXR1cmUtbGctZGVzYy1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1mZWF0dXJlLWxnLWRlc2MtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mZWF0dXJlLWxnLWRlc2MtZm9udC13ZWlnaHQpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkZlYXV0ZSAtIFJvd1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5mZWF0dXJlcyB7XHJcbiAgICAmLWJveGVzIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykpIWltcG9ydGFudDtcclxuICAgICAgICAuZmVhdHVyZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6bm90KC5mZWF0dXJlcy1ib3hlcykge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS1mZWF0dXJlLXJvdy1tYXJnaW4tYm90dG9tKSkhaW1wb3J0YW50O1xyXG4gICAgICAgIC5mZWF0dXJlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZmVhdHVyZS1yb3ctbWFyZ2luLWJvdHRvbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zdGVwcyB7ICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICBtYXJnaW46IDAgLTMycHg7XHJcbiAgICAgICAgW2NsYXNzKj1cImNvbFwiXSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMzJweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmZlYXR1cmU6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTkxZSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC00MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgICAgICAgICAuZmVhdHVyZTphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1tZWRpdW0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTFlJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcclxuICAgIC5mZWF0dXJlcyB7XHJcbiAgICAgICAgLm1vYi1mZWF0dXJlLWxlZnQge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAuZmVhdHVyZS1pY29uIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWZlYXR1cmUtaWNvbi1tYXJnaW4tYm90dG9tKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZmVhdHVyZS10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkgeyBcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5mZWF0dXJlLWJvcmRlcmVkIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmZlYXR1cmUtZmxleCB7XHJcbiAgICAgICAgICAgICAgICAuZmVhdHVyZS1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmZlYXR1cmUtY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XHJcbiAgICAgICAgICAgIC5tLXNhZmFyaSB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbi1lbmxhcmdlbWVudCB7XHJcbiAgICAgICAgLmZlYXR1cmUge1xyXG4gICAgICAgICAgICAmLmZlYXR1cmUtYm9yZGVyZWQge1xyXG4gICAgICAgICAgICAgICAgJi5mZWF0dXJlLWZsZXgge1xyXG4gICAgICAgICAgICAgICAgICAgIC5mZWF0dXJlLWljb257XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH0gICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuU2VhcmNoIEJveFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uc2VhcmNoLWJveCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy14bGcpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cy1sZyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWxnKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgICYtc20ge1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWdyb3VwIHtcclxuICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAuZGVzYyB7IFxyXG4gICAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0xeCkgMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblNlYXJjaCBCb3ggLSBTdHlsZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uYmFubmVyLXByaW1hcnksXHJcbi5zZWFyY2gtYm94LXByaW1hcnkge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1iZy1oKTtcclxuICAgIC5zZWFyY2gtZ3JvdXAgLnNlYXJjaC1maWVsZCAuZm9ybS1jb250cm9sOmZvY3VzIH4gLnNlYXJjaC1maWVsZC1pY29uID4gaSAge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgfVxyXG4gICAgLnNlYXJjaC1maWVsZC1pY29ue1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICA+IGl7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvcm0tY29udHJvbCxcclxuICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgICYsXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24taGVhZGVye1xyXG4gICAgICAgIC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmlucHV0LWdyb3VwLWFkZG9uIHsgICAgICAgIFxyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgIH1cclxuICAgIC5kb21haW4tc2VhcmNoLWlucHV0IHtcclxuICAgICAgICAmLnNlYXJjaC1ncm91cC1jb21iaW5lZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VhcmNoLWZpZWxkLWljb24sIFxyXG4gICAgICAgIC5zZWFyY2gtZmllbGQtaWNvbiA+IGkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1pY29uLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNlYXJjaC1ib3gtcHJpbWFyeXtcclxuICAgIC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG59XHJcbi5iYW5uZXItc2Vjb25kYXJ5LFxyXG4uc2VhcmNoLWJveC1zZWNvbmRhcnkge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnLWgpO1xyXG4gICAgLnNlYXJjaC1ncm91cCAuc2VhcmNoLWZpZWxkIC5mb3JtLWNvbnRyb2w6Zm9jdXMgfiAuc2VhcmNoLWZpZWxkLWljb24gPiBpICB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWZpZWxkLWljb257XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgID4gaXtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9ybS1jb250cm9sLFxyXG4gICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtYmcpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1jb2xvcik7XHJcbiAgICAgICAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7XHJcbiAgICAgICAgJixcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24taGVhZGVye1xyXG4gICAgICAgIC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmlucHV0LWdyb3VwLWFkZG9uIHsgICAgICAgIFxyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtcGxhY2Vob2xkZXItY29sb3IpO1xyXG4gICAgfVxyXG4gICAgLmRvbWFpbi1zZWFyY2gtaW5wdXQge1xyXG4gICAgICAgICYuc2VhcmNoLWdyb3VwLWNvbWJpbmVkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNlYXJjaC1maWVsZC1pY29uLFxyXG4gICAgICAgIC5zZWFyY2gtZmllbGQtaWNvbiA+IGkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWljb24tY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZDpoYXMoI21lc3NhZ2U6YWN0aXZlKSxcclxuICAgIC5kb21haW4tc2VhcmNoLWFkdmFuY2VkOmhhcygjbWVzc2FnZTpmb2N1cyksXHJcbiAgICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZDpoYXMoI21lc3NhZ2U6aG92ZXIpe1xyXG4gICAgICAgIC5kcm9wZG93bi1tdWx0aS1sZXZlbCA+IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtYmcpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1ib3JkZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuLnNlYXJjaC1ib3gtcHJpbWFyeSB7XHJcbiAgICAuZm9ybS1jb250cm9sLFxyXG4gICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWJnKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtYm9yZGVyKTtcclxuICAgICAgICAmLFxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQ6aGFzKCNtZXNzYWdlOmFjdGl2ZSksXHJcbiAgICAuZG9tYWluLXNlYXJjaC1hZHZhbmNlZDpoYXMoI21lc3NhZ2U6Zm9jdXMpLFxyXG4gICAgLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWQ6aGFzKCNtZXNzYWdlOmhvdmVyKXtcclxuICAgICAgICAuZHJvcGRvd24tbXVsdGktbGV2ZWwgPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1ib3JkZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH0gXHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuU2VhcmNoIEdyb3VwXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zZWFyY2gtZ3JvdXAge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICYtYnRuID4gKiArICoge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWZpZWxkIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIC5mb3JtLWNvbnRyb2w6Zm9jdXN7XHJcbiAgICAgICAgICAgIH4gLnNlYXJjaC1maWVsZC1pY29ue1xyXG4gICAgICAgICAgICAgICAgPiBpe1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWFyY2gtZmllbGQtY29tYmluZWQtaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOm5vdCguc2VhcmNoLWdyb3VwLWNvbWJpbmVkKXtcclxuICAgICAgICAuc2VhcmNoLWZpZWxke1xyXG4gICAgICAgICAgICAuZm9ybS1jb250cm9se31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNlYXJjaC1maWVsZCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmLWljb24ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IGNhbGMoKHZhcigtLXVpLWhlaWdodC1iYXNlKSAtIHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSkvMik7XHJcbiAgICAgICAgbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tdWktaWNvbi1zaXplLWJhc2UpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICA+IGl7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWFyY2gtZmllbGQtaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSArIDIgKiB2YXIoLS1zcGFjaW5nLTJ4KSk7XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWZpZWxkLWljb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIGxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICByaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tdWktaWNvbi1zaXplLWJhc2UpICsgMiAqIHZhcigtLXNwYWNpbmctMngpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSArIDIgKiB2YXIoLS1zcGFjaW5nLTJ4KSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNlYXJjaC1maWVsZC1sb2FkZXJ7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgIGxlZnQ6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6aGFzKC5pbnB1dC1zbSl7XHJcbiAgICAgICAgLnNlYXJjaC1maWVsZC1sb2FkZXJ7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWFyY2gtZmllbGQtcmVzdWx0c3tcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB0b3A6IGNhbGMoMTAwJSArIDhweCk7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTZweCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tc2hvdy1hbmltYXRpb24pO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAubGlzdC1ncm91cC1pdGVte1xyXG4gICAgICAgICAgICAmLm1lc3NhZ2V7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgJi1uby1kYXRhe1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC5tZXNzYWdle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLWltYWdle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOnZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5saXN0LWdyb3VwLXh4c3tcclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbXtcclxuICAgICAgICAgICAgICAgICYubWVzc2FnZXtcclxuICAgICAgICAgICAgICAgICAgICAmLW5vLWRhdGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAubWVzc2FnZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtaW1hZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6dmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc2hvd3tcclxuICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IFxyXG4gICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWtub3dsZWRnZWJhc2Utc2VhcmNoLXJlc3VsdHNde1xyXG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblttZW51aXRlbW5hbWU9XCJLbm93bGVkZ2ViYXNlIFN1Z2dlc3Rpb25zXCJde1xyXG4gICAgLnNlYXJjaC1maWVsZC1yZXN1bHRze1xyXG4gICAgICAgICZbZGF0YS1rbm93bGVkZ2ViYXNlLXNlYXJjaC1yZXN1bHRzXXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgICAgICAgICAgICAgIHRvcDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IGNhbGMoMTAwJSArIDhweCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTZweCk7XHJcbiAgICAgICAgICAgICAgICAmLnNob3d7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYWdlLWhvbWVwYWdlIHtcclxuICAgIC5zZWFyY2gtZ3JvdXAgIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXNlYXJjaC1ncm91cC1tYXgtd2lkdGgpO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHMpIHtcclxuICAgIC5zZWFyY2gtZ3JvdXAgPiAqICsgKiB7XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcclxuICAgIC5zZWFyY2gtZ3JvdXA6bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLS1zdWJkb21haW4pID4gKiB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICAgICAgJiArICogeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWFyY2gtZ3JvdXAtYnRuIHtcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gKiArICogeyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNmcm1Eb21haW5DaGVja2Vye1xyXG4gICAgICAgIC5kb21haW4tc2VhcmNoLWlucHV0e1xyXG4gICAgICAgICAgICAuc2VhcmNoLWdyb3VwLWJ0bntcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblNlYXJjaCBHcm91cCBDb21iaW5lZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5zZWFyY2gtYm94e1xyXG4gICAgJi1wcmltYXJ5e1xyXG4gICAgICAgIC5zZWFyY2gtZ3JvdXAtY29tYmluZWR7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtYmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtc2Vjb25kYXJ5e1xyXG4gICAgICAgIC5zZWFyY2gtZ3JvdXAtY29tYmluZWR7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1iZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zZWFyY2gtZ3JvdXAtY29tYmluZWQge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTF4KSB2YXIoLS1zcGFjaW5nLTF4KSAwO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSAwIHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgIH1cclxuICAgICYuaGFzLXNoYWRvd3tcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93LWxnKTtcclxuICAgICAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XHJcbiAgICB9IFxyXG4gICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAvLyAuc2VhcmNoLWZpZWxke1xyXG4gICAgLy8gICAgICYtaWNvbntcclxuICAgIC8vICAgICAgICAgPiBpe1xyXG4gICAgLy8gICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlYXJjaC1maWVsZC1jb21iaW5lZC1pY29uLWNvbG9yKTtcclxuICAgIC8vICAgICAgICAgfVxyXG4gICAgLy8gICAgIH1cclxuICAgIC8vIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5TZWFyY2ggR3JvdXAgU2l6ZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5zZWFyY2gtZ3JvdXB7XHJcbiAgICAuc2VhcmNoLWZpZWxke1xyXG4gICAgICAgIC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWlucHV0LWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbnB1dC1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1pbnB1dC1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWFyY2gtZ3JvdXAtYnRue1xyXG4gICAgICAgIC5idG57XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtdikgdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWJ0bi1iYXNlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1idG4tYmFzZS1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1idG4tYmFzZS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1iYXNlLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtbGd7XHJcbiAgICAgICAgLnNlYXJjaC1ncm91cC1idG57XHJcbiAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWxnLXYpIHZhcigtLXVpLXBhZGRpbmctbGctaCk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWJ0bi1sZy1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWJ0bi1sZy1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tYnRuLWxnLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1sZy1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VhcmNoLWZpZWxke1xyXG4gICAgICAgICAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1sZy1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWlucHV0LWxnLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1pbnB1dC1sZy1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1sZy1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS11aS1pY29uLXNpemUtYmFzZSkgKyB2YXIoLS1zcGFjaW5nLTV4KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tdWktaWNvbi1zaXplLWJhc2UpICsgdmFyKC0tc3BhY2luZy01eCkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaWNvbntcclxuICAgICAgICAgICAgICAgIHRvcDogY2FsYygodmFyKC0tdWktaGVpZ2h0LWxnKSAtIHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSkvMik7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi14bHtcclxuICAgICAgICAuc2VhcmNoLWdyb3VwLWJ0bntcclxuICAgICAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhsZyk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLXhsZy12KSB2YXIoLS11aS1wYWRkaW5nLXhsZy1oKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYnRuLXhsZy1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWJ0bi14bGctbGluZS1oZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWJ0bi14bGctZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXhsZy1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VhcmNoLWZpZWxke1xyXG4gICAgICAgICAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQteGxnKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQteGxnLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQteGxnLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1pbnB1dC14bGctZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQteGxnLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSArIHZhcigtLXNwYWNpbmctNXgpKTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS11aS1pY29uLXNpemUtYmFzZSkgKyB2YXIoLS1zcGFjaW5nLTV4KSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pY29ue1xyXG4gICAgICAgICAgICAgICAgdG9wOiBjYWxjKCh2YXIoLS11aS1oZWlnaHQteGxnKSAtIHZhcigtLXVpLWljb24tc2l6ZS1iYXNlKSkvMik7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLmNvb2tpZS1iYXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm90dG9tOiB2YXIoLS1jb29raWUtcG9zaXRpb24pO1xyXG4gICAgei1pbmRleDogdmFyKC0temluZGV4LXRvb2x0aXApO1xyXG4gICAgbWF4LXdpZHRoOiB2YXIoLS1jb29raWUtd2lkdGgpO1xyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1jb29raWUtd2lkdGgpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNpdGlvbjogMC43czsgICAgXHJcbiAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGcpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMtbGcpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWRyb3Bkb3duLWJnKTtcclxuICAgIH1cclxuICAgICZfX2Rlc2Mge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICB9XHJcbiAgICAmX19pY29uIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgIH1cclxuICAgICZfX2FjdGlvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtLWJvdHRvbS1sZWZ0IHtcclxuICAgICAgICBsZWZ0OiB2YXIoLS1jb29raWUtcG9zaXRpb24pO1xyXG4gICAgfVxyXG4gICAgJi0tYm90dG9tLXJpZ2h0IHtcclxuICAgICAgICByaWdodDogdmFyKC0tY29va2llLXBvc2l0aW9uKTtcclxuICAgIH1cclxuICAgICYtLWJvdHRvbSB7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xyXG4gICAgICAgIGJvdHRvbTogdmFyKC0tY29va2llLXBvc2l0aW9uKTtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCAjRkZGRkZGIDUzLjEyJSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb29raWUtYmFyIHtcclxuICAgICAgICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3cteGxnKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLmNvb2tpZS1iYXIge1xyXG4gICAgICAgICYtLWJvdHRvbSB7XHJcbiAgICAgICAgICAgIC5jb29raWUtYmFyIHtcclxuICAgICAgICAgICAgICAgICZfX2ljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJl9fZGVzYyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICZfX2FjdGlvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDIyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC5jb29raWUtYmFyIHtcclxuICAgICAgICAmLS1ib3R0b20ge1xyXG4gICAgICAgICAgICAuY29va2llLWJhciB7XHJcbiAgICAgICAgICAgICAgICAmX19jb250ZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5jbGllbnQtYXZhdGFyLFxyXG4uY3JlYXRvci1hdmF0YXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiA3MnB4O1xyXG4gICAgICAgIGhlaWdodDogNzJweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1NnB4O1xyXG4gICAgfVxyXG4gICAgJi1zbSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLW1ke1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGltZ3tcclxuICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3RhZmYtcmVwbHkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogLTRweDtcclxuICAgICAgICBib3R0b206IC02cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubGFnb20tbGF5b3V0LWxlZnQsXHJcbi5sYWdvbS1sYXlvdXQtY29uZGVuc2VkIHtcclxuICAgIC50b3AtbmF2IHtcclxuICAgICAgICAuY2xpZW50LWF2YXRhci1zbSB7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5kcm9wZG93bi1tZW51LXNlYXJjaCxcclxuLmRyb3Bkb3duLWxhbmd1YWdlLXNlYXJjaCB7XHJcbiAgICB3aWR0aDogMjUwcHg7XHJcbiAgICBtYXgtaGVpZ2h0OiAyOTBweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tZHJvcGRvd24tYmcpO1xyXG4gICAgLmRyb3Bkb3duLW1lbnUtaXRlbXMge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAyMzZweDtcclxuICAgIH1cclxuICAgIC5kcm9wZG93bi1oZWFkZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgICAgIC5pbnB1dC1ncm91cC1pY29uIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0zM3B4IDAgMjRweDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDRweDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYm9yZGVyZWR7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgJjpoYXMoaW5wdXQ6Zm9jdXMpe1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRyb3Bkb3duLW1lbnUtbm8tZGF0YSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgbWluLWhlaWdodDogNjRweDtcclxuICAgIH0gIFxyXG4gICAgJi5pcy1lbXB0eSB7XHJcbiAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbXMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZHJvcGRvd24tbWVudS1uby1kYXRhIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy14cyk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH0gXHJcbn1cclxuLmRyb3Bkb3duLWxhbmd1YWdlLXNlYXJjaCB7XHJcbiAgICAuZHJvcGRvd24tbWVudS1pdGVtIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubmF2LWRpdmlkZXIge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICAgIC5sYW5ndWFnZS1lbnRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9lbnRlci5zdmdcIik7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcbn1cclxuLmxhbmd1YWdlLWZsYWcge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICB9XHJcbiAgICAmLmNhdGFsYW4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9jYXRhbGFuLnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYuYXJhYmljIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvYXJhYmljLnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYuYXplcmJhaWphbmkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9hemVyYmFpamFuaS5zdmdcIik7XHJcbiAgICB9ICAgIFxyXG4gICAgJi5jaGluZXNlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvY2hpbmVzZS5zdmdcIik7XHJcbiAgICB9XHJcbiAgICAmLmNyb2F0aWFue1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9jcm9hdGlhbi5zdmdcIik7XHJcbiAgICB9XHJcbiAgICAmLmN6ZWNoe1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9jemVjaC5zdmdcIik7XHJcbiAgICB9XHJcbiAgICAmLmRhbmlzaHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvZGFuaXNoLnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYuZHV0Y2h7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL2R1dGNoLnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYuZW5nbGlzaHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvZW5nbGlzaC5zdmdcIik7XHJcbiAgICB9XHJcbiAgICAmLmVzdG9uaWFue1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9lc3Rvbmlhbi5zdmdcIik7XHJcbiAgICB9XHJcbiAgICAmLmZhcnNpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvZmFyc2kuc3ZnXCIpO1xyXG4gICAgfVxyXG4gICAgJi5mcmVuY2gge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9mcmVuY2guc3ZnXCIpO1xyXG4gICAgfVxyXG4gICAgJi5nZXJtYW4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9nZXJtYW4uc3ZnXCIpO1xyXG4gICAgfVxyXG4gICAgJi5oZWJyZXcge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9oZWJyZXcuc3ZnXCIpO1xyXG4gICAgfVxyXG4gICAgJi5odW5nYXJpYW4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9odW5nYXJpYW4uc3ZnXCIpO1xyXG4gICAgfVxyXG4gICAgJi5pdGFsaWFuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvaXRhbGlhbi5zdmdcIik7XHJcbiAgICB9XHJcbiAgICAmLm1hY2Vkb25pYW4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9tYWNlZG9uaWFuLnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYubm9yd2VnaWFuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3Mvbm9yd2VnaWFuLnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYucG9ydHVndWVzZS1icntcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3MvcG9ydHVndWVzZS1ici5zdmdcIik7XHJcbiAgICB9XHJcbiAgICAmLnBvcnR1Z3Vlc2UtcHQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9wb3J0dWd1ZXNlLXB0LnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYucG9ydHVndWVzZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL3BvcnR1Z3Vlc2Uuc3ZnXCIpO1xyXG4gICAgfVxyXG4gICAgJi5yb21hbmlhbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL3JvbWFuaWFuLnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYucnVzc2lhbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL3J1c3NpYW4uc3ZnXCIpO1xyXG4gICAgfVxyXG4gICAgJi5zcGFuaXNoIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZmxhZ3Mvc3BhbmlzaC5zdmdcIik7XHJcbiAgICB9XHJcbiAgICAmLnN3ZWRpc2gge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy9zd2VkaXNoLnN2Z1wiKTtcclxuICAgIH1cclxuICAgICYudHVya2lzaCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ZsYWdzL3R1cmtpc2guc3ZnXCIpO1xyXG4gICAgfVxyXG4gICAgJi51a3JhaW5pYW4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9mbGFncy91a3JhaW5pYW4uc3ZnXCIpO1xyXG4gICAgfVxyXG59IiwiXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQXJ0aWNsZSAtIENvbnRlbnRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4uYXJ0aWNsZS1jb250ZW50e1xyXG4gICAgY29sb3I6IHZhcigtLWFydGljbGUtZm9udC1jb2xvcik7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWFydGljbGUtZm9udC1zaXplLWJhc2UpO1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWFydGljbGUtZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tYXJ0aWNsZS1saW5lLWhlaWdodC1iYXNlKTtcclxuICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwXHJcbiAgICB9ICAgIFxyXG4gICAgJiA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMFxyXG4gICAgfSAgICBcclxuICAgIGgxLFxyXG4gICAgLmgxIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1hcnRpY2xlLWgxLW1hcmdpbi10b3ApO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWFydGljbGUtaDEtbWFyZ2luLWJvdHRvbSk7XHJcbiAgICB9XHJcbiAgICBoMixcclxuICAgIC5oMiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tYXJ0aWNsZS1oMi1tYXJnaW4tdG9wKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1hcnRpY2xlLWgyLW1hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG4gICAgaDMsXHJcbiAgICAuaDMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLWFydGljbGUtaDMtbWFyZ2luLXRvcCk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tYXJ0aWNsZS1oMy1tYXJnaW4tYm90dG9tKTtcclxuICAgIH1cclxuICAgIGg0LFxyXG4gICAgLmg0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1hcnRpY2xlLWg0LW1hcmdpbi10b3ApO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWFydGljbGUtaDQtbWFyZ2luLWJvdHRvbSk7XHJcbiAgICB9XHJcbiAgICBoNSxcclxuICAgIC5oNSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tYXJ0aWNsZS1oNS1tYXJnaW4tdG9wKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1hcnRpY2xlLWg1LW1hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG4gICAgaDYsXHJcbiAgICAuaDYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLWFydGljbGUtaDYtbWFyZ2luLXRvcCk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tYXJ0aWNsZS1oNi1tYXJnaW4tYm90dG9tKTtcclxuICAgIH1cclxuXHRiLFxyXG4gICAgc3Ryb25nIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcclxuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG5cdH1cclxuXHQudGFibGUsIFxyXG4gICAgdGFibGUgeyBcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgIHRkLFxyXG4gICAgICAgIHRoIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHR9XHJcblx0aW1nIHtcclxuXHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHR9XHJcbn1cclxuLmFubm91bmNlbWVudHMtbGlzdCB7XHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSAwO1xyXG4gICAgfVxyXG59IiwiLmludml0ZS11c2Vycy1idG57XHJcbiAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuLnBhbmVsLXVzZXJzIHtcclxuICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG59XHJcbi51c2VyLWxpc3Qge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICA+ICogKyAqIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYXZhdGFyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ib2R5IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pbmZvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDYwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MCU7ICAgXHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1uYW1lIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWVtYWlsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWRhdGUge1xyXG4gICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1hY3Rpb25zIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC04cHg7XHJcbiAgICAgICAgICAgIC5sYWJlbCxcclxuICAgICAgICAgICAgLmJ0bi1kZWZhdWx0e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRvb2x0aXAge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICArIC51c2VyLWxpc3QtaXRlbSB7XHJcbiAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxuICAgIGEudXNlci1saXN0LWl0ZW0ge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICsgLnVzZXItbGlzdC1pdGVtIHtcclxuICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgIHRvcDogMXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgICAgICAgICoge1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1zd2l0Y2gge1xyXG4gICAgICAgIC51c2VyLWxpc3Qge1xyXG4gICAgICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgJi1kYXRlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC51c2VyLWxpc3Qge1xyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgJi1ib2R5IHtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWRhdGUge1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTtcclxuICAgICAgICAgICAgICAgID4gKiArICoge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgLnVzZXItbGlzdHtcclxuICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAmLWFjdGlvbnMge1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDY2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgLmxhYmVse1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtc3dpdGNoIHtcclxuICAgICAgICAgICAgLnVzZXItbGlzdCB7XHJcbiAgICAgICAgICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgICAgICYtYWN0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNzJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyBCbGFjayBXZWVrIFByb21vdGlvbiBQYWdlIC0gQ01TXHJcblxyXG46cm9vdHtcclxuICAgIC5wYWdlLXByb21vdGlvbi1ibGFja193ZWVre1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLS1ib2R5LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjMTYyNEE3IDAlLCAjMDAwMDAwIDEwMCUpO1xyXG4gICAgICAgIC0tZ3JheS1ncmFkaWVudC12OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgLS1ncmF5LWJsb2NrLWJnLWg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuICAgICAgICAtLWdyYXktZ3JhZGllbnQtaDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIC0td2hpdGUtZ3JhZGllbnQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zZXQ7XHJcbiAgICAgICAgLS1hcHAtbmF2LXRvcC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwO1xyXG4gICAgICAgIC0tYXBwLW5hdi10b3AtY29uZGVuc2VkLWhlYWRlci1ib3JkZXItYm90dG9tOiAgICAgICAgICAgICAgICAgICAgICAgbm9uZTtcclxuICAgICAgICAtLWNtcy1ibG9jay1kaXZpZGVyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcclxuICAgICAgICAtLWFwcC1uYXYtdG9wLWJvcmRlci1ib3R0b206ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmU7XHJcbiAgICAgICAgLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjRkZGRkZGNTc7XHJcbiAgICAgICAgLS1tYWluLWZvb3Rlci1ib3JkZXItdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggc29saWQgI0ZGRkZGRjFBO1xyXG4gICAgICAgIC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtYm9yZGVyLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMXB4IHNvbGlkICNGRkZGRkYxQTtcclxuICAgICAgICAtLW1haW4tZm9vdGVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgICAtLXNpdGUtc2VjdGlvbi10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY7XHJcbiAgICAgICAgLS1zaXRlLXNlY3Rpb24tc3VidGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjRkZGRkZGRUI7XHJcbiAgICAgICAgLS1iYW5lci1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG4gICAgICAgIC0tc2VjdGlvbi1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuICAgICAgICAtLW1haW4tZm9vdGVyLWV4dGVuZGVkLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY7XHJcbiAgICAgICAgLS1tYWluLWZvb3Rlci1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjRkZGRkZGQ0M7XHJcbiAgICAgICAgLS1tYWluLWZvb3Rlci1leHRlbmRlZC1kZXNjLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjRkZGRkZGQ0M7XHJcbiAgICAgICAgLS1uYXYtdGFicy1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjQjNCM0IzO1xyXG4gICAgICAgIC5zZWN0aW9uLWZhcXtcclxuICAgICAgICAgICAgLy8gLS11aS1ibG9jay1iZzogIzI0MjQyNDtcclxuICAgICAgICAgICAgLS1icmFuZC1wcmltYXJ5OiAjMDA5QUZGO1xyXG4gICAgICAgICAgICAtLWdyYXktbGlnaHRlcjogIzMwMzAzMDtcclxuICAgICAgICAgICAgLS1ncmF5LWxpZ2h0ZXItNDogI0VGRUZGMTtcclxuICAgICAgICAgICAgLS10ZXh0LWhlYWRpbmctY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIC0tdGV4dC1wcmltYXJ5LWNvbG9yOiAjMDA5QUZGO1xyXG4gICAgICAgICAgICAtLXRleHQtYm9keS1jb2xvcjogaHNsYSgwLDAlLDEwMCUsLjI0KTtcclxuICAgICAgICAgICAgLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXItMzogaHNsYSgwLDAlLDEwMCUsLjgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2Vla3tcclxuICAgIC5zZWN0aW9uLWZhcSB7XHJcbiAgICAgICAgLmZhcS1pdGVtLmZhcS1pdGVtLWJveGVke1xyXG4gICAgICAgICAgICBvdXRsaW5lOiB1bnNldCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XHJcbiAgICAgICAgICAgIC5mYXEtaXRlbS1ib3R0b217XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRkNDIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmNvbGxhcHNlZDpub3QoLmZhcS1pdGVtLWV4cGFuZGVkKTphZnRlcntcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bm90KC5jb2xsYXBzZWQpOm5vdCguZmFxLWl0ZW0tZXhwYW5kZWQpIGgze1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpub3QoLmZhcS1pdGVtLWV4cGFuZGVkKTpob3ZlciBoM3tcclxuICAgICAgICAgICAgY29sb3I6ICNGRkZGRkZDQztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5jb2xsYXBzZWQ6aG92ZXIgLmFjY29yZGlvbi1pY29uIHN2ZyBnIHBhdGh7XHJcbiAgICAgICAgICAgIGZpbGw6ICNGRkZGRkZDQztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYWdlLXByb21vdGlvbi1ibGFja193ZWVrLFxyXG4ucGFnZS1wcm9tb3Rpb24tY2hyaXN0bWFzX3NhbGV7XHJcbiAgICAmLnBhZ2UtbGFnb20tY21zLmxhZ29tLWRlcHRoe1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvZHktYmcpO1xyXG4gICAgfVxyXG4gICAgJi5sYWdvbS1mdXR1cmlzdGlje1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvZHktYmcpO1xyXG4gICAgfVxyXG4gICAgLmFwcC1uYXYtb25seS1sb2dve1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIC5hcHAtbmF2LW1lbnV7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgID4gLmNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tYXBwLW5hdi1oZWFkZXItaGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sb2dvLWltZ3tcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1hcHAtbmF2LWxvZ28taGVpZ2h0KTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1hcHAtbmF2LWxvZ28td2lkdGgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuc2Nyb2xsLXVwe1xyXG4gICAgICAgIC5hcHAtbmF2LW9ubHktbG9nb3tcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3QtYmlsbGluZy1zd2l0Y2hlciAuYnRuLWdyb3VwID4gLmJ0bjpub3QoLmFjdGl2ZSkgLmJ0bi10ZXh0e1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG4gICAgLnByb2R1Y3QtYmlsbGluZy1zd2l0Y2hlcntcclxuICAgICAgICAuYnRuLWRyb3Bkb3due1xyXG4gICAgICAgICAgICA+IHNwYW57XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZHJvcGRvd24tY3ljbGUtc3dpdGNoZXJ7XHJcbiAgICAgICAgICAgICAgICA+IGJ1dHRvbntcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLCY6YWN0aXZlLCY6Zm9jdXN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuYnRuLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWFpbi1mb290ZXJ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICAmLWV4dGVuZGVkLWdyYXl7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IHZhcigtLW1haW4tZm9vdGVyLWV4dGVuZGVkLWJvcmRlci10b3ApXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvb3Rlci1jb21wYW55LWxvZ297XHJcbiAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb290ZXItY29weXJpZ2h0e1xyXG4gICAgICAgIGNvbG9yOiAjRkZGRkZGQ0M7XHJcbiAgICB9XHJcblxyXG4gICAgLnNpdGUtYmFubmVye1xyXG4gICAgICAgICYuYmFsY2std2Vlay1iYW5uZXItZ3JhcGhpYy0xe1xyXG4gICAgICAgICAgICAuYmFubmVyLWdyYXBoaWMtYmFja2dyb3VuZC1zaWRle1xyXG4gICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTMyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYmFubmVyLWdyYXl7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJhbm5lci1zdWJ0aXRsZSwuYmFubmVyLXRpdGxlLC5iYW5uZXItdGl0bGUgLmgye1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJhbm5lci1jb250ZW50e1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTgwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC50aW1lci1ib3JkZXJlZHtcclxuICAgICAgICAudGltZXItYm94e1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRkZGRkZGNTc7XHJcbiAgICAgICAgICAgICYtbnVte1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1sYWJlbHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGQ0M7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGltZXJ7XHJcbiAgICAgICAgJi1kaXZpZGVye1xyXG4gICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICBjaXJjbGV7XHJcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogI0ZGRkZGRkNDO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAuZmVhdHVyZXtcclxuICAgICAgICAmLXN0YXR7XHJcbiAgICAgICAgICAgIHNwYW4udGV4dC1oZWFkaW5ne1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ3VzdG9tIENsYXNzIFxyXG4gICAgLmZvbnQtODB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiA4MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA4OHB4O1xyXG4gICAgfVxyXG4gICAgLnRleHQtcHJpbWFyeS1saWdodGVye1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXIpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayxcclxuLmhvbWUtc2FsZS1ibGFjay13ZWVre1xyXG4gICAgLnNpdGUtYmFubmVyLmJhbm5lci5iYWxjay13ZWVrLWJhbm5lci1ncmFwaGljLTF7XHJcbiAgICAgICAgLmNvbnRhaW5lcnsgICAgICAgICAgICBcclxuICAgICAgICAgICAgLmJhbm5lci1ncmFwaGlje1xyXG4gICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogODIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE4MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3Ljk4cHgpe1xyXG4gICAgICAgICAgICAgICAgLmJhbm5lci1iYWNrZ3JvdW5ke1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYmFubmVyLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZXtcclxuICAgIC5zaXRlLWJhbm5lci5iYW5uZXIuY2hpcnN0bWFzLXNhbGUtYmFubmVyLWdyYXBoaWMtMXtcclxuICAgICAgICAuY29udGFpbmVyeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAuYmFubmVyLWdyYXBoaWN7XHJcbiAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2NzBweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3Ljk4cHgpe1xyXG4gICAgICAgICAgICAgICAgLmJhbm5lci1iYWNrZ3JvdW5ke1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYmFubmVyLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaG9tZS1zYWxlLWJsYWNrLXdlZWt7XHJcbiAgICAuc2VjdGlvbi1zZWNvbmRhcnksXHJcbiAgICAuYmFubmVyLXNlY29uZGFyeXtcclxuICAgICAgICAudGltZXJ7XHJcbiAgICAgICAgICAgIC50aW1lci1ib3guaXMtYm9yZGVyZWR7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjI0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFnZS1wcm9tb3Rpb24tYmxhY2tfd2VlayxcclxuLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxle1xyXG4gICAgLnRpbWVye1xyXG4gICAgICAgIC50aW1lci1ib3guaXMtYm9yZGVyZWR7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMjQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLyBDaHJpc3RtYXMgU2FsZSBQcm9tb3Rpb24gUGFnZSBTdHlsZXNcclxuLnBhZ2UtcHJvbW90aW9uLWNocmlzdG1hc19zYWxle1xyXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcclxuICAgIC0tYm9keS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgIzAwNjQzQSAwJSwgIzAwMzMyNCAxMDAlKTtcclxuICAgIC0tZ3JheS1ncmFkaWVudC12OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XHJcbiAgICAtLWdyYXktYmxvY2stYmctaDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG4gICAgLS1ncmF5LWdyYWRpZW50LWg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuICAgIC0td2hpdGUtZ3JhZGllbnQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zZXQ7XHJcbiAgICAtLWFwcC1uYXYtdG9wLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDA7XHJcbiAgICAtLWFwcC1uYXYtdG9wLWNvbmRlbnNlZC1oZWFkZXItYm9yZGVyLWJvdHRvbTogICAgICAgICAgICAgICAgICAgICAgIG5vbmU7XHJcbiAgICAtLWNtcy1ibG9jay1kaXZpZGVyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcclxuICAgIC0tYXBwLW5hdi10b3AtYm9yZGVyLWJvdHRvbTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uZTtcclxuICAgIC0tdWktYmxvY2stZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI0ZGRkZGRjU3O1xyXG4gICAgLS1tYWluLWZvb3Rlci1ib3JkZXItdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggc29saWQgI0ZGRkZGRjFBO1xyXG4gICAgLS1tYWluLWZvb3Rlci1leHRlbmRlZC1ib3JkZXItdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggc29saWQgI0ZGRkZGRjFBO1xyXG4gICAgLS1tYWluLWZvb3Rlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAtLXNpdGUtc2VjdGlvbi10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY7XHJcbiAgICAtLXNpdGUtc2VjdGlvbi1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNGRkZGRkZFQjtcclxuICAgIC0tYmFuZXItY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuICAgIC0tc2VjdGlvbi1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuICAgIC0tbWFpbi1mb290ZXItZXh0ZW5kZWQtdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuICAgIC0tbWFpbi1mb290ZXItbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI0ZGRkZGRkNDO1xyXG4gICAgLS1tYWluLWZvb3Rlci1leHRlbmRlZC1kZXNjLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjRkZGRkZGQ0M7XHJcbiAgICAtLW5hdi10YWJzLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNCM0IzQjM7XHJcbn1cclxuXHJcbi5wYWdlLXByb21vdGlvbi1jaHJpc3RtYXNfc2FsZSwgXHJcbi5ob21lLWNocmlzdG1hc19zYWxlIC5zZWN0aW9uLXNlY29uZGFyeSxcclxuLmhvbWUtY2hyaXN0bWFzX3NhbGUgLmJhbm5lci1zZWNvbmRhcnkge1xyXG4gICAgLS10ZXh0LXByaW1hcnktY29sb3I6ICMyNWE3NWI7XHJcbiAgICAtLWJyYW5kLXByaW1hcnktbGlnaHRlcjogIzI1YTc1YjtcclxuICAgIC0tbWFpbi1mb290ZXItbGluay1ob3Zlci1jb2xvcjogIzI1YTc1YjtcclxuICAgIC0tYnRuLXByaW1hcnktYmc6ICMyNWE3NWI7XHJcbiAgICAtLWJ0bi1wcmltYXJ5LWJvcmRlcjogIzI1YTc1YjtcclxuICAgIC0tYnRuLXByaW1hcnktaG92ZXItYmc6ICM0RUNBNzg7XHJcbiAgICAtLWJ0bi1wcmltYXJ5LWhvdmVyLWJvcmRlcjogIzRFQ0E3ODtcclxuICAgIC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3I6ICMyNWE3NWI7XHJcbiAgICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnOiAjRDhGM0UxO1xyXG4gICAgLS1idG4tcHJpbWFyeS1mYWRlZC1ib3JkZXI6ICNEOEYzRTE7XHJcbiAgICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yOiAjMjVhNzViO1xyXG4gICAgLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZzogI0M4RUVENTtcclxuICAgIC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyOiAjQzhFRUQ1O1xyXG4gICAgLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmc6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcclxuICAgIC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmhvbWUtY2hyaXN0bWFzX3NhbGUgLnNpdGUtYmFubmVyLmJhbm5lci5jaGlyc3RtYXMtc2FsZS1iYW5uZXItZ3JhcGhpYy0xIC5jb250YWluZXIgLmJhbm5lci1ncmFwaGljIGltZyB7XHJcbiAgaGVpZ2h0OiA2NzBweDtcclxuICB3aWR0aDogYXV0bztcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gIC5ob21lLWNocmlzdG1hc19zYWxlIC5zaXRlLWJhbm5lci5iYW5uZXIuY2hpcnN0bWFzLXNhbGUtYmFubmVyLWdyYXBoaWMtMSAuY29udGFpbmVyIC5iYW5uZXItYmFja2dyb3VuZCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAuaG9tZS1jaHJpc3RtYXNfc2FsZSAuc2l0ZS1iYW5uZXIuYmFubmVyLmNoaXJzdG1hcy1zYWxlLWJhbm5lci1ncmFwaGljLTEgLmNvbnRhaW5lciAuYmFubmVyLWNvbnRlbnQge1xyXG4gICAgcGFkZGluZy10b3A6IDEyMHB4O1xyXG4gIH1cclxufVxyXG4uaG9tZS1jaHJpc3RtYXNfc2FsZSAuc2l0ZS1iYW5uZXIsXHJcbi5ob21lLWNocmlzdG1hc19zYWxlIC5zZWN0aW9uLXNlY29uZGFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjMDA2NDNBIDAlLCAjMDAzMzI0IDEwMCUpIWltcG9ydGFudDtcclxufVxyXG4uaG9tZS1jaHJpc3RtYXNfc2FsZSAuc2l0ZS1iYW5uZXIgLmJhbm5lci1ncmFwaGljLWJhY2tncm91bmQtc2lkZSBpbWcge1xyXG4gICAgbWFyZ2luLXRvcDogLTEwMHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMzIwcHg7XHJcbiAgICBtYXgtaGVpZ2h0OiA4MjBweDsgICAgICAgICAgICBcclxufVxyXG4uaG9tZS1jaHJpc3RtYXNfc2FsZSAuc2VjdGlvbi1zZWNvbmRhcnkgLnRpbWVyIC50aW1lci1ib3guaXMtYm9yZGVyZWQsXHJcbi5ob21lLWNocmlzdG1hc19zYWxlIC5iYW5uZXItc2Vjb25kYXJ5IC50aW1lciAudGltZXItYm94LmlzLWJvcmRlcmVkIHtcclxuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XHJcbn1cclxuLmhvbWUtY2hyaXN0bWFzX3NhbGUgLm1vZGFsLWJhY2tkcm9wIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoMSwgNzIsIDQyLCAwLjkpIDAlLCByZ2JhKDAsIDE4LCAxMiwgMC45KSAxMDAlKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLyBTdGFuZGFyZCBTdHlsZXMgRm9yIFByb21vdGlvbnMgTW9kYWwgLSBDbGllbnQgTm90aWZpY2F0aW9uIEV4dGVuc2lvblxyXG5cclxuOnJvb3R7XHJcbiAgICAubW9kYWwtYmxhY2std2VlayxcclxuICAgIC5tb2RhbC1jaHJpc3RtYXMtc2FsZSB7XHJcbiAgICAgICAgLS10ZXh0LWJvZHktY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWJvZHktY29sb3IpO1xyXG4gICAgICAgIC0tdGV4dC1oZWFkaW5nLWNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeS1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAtLWlucHV0LWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjgpO1xyXG4gICAgfVxyXG59XHJcbi5tb2RhbC1ibGFjay13ZWVrLFxyXG4ubW9kYWwtY2hyaXN0bWFzLXNhbGV7XHJcbiAgICAuY2xvc2V7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC41KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xyXG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG4gICAgLnRpbWVye1xyXG4gICAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0yeCkgYXV0bztcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAudGltZXItYm94LmlzLWJvcmRlcmVke1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBNb2RhbCBCbGFjayBXZWVrIE1vZGFsIC0gQ2xpZW50IE5vdGlmaWNhdGlvbiBFeHRlbnNpb25cclxuXHJcbi5ob21lLXNhbGUtYmxhY2std2Vla3tcclxuICAgIC5tb2RhbC1iYWNrZHJvcHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDEzLDIyLDEwOSwgMC45KSAwJSwgcmdiYSgwLDAsMCwgMC45KSAxMDAlKSFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLm1vZGFsLWJsYWNrLXdlZWt7XHJcbiAgICAubW9kYWwtY29udGVudHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjMTYyNEE3IDAlLCAjMDAwMDAwIDEwMCUpIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIENocmlzdG1hcyBTYWxlIE1vZGFsIC0gQ2xpZW50IE5vdGlmaWNhdGlvbiBFeHRlbnNpb25cclxuXHJcbjpyb290e1xyXG4gICAgLm1vZGFsLWNocmlzdG1hcy1zYWxle1xyXG4gICAgICAgIC0tdGV4dC1wcmltYXJ5LWNvbG9yOiAjMjVhNzViO1xyXG4gICAgICAgIC0tYnRuLXByaW1hcnktYmc6IzI1YTc1YjtcclxuICAgICAgICAtLWJ0bi1wcmltYXJ5LWJvcmRlcjojMjVhNzViO1xyXG4gICAgICAgIC0tYnRuLXByaW1hcnktaG92ZXItYmc6ICM0RUNBNzg7XHJcblxyXG4gICAgICAgIC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyOiAjNEVDQTc4O1xyXG4gICAgICAgIC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3I6IzI1YTc1YjtcclxuXHJcbiAgICAgICAgLS1idG4tcHJpbWFyeS1mYWRlZC1iZzojRDhGM0UxO1xyXG4gICAgICAgIC0tYnRuLXByaW1hcnktZmFkZWQtYm9yZGVyOiNEOEYzRTE7XHJcblxyXG4gICAgICAgIC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3I6IzI1YTc1YjtcclxuICAgICAgICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnOiNDOEVFRDU7XHJcbiAgICAgICAgLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXI6I0M4RUVENTtcclxuXHJcbiAgICAgICAgLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmc6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKTtcclxuICAgICAgICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWFjdGl2ZS1ib3JkZXI6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlcik7XHJcblxyXG4gICAgICAgIC0taWNoZWNrLWFjdGl2ZS1iZzojMjVhNzViO1xyXG4gICAgICAgIC0taWNoZWNrLWFjdGl2ZS1ib3JkZXItY29sb3I6IzI1YTc1YjtcclxuICAgIH1cclxufVxyXG4ubW9kYWwtY2hyaXN0bWFzLXNhbGV7XHJcbiAgICAubW9kYWwtY29udGVudHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjMDA2NDNBIDAlLCAjMDAzMzI0IDEwMCUpIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQWxlcnQgQmxhY2sgV2VlayAtIENsaWVudCBOb3RpZmljYXRpb24gRXh0ZW5zaW9uXHJcblxyXG4uY2xpZW50QWxlcnR7XHJcbiAgICAmLmFsZXJ0LWJsYWNrLXdlZWsge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICMxNjI0QTcgMCUsICMwMDAwMDAgMTAwJSkhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxufVxyXG4vLyBBbGVydCBDaHJpc3RtYXMgLSBDbGllbnQgTm90aWZpY2F0aW9uIEV4dGVuc2lvblxyXG5cclxuOnJvb3R7XHJcbiAgICAuY2xpZW50QWxlcnR7XHJcbiAgICAgICAgJi5hbGVydC1jaHJpc3RtYXMtc2FsZXtcclxuICAgICAgICAgICAgLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvcjojMjVhNzViO1xyXG4gICAgICAgICAgICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnOiNEOEYzRTE7XHJcbiAgICAgICAgICAgIC0tYnRuLXByaW1hcnktZmFkZWQtYm9yZGVyOiNEOEYzRTE7XHJcblxyXG4gICAgICAgICAgICAtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yOiMyNWE3NWI7XHJcbiAgICAgICAgICAgIC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmc6I0M4RUVENTtcclxuICAgICAgICAgICAgLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXI6I0M4RUVENTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJnOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgIC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmNsaWVudEFsZXJ0e1xyXG4gICAgJi5hbGVydC1jaHJpc3RtYXMtc2FsZXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjMDA2NDNBIDAlLCAjMDAzMzI0IDEwMCUpO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLyogUFJFU0VOVEFUSU9OIFBBR0UgKi9cclxuXHJcbi5sYWdvbS5wcmVzZW50YXRpb24tcGFnZSAucHJlc2VudGF0aW9uLXNlY3Rpb24geyBcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcclxuICAgIG1heC13aWR0aDogMTkwMHB4O1xyXG4gICAgbWFyZ2luOiAxMjBweCBhdXRvO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxufVxyXG4ubGFnb20ucHJlc2VudGF0aW9uLXBhZ2UgLnByZXNlbnRhdGlvbi1zZWN0aW9uLnNpdGUtYmFubmVyOmFmdGVyIHtcclxuICAgIGhlaWdodDogMTAwJSFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLCAwLjA1KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCFpbXBvcnRhbnQ7XHJcbn1cclxuLmxhZ29tLnByZXNlbnRhdGlvbi1wYWdlIC5wcmVzZW50YXRpb24tc2VjdGlvbi5zaXRlLWJhbm5lci5iYW5uZXIgLmJhbm5lci1ib2R5IHtcclxuICAgIG1pbi1oZWlnaHQ6IDY0MHB4O1xyXG4gICAgei1pbmRleDogOTk7XHJcbn1cclxuXHJcblxyXG4ubGFnb20tbGF5b3V0LXRvcCAuYXBwLW5hdi1tZW51IC5tZW51ID4gbGkuZHJvcGRvd24tbWVnYS5jbXMtbWVudSAuZHJvcGRvd24tbWVudS1jb250ZW50IC5kcm9wZG93bi1tZW51LXBhcmVudDpudGgtY2hpbGQoMSksXHJcbi5sYWdvbS1sYXlvdXQtdG9wIC5hcHAtbmF2LW1lbnUgLm1lbnUgPiBsaS5kcm9wZG93bi1tZWdhLmNtcy1tZW51IC5kcm9wZG93bi1tZW51LWNvbnRlbnQgLmRyb3Bkb3duLW1lbnUtcGFyZW50Om50aC1jaGlsZCgyKSB7XHJcbiAgICBmbGV4LWJhc2lzOiAxNSU7XHJcbn0iLCIuYWZmaWxpYXRlLXN0YXQge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuICAgIGZvbnQtc2l6ZTogMS42ZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDIuNGVtO1xyXG4gICAgfVxyXG4gICAgaSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBmb250LXNpemU6IDRlbTtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgLmFmZmlsaWF0ZS1zdGF0IHtcclxuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIuMWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzLjZlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCl7XHJcbiAgICAuYWZmaWxpYXRlLXN0YXQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4wZW07XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42ZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDNlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYWdlLXh0cmVhbWNvZGUge1xyXG4gICAgLnBhbmVse1xyXG4gICAgICAgICYucGFuZWxfZGVzaWduIHtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICA+IC5wYW5lbC1oZWFkaW5nIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbG9yLXRyYW5zcGFyZW50KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubGlzdC1ncm91cCB7XHJcbiAgICAgICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Bbm5vdW5jZW1lbnRzIExpc3RcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4uYW5ub3VuY2VtZW50cy1saXN0IHtcclxuICAgICYubGlzdC1ib3hlZCB7XHJcbiAgICAgICAgZ2FwOiAzMnB4O1xyXG4gICAgICAgIG1heC13aWR0aDogOTIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAzMnB4IGF1dG8gdmFyKC0tbWFpbi1ib2R5LXBhZGRpbmctdikgYXV0bztcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saXN0LWdyb3VwLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZyk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctYmFzZSk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLWZvb3RlciB7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYtbGluayB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAuYW5ub3VuY2VtZW50LWRhdGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAuZGV0YWlscyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYW5ub3VuY2VtZW50LWRhdGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgfVxyXG4gICAgLnBhZ2luYXRpb24ge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5ub3VuY2VtZW50cy1saXN0IHtcclxuICAgICYubGlzdC1ncm91cC1sZyB7XHJcbiAgICAgICAgLmFubm91bmNlbWVudC1kYXRlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IC0xO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW46IHZhcigtLXNwYWNpbmctMXgpIDA7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtc21hbGwpO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIDtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyAubWVzc2FnZSB7XHJcbiAgICAvLyAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1iYXNlKSAhaW1wb3J0YW50O1xyXG4gICAgLy8gfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkFydGljbGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4uYXJ0aWNsZSB7XHJcbiAgICAucGFuZWwtYm9keSB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1sZyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi1kYXRlIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWRldGFpbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG5cclxuICAgICAgICA+bGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG5cclxuICAgICAgICAgICAgPmkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPnVsIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgPmxpK2xpIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuXHJcbiAgICAgICAgPioge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuLXByaW50IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgIG9yZGVyOiAyO1xyXG5cclxuICAgICAgICAgICAgJjpub3QoOmhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2I5YmRjNTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWZvb3RlciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHhsZyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi1zaGFyZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zaGFyZS12aWEge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE2cHggMCAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+YSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS11aS1pY29uLWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpbmstY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+c3BhbitzcGFuIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudHdpdHRlci1zaGFyZS1idXR0b24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWNvbW1lbnRzLFxyXG4gICAgKy5zZWN0aW9uIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXh4bGcpO1xyXG4gICAgfVxyXG5cclxuICAgIHByZSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1ibG9jay1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNXgpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYXJ0aWNsZS1yYXRlIHtcclxuICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAudGV4dCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZvcm0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICArLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKSB7XHJcbiAgICAuYXJ0aWNsZS1yYXRlIHtcclxuICAgICAgICBmb3JtIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgZGl2Om5vdCgudGV4dCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNvbW1lbnQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctbWQpO1xyXG5cclxuICAgICYtdG9wIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgJi11c2VyIHtcclxuICAgICAgICA+aSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1tZCk7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLW1kKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLW1kKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWRhdGUge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgfVxyXG5cclxuICAgICYtYm9keSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDI0cHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDEzMjRweCkge1xyXG4gICAgLmFydGljbGUge1xyXG4gICAgICAgICYtZm9vdGVyIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLXNoYXJlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgICA+c3BhbitzcGFuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQW5ub3VuY2VtZW50cyBUb29sYmFyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLmFubm91bmNlbWVudHMtdG9vbGJhciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIG1heC13aWR0aDogOTIwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1hcmdpbi10b3A6IC0xMjBweDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGdhcDogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAudGxkLXRvb2xiYXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgd2lkdGg6IHVuc2V0O1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDA7XHJcblxyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zZWFyY2gtZmllbGQtaWNvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjQUNBRkI5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBmb3JtIHtcclxuICAgICAgICB6LWluZGV4OiAxMDAwMDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmRyb3Bkb3duLWZpbHRlciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTZweDtcclxuICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG5cclxuICAgICAgICA+c3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTZweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubGFnb20tbW9kZXJue1xyXG4gICAgLmFubm91bmNlbWVudHMtdG9vbGJhciB7XHJcbiAgICAgICAgLmRyb3Bkb3duLWZpbHRlciB7XHJcbiAgICAgICAgICAgID5zcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYXltZW50IE1ldGhvZHNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLWNjIHtcclxuICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG59XHJcbi5jYy1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1heC13aWR0aDogdW5zZXQ7XHJcbiAgICA+ICogKyAqIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgfTtcclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIH07XHJcbiAgICB9XHJcbiAgICAmLWljb24ge1xyXG4gICAgICAgIHdpZHRoOiA0OHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGksXHJcbiAgICAgICAgLmxzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1uYW1lIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgd2lkdGg6IDIwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDIwJTsgICBcclxuICAgICAgICAmLXBheXBhbHtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZGVzYyB7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTsgICAgICAgICAgICBcclxuICAgIH1cclxuICAgICYtc3RhdHVzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4OyAgICAgICAgICAgXHJcbiAgICB9XHJcbiAgICAmLWFjdGlvbnMge1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyMDVweDtcclxuICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sYWJlbCxcclxuICAgICAgICAuYnRuLWRlZmF1bHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZXhwaXJ5IHtcclxuICAgICAgICB3aWR0aDogMjAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMjAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICArIC5jYy1pdGVtIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICB9ICAgXHJcbn1cclxuLmNjLWxpc3QtYmFuayB7XHJcbiAgICAuY2MtaXRlbS1pY29ue1xyXG4gICAgICAgIGhlaWdodDogMzJweDtcclxuICAgIH1cclxuICAgIC5jYy1uYW1le1xyXG4gICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLmNjIHtcclxuICAgICAgICAmLWl0ZW0geyBcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1uYW1lIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNzAlIC0gNDhweCk7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGNhbGMoNzAlIC0gNDhweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1kZXNjIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAzO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0OHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjAlO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXN0YXR1cyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0MCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICBcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcclxuICAgIC5jYyB7XHJcbiAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgJi1kZXNjIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgJi5lbXB0eSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWFjdGlvbnMge1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDU2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGF5bWVudCBNZXRob2RzIC0gQ0hlY2tvdXRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmNjLWlucHV0LWNvbnRhaW5lciB7XHJcbiAgICAjaW5wdXREZXNjcmlwdGlvbkNvbnRhaW5lcixcclxuICAgICNjYXJkTnVtYmVyQ29udGFpbmVye1xyXG4gICAgICAgICYuY29sLW1kLTZ7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYub2Zmc2V0LW1kLTN7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNpbnB1dERlc2NyaXB0aW9uQ29udGFpbmVye1xyXG4gICAgICAgIC5jb250cm9sLWxhYmVse31cclxuICAgIH1cclxuICAgIC5jYyB7XHJcbiAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAmLWNoZWNrYm94IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtZGVzYyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKyAuY2MtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYWN0aXZlLFxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcilcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNuZXdDYXJkSW5mbyB7ICAgICAgICBcclxuICAgICAgICBoZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgI3N0cmlwZUVsZW1lbnRzIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAuc3RyaXBlLWNhcmRzLWlucHV0cyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGRpdltjbGFzcyo9Y29sLV0ge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmNvbC1tZC04e1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLm9mZnNldC1tZC0ye1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAgKG1kKSB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAuY29sLW1kLTYge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuY29sLW1kLTMge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNSU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgICAgICAgICAgICAgLmNvbC1tZC02IHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5jb2wtbWQtMyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4jc3RyaXBlRWxlbWVudHMge1xyXG4gICAgLmNvbnRyb2wtbGFiZWwge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuU3RyaXBlRWxlbWVudCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XHJcbiAgICB9XHJcbiAgICBkaXZbY2xhc3MqPWNvbC1dIHtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAuY29sLXNtLTd7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuI2liYW5FbGVtZW50Q29udGFpbmVye1xyXG4gICAgZGl2W2NsYXNzKj1jb2wtXSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmxhZ29tLWZ1dHVyaXN0aWMge1xyXG4gICAgLmNjLWlucHV0LWNvbnRhaW5lciB7XHJcbiAgICAgICAgLmNjLWl0ZW0ge1xyXG4gICAgICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAvL2JvcmRlci1jb2xvcjogI2ZmZiA7XHJcbiAgICAgICAgICAgIH0gICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFnZS12aWV3Y2FydCAjZnJtQ2hlY2tvdXQucGF5cGFsX3BwY3B2LXBheW1lbnQtZm9ybSAuc2VjdGlvbiNjcmVkaXRDYXJkSW5wdXRGaWVsZHMge1xyXG4gICAgYmFja2dyb3VuZDogdW5zZXQ7XHJcbiAgICBwYWRkaW5nLXRvcDogMCFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMCFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIC5wYXltZW50LWluc3RydWN0aW9uc3tcclxuICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICsgLnNlY3Rpb24taGVhZGluZ3tcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgb3JkZXI6IDA7XHJcbiAgICAgICAgICAgICsgLnBhbmVsLWZvcm17XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHVsLnBhbmVsLXRhYnN7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyOiB1bnNldDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tcGFuZWwtYm9yZGVyLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xyXG4gICAgICAgIG1hcmdpbjogdW5zZXQ7XHJcbiAgICAgICAgcGFkZGluZzogMCBjYWxjKHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgLSB2YXIoLS1uYXYtbGluay1wYWRkaW5nLWgpKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgfVxyXG4gICAgLmV4aXN0aW5nLWNjLWdyaWR7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pe1xyXG4gICAgICAgICAgICAuY2MtaXRlbS1uYW1le1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjAlO1xyXG4gICAgICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jYy1pdGVtLWRlc2N7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jYy1pdGVtLWFjdGlvbnN7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgfVxyXG4gICAgLmNjLWlucHV0LWNvbnRhaW5lcntcclxuICAgICAgICAucGF5cGFsLWJ1dHRvbnN7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0yNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYXltZW50IE1ldGhvZHMgLSBQYWdlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5maWVsZC1lcnJvci1tc2cge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmZpZWxkZ3JvdXAtYXV4ZmllbGRzIHtcclxuICAgICNiaWxsaW5nQ29udGFjdHNDb250YWluZXIge1xyXG4gICAgICAgIC5yYWRpbyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgNHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5maWVsZGdyb3VwLWxvYWRpbmd7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLmZpZWxkZ3JvdXAtY3JlZGl0Y2FyZCB7XHJcbiAgICAjc3RyaXBlRWxlbWVudHMge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTJweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMnB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgIC5jYy1iaWxsaW5nLWFkZHJlc3Mge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNvbC1zbS00LC5jb2wtc20tNywuY29sLWxnLTgge1xyXG4gICAgICAgICAgICAgICAgZmxleDogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNvbC1zbS0yIHsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBmbGV4OiBub25lO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29sLXNtLTIge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLlN0cmlwZUVsZW1lbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZGl2W2NsYXNzKj1jb2wtXSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udHJvbC1sYWJlbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29sLWxnLTgge1xyXG4gICAgICAgIGZsZXg6IG5vbmU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgIH1cclxuICAgICYgPiAucm93IHtcclxuICAgICAgICAuY29sLWxnLTgge1xyXG4gICAgICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgICAgIC5jb2wteHMtNiB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4cyl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jYy1udW1iZXItZmllbGQge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2NyZWRpdGNhcmRzL2NyZWRpdC1jYXJkLnN2ZycpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgJi52aXNhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvY3JlZGl0Y2FyZHMvdmlzYS5zdmcnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5tYXN0ZXJjYXJkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvY3JlZGl0Y2FyZHMvbWFzdGVyY2FyZC5zdmcnKVxyXG4gICAgICAgIH0gICAgICAgIFxyXG4gICAgICAgICYuYW1leCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2NyZWRpdGNhcmRzL2FtZXJpY2FuLWV4cHJlc3Muc3ZnJylcclxuICAgICAgICB9ICAgICAgICBcclxuICAgICAgICAmLmRpc2NvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvY3JlZGl0Y2FyZHMvZGlzY292ZXIuc3ZnJylcclxuICAgICAgICB9ICAgICAgICBcclxuICAgICAgICAmLmpjYiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2NyZWRpdGNhcmRzL2pjYi5zdmcnKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNiaWxsaW5nQWRkcmVzc0Nob2ljZSB7XHJcbiAgICAgICAgLnJhZGlvIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICAgIC5jb2wtbGctOCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2Ni42NjY2NiU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQge1xyXG4gICAgICAgICAgICAjc3RyaXBlRWxlbWVudHMge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDY2LjY2NjY3JSArIHZhcigtLXNwYWNpbmctMngpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuI2N2dldoZXJlTGluaywjc3RyaXBlQ3ZjV2hlcmV7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAucGFnZS1pbnZvaWNlLXBheW1lbnQge1xyXG4gICAgICAgIC5tYWluLWdyaWQge1xyXG4gICAgICAgICAgICAubWFpbi1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgICNmcm1QYXltZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKXtcclxuICAgIC5maWVsZGdyb3VwLWNyZWRpdGNhcmQge1xyXG4gICAgICAgICNzdHJpcGVFbGVtZW50cyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYyg2Ni42NjY2NyUgKyB2YXIoLS1zcGFjaW5nLTJ4KSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYWdlLWludm9pY2UtcGF5bWVudCxcclxuLnBhZ2UtYWNjb3VudC1wYXltZW50bWV0aG9kcy1tYW5hZ2V7XHJcbiAgICAjcGF5cGFsX2FjZGNfaW5wdXRfY29udGFpbmVye1xyXG4gICAgICAgIC5yb3d7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pe1xyXG4gICAgICAgICAgICAgICAgLmNvbC1zbS03e1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgI3BheXBhbF9hY2RjLUNyZWRpdENhcmQsXHJcbiAgICAgICAgICAgICNwYXlwYWxfYWNkYy1FeHBpcnlEYXRlLFxyXG4gICAgICAgICAgICAjcGF5cGFsX2FjZGMtQ3Zje1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMC4zNzVyZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG5cclxuLnBhZ2UtaW52b2ljZS1wYXltZW50IC5wYXlwYWxfcHBjcHYtcGF5bWVudC1mb3Jte1xyXG4gICAgI3BheW1lbnRHYXRld2F5SW5wdXR7XHJcbiAgICAgICAgKyAuZmllbGRncm91cC1jcmVkaXRjYXJke1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBheW1lbnQtaW5zdHJ1Y3Rpb25ze1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pe1xyXG4gICAgICAgIC5jYy1pdGVtLW5hbWV7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAlO1xyXG4gICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jYy1pdGVtLWRlc2N7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jYy1pdGVtLWFjdGlvbnN7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5CaWxsaW5nIC0gTWFzcyBQYXlcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnRhYmxlLW1hc3NwYXkge1xyXG4gICAgLnRhYmxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1hc3NwYXkge1xyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkJpbGxpbmcgLSBPdGhlcnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuI2JpbGxpbmdBZGRyZXNzQ2hvaWNlIHtcclxuICAgIC5yYWRpby1pbmxpbmV7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgfVxyXG4gICAgbGFiZWx7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICYgPiBzcGFuLFxyXG4gICAgICAgICYgPiBzdHJvbmd7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmF1dGgzZC1hcmVhIHtcclxuICAgIGJvcmRlcjogMDtcclxufVxyXG4uc3VibWl0LTNkIHtcclxuICAgIHdpZHRoOiA4MCU7XHJcbiAgICBib3JkZXI6IDA7XHJcbn1cclxuI3N0cmlwZUN2Y1doZXJlLFxyXG4jY3Z2V2hlcmVMaW5re1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG4jbmV3QmlsbGluZ0FkZHJlc3N7ICAgIFxyXG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG59XHJcblxyXG4jZnJtUmVtb3RlQ2FyZFByb2Nlc3N7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnBheW1lbnQtZm9ybS5wYXltZW50LWJ0bi1jb250YWluZXJ7XHJcbiAgICAmID4gZGl2e1xyXG4gICAgICAgIG1heC13aWR0aDogdW5zZXQhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgYnV0dG9uLFxyXG4gICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcclxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXHJcbiAgICAuYnRue1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcbiAgXHJcbiNwYXlwYWwtYnV0dG9uLWNvbnRhaW5lciA+IGRpdntcclxuICAgIG1pbi13aWR0aDogdW5zZXQhaW1wb3J0YW50O1xyXG59XHJcbi5wYXltZW50LWJ0bi1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5FcnJvclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5lcnJvci1wYWdlIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tZXJyb3ItcGFnZS1iZyk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1iYW5uZXItY29udGVudC1wYWRkaW5nLXYpIDA7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlclxyXG4gICAgfVxyXG4gICAgJi10aXRsZXtcclxuICAgICAgICBmb250LXNpemU6IDE1MnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNzhweDtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMjhweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM0cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgcHtcclxuICAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjQ4KTtcclxuICAgIH1cclxuICAgICYtYWN0aW9uc3tcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICsuYnRue1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAzNDlweCl7XHJcbiAgICAuZXJyb3ItcGFnZXtcclxuICAgICAgICAmLWFjdGlvbnN7XHJcbiAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5wYWdlLWNsaWVudGFyZWFob21lIHtcclxuICAgIC50aWxlcyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9ue1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGlsZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRhc2hib2FyZCAtIFBhbmVsc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uY2xpZW50LWhvbWUtcGFuZWxzIHtcclxuICAgIC5wYW5lbCB7XHJcbiAgICAgICAgJi1oZWFkaW5nIHtcclxuICAgICAgICAgICAgLnBhbmVsLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgLmJ0bi1kZWZhdWx0e1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1jb2xvciksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRlY29yYXRpb24taWNvbnMpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiAuZmFze1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5wdWxsLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAvLyBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJvZHkge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMjNweDtcclxuICAgICAgICAgICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cC1idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCh2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1jb2xvciksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYm9yZGVyKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItY29sb3IpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWJvcmRlciksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWFjdGl2ZS1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWFjdGl2ZS1ib3JkZXIpLCB2YXIoLS1idG4tZGlzYWJsZWQtY29sb3IpLCB2YXIoLS1idG4tZGlzYWJsZWQtYmcpLCB2YXIoLS1idG4tZGlzYWJsZWQtYm9yZGVyKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYtc3VjY2Vzc3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvciksIHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubm8tZGF0YSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0OHB4IDI0cHggMzZweDtcclxuICAgICAgICAgICAgICAgICYtaWNvbntcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjRweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDY0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWZvb3RlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcclxuICAgICAgICB9ICAgICAgICBcclxuICAgICAgICAucGFuZWwtbWMtc3Nve1xyXG4gICAgICAgICAgICAucm93e1xyXG4gICAgICAgICAgICAgICAgZm9ybXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYgPiAuY29sLXNtLTZ7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uY2xpZW50LWhvbWUtcGFuZWxzIHtcclxuICAgIC5wYW5lbCB7ICAgICAgICBcclxuICAgICAgICAubGlzdC1ncm91cCB7XHJcbiAgICAgICAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICAgICAgICAgJi5oaWRlLWV4cGlyZS1zdGF0dXN7XHJcbiAgICAgICAgICAgICAgICAgICAgLnN0YXR1cy1leHBpcnl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5oaWRlLXByb2R1Y3QtZ3JvdXAtbmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtLWdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtLWZ1bGxuYW1le1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIFBhbmVsOiBTdXBwb3J0IFRpY2tldCBMaXN0ICovXHJcblxyXG4gICAgLnBhbmVsLXN1cHBvcnQtdGlja2V0cyB7XHJcbiAgICAgICAgLnN0YXR1cyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgNHB4O1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDRweCAwIDA7XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogUGFuZWw6IFNlcnZpY2VzIExpc3QgKi9cclxuICAgIFxyXG4gICAgLnBhbmVsLWFjdGl2ZS1zZXJ2aWNlcyB7IFxyXG4gICAgICAgIC5saXN0LWdyb3VwIHtcclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10YWJsZS1iZy1ob3Zlcik7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpub3QoLmhhcy1ncmFwaGljKXtcclxuICAgICAgICAgICAgICAgICAgICAuZ3JhcGhpYy1pdGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5saXN0LWdyb3VwLWl0ZW0tbmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuaGFzLWdyYXBoaWN7XHJcbiAgICAgICAgICAgICAgICAgICAgLmdyYXBoaWMtaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDYxOXB4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTsgXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjIwcHgpe1xyXG4gICAgICAgICAgICAgICAgICAgID4gZGl2ICsgZGl2e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MTlweCl7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcclxuICAgICAgICAgICAgICAgICAgICAubGlzdC1ncm91cC1pdGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLXN0YXR1c3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3RhdHVzLWV4cGlyeSB7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLWFjdGlvbnN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbS1uYW1le1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5saXN0LWdyb3VwLWl0ZW0tc3RhdHVze1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4obGcsIGxnKXtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgICAgICAgICAuc3RhdHVzLWV4cGlyeSB7ICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICAgICAgICAgIC5zdGF0dXMtZXhwaXJ5IHsgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb25ze1xyXG4gICAgICAgICAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZHJvcGRvd24taXRlbXtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIHBhZGRpbmcgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgIC5sb2FkaW5ne1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaXRlbXtcclxuICAgICAgICAgICAgICAgICYuaGlkZS1leHBpcmUtc3RhdHVze1xyXG4gICAgICAgICAgICAgICAgICAgIC5zdGF0dXMtZXhwaXJ5e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuc3RhdHVzLWV4cGlyeSB7ICAgICAgICBcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pOyAgICBcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRleHQtZG9tYWluIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgIFxyXG4gICAgICAgIC8vIC5sYWJlbCB7XHJcbiAgICAgICAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAvLyAgICAgdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICAvLyAgICAgd2lkdGg6IDhweDtcclxuICAgICAgICAvLyAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgICAgLy8gICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xyXG4gICAgICAgIC8vICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIC8vICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIC8vICAgICBtYXJnaW46IDhweCAtOHB4IDAgMDtcclxuICAgICAgICAvLyAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAvLyAgICAgICAgIHJpZ2h0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgIC8vICAgICB9O1xyXG4gICAgICAgIC8vICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgIC8vICAgICAgICAgbGVmdDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAvLyAgICAgfTtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogUGFuZWw6IERvbWFpbiBSZWdpc3RlciAqL1xyXG5cclxuICAgIC5wYW5lbC1kb21haW4tcmVnaXN0ZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWhvbWUtZG9tYWluLWJnKTtcclxuICAgICAgICBib3JkZXI6IHZhcigtLXBhbmVsLWhvbWUtZG9tYWluLWJvcmRlcik7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7IFxyXG4gICAgICAgIHNtYWxsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtaG9tZS1kb21haW4tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzKTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbnB1dFtuYW1lPVwiZG9tYWluXCJdIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBpbnB1dC1zaXplKCdpbnB1dFtuYW1lPVwiZG9tYWluXCJdJywgdmFyKC0tdWktaGVpZ2h0LWxnKSwgdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpLCB2YXIoLS11aS1wYWRkaW5nLWxnLWgpLCB2YXIoLS1pbnB1dC1sZy1mb250LXNpemUpLCB2YXIoLS1pbnB1dC1sZy1saW5lLWhlaWdodCksIHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpKTtcclxuICAgICAgICAucGFuZWwtaGVhZGluZyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIC5wYW5lbC10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFuZWwtaG9tZS1kb21haW4tdGl0bGUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcm9kdWN0LWRldGFpbHMtdGl0bGUtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcm9kdWN0LWRldGFpbHMtdGl0bGUtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByb2R1Y3QtZGV0YWlscy10aXRsZS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaW5wdXQtd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbnB1dC1hY3Rpb25zIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmJ0bi1kZWZhdWx0e1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgLmlucHV0LWdyb3VwLm1hcmdpbi0xMCB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAmLnB4LTIucGItMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAtYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSwgdmFyKC0tdWktcGFkZGluZy1sZy1oKSwgdmFyKC0tYnRuLWxnLWZvbnQtc2l6ZSksIHZhcigtLWJ0bi1sZy1saW5lLWhlaWdodCksIHZhcigtLWJ0bi1sZy1ib3JkZXItcmFkaXVzKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBwIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhbmVsLWZvb3RlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC00MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXh4bGcpO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5lbC1ob21lLWRvbWFpbi10ZXh0LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGV4dC1sYXN0LXVwZGF0ZWQsXHJcbiAgICBzbWFsbCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDMyM3B4O1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAubGlzdC1ncm91cC1pdGVtIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaGFzLWNoZWNrYm94ZXMge1xyXG4gICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtIHsgIFxyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0OHB4O1xyXG4gICAgICAgICAgICAgICAgLmNoZWNrYm94LXN0eWxlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMThweDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLXNpdGVqZXQtYnVpbGRlcntcclxuICAgICAgICAucGFuZWwtYm9keXtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5jbGllbnQtaG9tZS1hbGVydHMge1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgIGEuYWxlcnQge1xyXG4gICAgICAgIC8vYm9yZGVyOiBtYXAtZ2V0KCRjbGllbnQtaG9tZSwgXCJhbGVydC1ib3JkZXJcIik7XHJcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjbGllbnQtaG9tZSwgXCJhbGVydC1iZ1wiKTtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgLmFsZXJ0LWFjdGlvbnMge1xyXG4gICAgICAgICAgICAgICAgLmJ0bjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYWxlcnQtZ3JvdXB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAuYWxlcnR7XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucGFnZS1jbGllbnRhcmVhaG9tZXtcclxuICAgIFtkYXRhLXNlcnZpY2UtaWRde1xyXG4gICAgICAgIC5kcm9wZG93bi1pdGVte1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tYmFzZSksIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBwYWRkaW5nIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIC5sb2FkaW5ne1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5kaXNhYmxlZHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLWRyb3Bkb3duLWxpbmstcGFkZGluZy12KSB2YXIoLS1kcm9wZG93bi1saW5rLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbjQuIEhvbWUgUGFnZSAtIE90aGVyc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5cclxuZGl2LmhvbWUtdHdpdHRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14eGxnKTtcclxufVxyXG5kaXYudHdlZXQge1xyXG4gICAgPmkge1xyXG4gICAgICAgIGNvbG9yOiAjMkJBQkNGO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuICAgIH1cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTtcclxuICAgICAgICBjb2xvcjogI2NjYztcclxuICAgIH1cclxufSIsIi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuS25vd2xlZGdlYmFzZSBjYXRlZ29yaWVzIHNlY3Rpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4uc2VjdGlvbi0ta2JjYXRlZ29yaWVzIHtcclxuICAgIG1hcmdpbi10b3A6IDU2cHg7XHJcbn1cclxuLnNlY3Rpb24tLWtiYXJ0aWNsZXMge1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTB4KTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpO1xyXG4gICAgfVxyXG59XHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuS25vd2xlZGdlYmFzZSBjYXRlZ29yaWVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLmtiLWNhdGVnb3JpZXMge1xyXG4gICAgLmxpc3QtZ3JvdXAtLWJveGVzIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGdhcDogMjRweDtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNzBweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDMzLjMzJSAtIDE2cHgpO1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYygzMy4zMyUgLSAxNnB4KTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEyKSwgMHB4IDhweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogdW5zZXQ7XHJcbiAgICAgICAgICAgICYtYm9keSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDY0cHg7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDY0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICBncmlkLWF1dG8tcm93czogYXV0bztcclxuICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDIxMHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5rYmFydGljbGVzIHtcclxuICAgIC5saXN0LWdyb3VwIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcclxuICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ua2Jkb3dubG9hZHMge1xyXG4gICAgJi1wYW5lbHMge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNhcmQtYmcpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXBhbmVsLWJveC1zaGFkb3cpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWNhcmQtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB9XHJcbiAgICAmLXBhbmVsIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICBoNiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICB3aWR0aDogNTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuIiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gTG9naW4gLSBHZW5lcmFsXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5sb2dpbiB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogdmFyKC0tbG9naW4td2lkdGgpO1xyXG4gICAgLmxvZ28ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tbG9naW4tbG9nby1oZWlnaHQpO1xyXG4gICAgICAgID4gaW1nIHtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWljb24ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgICYtaGVhZGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbG9naW4taGVhZGVyLW1hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWxvZ2luLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWxvZ2luLXRpdGxlLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWxvZ2luLXRpdGxlLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbG9naW4tdGl0bGUtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgIH1cclxuICAgICYtZGVzYyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAtOHB4IDAgMjRweCAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1sb2dpbi1kZXNjLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWxvZ2luLWRlc2MtZm9udC1zaXplKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tbG9naW4tZGVzYy1mb250LXdlaWdodCk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJi1ib2R5IHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1sb2dpbi1wYWRkaW5nKTtcclxuICAgICAgICAmLmludml0ZXtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tbG9naW4taW52aXRlLXBhZGRpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY2FwdGNoYWltYWdle1xyXG4gICAgICAgICAgICAmLmlucHV0LWdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgLmlucHV0LWdyb3VwLWFkZG9ue1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgI2lucHV0Q2FwdGNoYXtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnJlZ2lzdGVyIHtcclxuICAgICAgICAgICAubG9naW4tc29jaWFsIHtcclxuICAgICAgICAgICAgICAgIC5zb2NpYWwtc2lnbmluLWJ0bnMge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICAmLmJ0bi1zb2NpYWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDQ3JTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMyU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYnRuLXNvY2lhbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wYXNzd29yZC1jb250ZW50LWdyb3VwIHtcclxuICAgICAgICAgICAgLnByb2dyZXNzIHtcclxuICAgICAgICAgICAgICAgICsgLnBhc3N3b3JkLWNvbnRlbnQtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY2hlY2tib3gtc3R5bGVkIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1jaGVja2JveC1zcGFjaW5nKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtd3JhcHBlcntcclxuICAgICAgICBib3JkZXI6IHZhcigtLWxvZ2luLWJvcmRlcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbG9naW4tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbG9naW4tYmcpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWxvZ2luLWJveC1zaGFkb3cpO1xyXG4gICAgfVxyXG4gICAgJi1mb290ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpIDAgdmFyKC0tdWktYmxvY2stcGFkZGluZy14cykgMDtcclxuXHQgICAgYmFja2dyb3VuZDogdmFyKC0tbG9naW4tZm9vdGVyLWJnKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgIHZhcigtLWxvZ2luLWJvcmRlci1yYWRpdXMpIHZhcigtLWxvZ2luLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgfVxyXG4gICAgJi1zb2NpYWwge1xyXG4gICAgICAgIG1hcmdpbjogY2FsYygtMSAqIHZhcigtLXNwYWNpbmctMXgpKSAwIGNhbGMoMiAqIHZhcigtLXNwYWNpbmctMXgpKTtcclxuICAgIH1cclxuICAgICYtZGl2aWRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IGNhbGMoMiAqIHZhcigtLXNwYWNpbmctMXgpKSAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICBzcGFuOmZpcnN0LWNoaWxkLFxyXG4gICAgICAgIHNwYW46bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1mb3JtIHtcclxuICAgICAgICArIC5sb2dpbi1kaXZpZGVyIHtcclxuICAgICAgICAgICAgKyAubG9naW4tc29jaWFsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgLnNvY2lhbC1zaWduaW4tYnRucyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY2FwdGNoYSB7XHJcbiAgICAgICAgOmhhcyhkaXYpe1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWxhbmd1YWdlIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfSAgXHJcbiAgICAmLWZvb3RlciBhLFxyXG4gICAgJi1sYW5ndWFnZSBhIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbG9naW4tbGluay1jb2xvcik7XHJcbiAgICB9IFxyXG4gICAgLmxvZ2luLWZvcm0ge1xyXG4gICAgICAgID4gLmZvcm0tZ3JvdXAge1xyXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxvZ2luRm9ybXtcclxuICAgICAgICBbYWxpZ249XCJjZW50ZXJcIl17XHJcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl17XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1lc3NhZ2Uge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG4gICAgLnNvY2lhbC1zaWduaW4tYnRucyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygyICogdmFyKC0tc3BhY2luZy0xeCkpO1xyXG4gICAgfVxyXG59XHJcbi5sb2dpbi1sZyB7XHJcbiAgICBtYXgtd2lkdGg6IHZhcigtLWxvZ2luLWxnLXdpZHRoKTtcclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKSB7XHJcbiAgICAubG9naW4ge1xyXG4gICAgICAgICYtYm9keSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLWxvZ2luLW1vYi1wYWRkaW5nKTtcclxuICAgICAgICAgICAgJi5pbnZpdGV7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1sb2dpbi1pbnZpdGUtbW9iLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBMb2dpbiAtIFBhZ2VcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhZ2UtbG9naW4ge1xyXG4gICAgLm1haW4tYm9keTpub3QoLm1haW4tYm9keS1oYXMtc2lkZWJhcik6bm90KC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uKTpub3QoLm1haW4tYm9keS1oYXMtYm90dG9tLWlsbHVzdHJhdGlvbiksXHJcbiAgICAubWFpbi1ib2R5Om5vdCgubWFpbi1ib2R5LWhhcy1zaWRlYmFyKSAuY29udGFpbmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5zb2NpYWwtc2lnbmluLWJ0bnMge1xyXG4gICAgICAgIC5idG4tc29jaWFsIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvcm0tZ3JvdXB7XHJcbiAgICAgICAgLmNoZWNrYm94LXN0eWxlZHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYWdlLWxvZ2luLXByaW1hcnkge1xyXG4gICAgLm1haW4tYm9keXtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKSFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLnBhZ2UtbG9naW4tc2Vjb25kYXJ5IHtcclxuICAgIC5tYWluLWJvZHl7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKSFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Mb2dpbiBQYWdlIC0gU2lkZWJhclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFnZS1sb2dpbiB7XHJcbiAgICAubWFpbi1ib2R5LXNpZGViYXIge1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tbG9naW4tc2lkZWJhci1ib3gtc2hhZG93KTtcclxuICAgICAgICAuc2lkZWJhci1sb2dvIC5sb2dvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tbG9naW4tbG9nby1oZWlnaHQpO1xyXG4gICAgICAgICAgICA+IGltZyB7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlOztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2lkZWJhci1uZXdzIHtcclxuICAgICAgICAgICAgJi1kZXNjLFxyXG4gICAgICAgICAgICAmLWRlc2MgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWxvZ2luLXNpZGViYXItZGVzYy1mb250LXNpemUpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWxvZ2luLXNpZGViYXItZGVzYy1mb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbG9naW4tc2lkZWJhci1kZXNjLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICAgIC5zd2lwZXItd3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tbWFpbi1ib2R5LXNpZGViYXItcGFkZGluZy1oKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLW1haW4tYm9keS1zaWRlYmFyLXBhZGRpbmctaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICAgICAgICAgICAgICAmLWJ1bGxldCB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubWFpbi1ib2R5LWNvbnRlbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4tYm9keS1zaWRlYmFyLWNvbnRlbnQtYmcpO1xyXG4gICAgICAgIC5sb2dpbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIExvZ2luIFBhZ2UgU2llYmFyIC0gU3R5bGVzICovXHJcblxyXG4ubWFpbi1ib2R5LXNpZGViYXItcHJpbWFyeSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnKTtcclxuICAgIC5zaWRlYmFyLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10aXRsZS1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAuc2lkZWJhci1uZXdzIHtcclxuICAgICAgICAmLWRhdGUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1kZXNjLFxyXG4gICAgICAgICYtZGVzYyBwIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stdGV4dC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN3aXBlci1jb250YWluZXIge1xyXG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgICAgICAgICAgICYtYnVsbGV0IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1iZyk7XHJcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWRvdC1uYXYtaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2stZG90LW5hdi1hY3RpdmUtYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5tYWluLWJvZHktc2lkZWJhci1zZWNvbmRhcnkge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWJnKTtcclxuICAgIC5zaWRlYmFyLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTtcclxuICAgIH1cclxuICAgIC5zaWRlYmFyLW5ld3Mge1xyXG4gICAgICAgICYtZGF0ZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2stdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1kZXNjLFxyXG4gICAgICAgICYtZGVzYyBwIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcclxuICAgICAgICAgICAgJi1idWxsZXQge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRvdC1uYXYtYmcpO1xyXG4gICAgICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRvdC1uYXYtaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1kb3QtbmF2LWFjdGl2ZS1iZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhZ2UtcGFzc3dvcmQtcmVzZXQtY29udGFpbmVyIHtcclxuICAgIC5tYWluLWJvZHktaGFzLXNpZGViYXIge1xyXG4gICAgICAgIC5tYWluLWJvZHktY29udGVudCB7XHJcbiAgICAgICAgICAgIC5sb2dpbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sb2dpbkZvcm17XHJcbiAgICAgICAgLmZvcm0tZ3JvdXB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAgKHhsKSB7XHJcbiAgICAucGFnZS1sb2dpbi5yZWdpc3Rlci1wYWdlIHtcclxuICAgICAgICAubWFpbi1ib2R5LWNvbnRlbnQge1xyXG4gICAgICAgICAgICAubG9naW4taGVhZGVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLnBhZ2UtbG9naW46bm90KC5yZWdpc3Rlci1wYWdlKSB7XHJcbiAgICAgICAgLm1haW4tYm9keTpub3QoLm1haW4tYm9keS1oYXMtYm90dG9tLWlsbHVzdHJhdGlvbik6bm90KC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9uKXtcclxuICAgICAgICAgICAgLm1haW4tYm9keS1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIC5sb2dpbi1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChsZykge1xyXG4gICAgLnBhZ2UtbG9naW4ucmVnaXN0ZXItcGFnZSB7XHJcbiAgICAgICAgLm1haW4tYm9keS1oYXMtc2lkZWJhciB7XHJcbiAgICAgICAgICAgIC5tYWluLWJvZHktc2lkZWJhciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tYWluLWJvZHktY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgLnBhZ2UtbG9naW46bm90KC5yZWdpc3Rlci1wYWdlKSB7XHJcbiAgICAgICAgLm1haW4tYm9keS1oYXMtc2lkZWJhciB7XHJcbiAgICAgICAgICAgIC5tYWluLWJvZHktc2lkZWJhciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tYWluLWJvZHktY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIC5wYWdlLWNsaWVudHJlZ2lzdGVye1xyXG4gICAgICAgIC5zb2NpYWwtc2lnbmluLWJ0bnN7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcclxuICAgIC5wYWdlLWxvZ2luIHtcclxuICAgICAgICAuc29jaWFsLXNpZ25pbi1idG5zIHtcclxuICAgICAgICAgICAgLmJ0bi1zb2NpYWwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zb2NpYWwtbWVkaWEge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgdG9wOiA2cHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4vLyBMb2dpbiBQYWdlIFNpZGViYXIgSWxsdXN0cmF0aW9uXHJcbi5wYWdlLWxvZ2lue1xyXG4gICAgLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb257XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIC5tYWluLWJvZHktY29udGVudHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmcteGxnKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICAubG9naW57XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubWFpbi1ib2R5LWNvbnRlbnQsXHJcbiAgICAgICAgLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbntcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb257XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgPmRpdntcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2lkZS1pbGx1c3RyYXRpb24tYmd7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAoeGwpe1xyXG4gICAgICAgICAgICAubWFpbi1ib2R5LWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb257XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNDhweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjQ4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tZGVmYXVsdHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZ3JhZGllbnQtdik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi1wcmltYXJ5e1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeS1ncmFkaWVudC12KTtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB2YXIoLS1icmFuZC1wcmltYXJ5LWRhcmtlcikgMCUsIHRyYW5zcGFyZW50IDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgdmFyKC0tYnJhbmQtcHJpbWFyeS1ncmFkaWVudC1lbmQpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zaWRlLWlsbHVzdHJhdGlvbi1iZ3tcclxuICAgICAgICAgICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLXNlY29uZGFyeXtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXNlY29uZGFyeS1ncmFkaWVudC12KTtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB2YXIoLS1icmFuZC1zZWNvbmRhcnktZ3JhZGllbnQtc3RhcnQpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsIHZhcigtLWJyYW5kLXNlY29uZGFyeS1ncmFkaWVudC1lbmQpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zaWRlLWlsbHVzdHJhdGlvbi1iZ3tcclxuICAgICAgICAgICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYm90dG9tLXNpZGUtaWxsdXN0cmF0aW9ue1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgLnNpZGUtaWxsdXN0cmF0aW9uLWJne1xyXG4gICAgICAgICAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChsZykge1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbntcclxuICAgICAgICAgICAgICAgID5kaXZ7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0OHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMzYwZGVnLCB2YXIoLS0tZ3JheS1ncmFkaWVudC1lbmQpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLnNpZGUtaWxsdXN0cmF0aW9ue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuYm90dG9tLXNpZGUtaWxsdXN0cmF0aW9ue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi1yaWdodHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYtbGVmdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubWFpbi1ib2R5e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAubG9naW57XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbntcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbWF4LWNvbnRlbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOm5vdCgubGFnb20tZnV0dXJpc3RpYyl7XHJcbiAgICAgICAgLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbi1kZWZhdWx0e1xyXG4gICAgICAgICAgICAuc2lkZS1pbGx1c3RyYXRpb24tYmd7XHJcbiAgICAgICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogdW5zZXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAoeGwpe1xyXG4gICAgICAgICAgICAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9uLWRlZmF1bHR7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgdmFyKC0tZ3JheS1ncmFkaWVudC1lbmQpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsIHZhcigtLWdyYXktZ3JhZGllbnQtZW5kKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmxhZ29tLWRhcmstbW9kZSB7XHJcbiAgICAucGFnZS1sb2dpbiB7XHJcbiAgICAgICAgLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb24ge1xyXG4gICAgICAgICAgICAubWFpbi1ib2R5LXNpZGViYXItaWxsdXN0cmF0aW9ue1xyXG4gICAgICAgICAgICAgICAgJi1kZWZhdWx0IHtcclxuICAgICAgICAgICAgICAgICAgICAuc2lkZS1pbGx1c3RyYXRpb24tYmcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjM7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1zZWNvbmRhcnksXHJcbiAgICAgICAgICAgICAgICAmLXByaW1hcnkge1xyXG4gICAgICAgICAgICAgICAgICAgIC5zaWRlLWlsbHVzdHJhdGlvbi1iZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNzU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vIExvZ2luIFBhZ2UgQm90dG9tIElsbHVzdHJhdGlvblxyXG4ucGFnZS1sb2dpbntcclxuICAgIC5tYWluLWJvZHktaGFzLWJvdHRvbS1pbGx1c3RyYXRpb257XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC5sb2dpbntcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKG1kKXtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDY0cHggMCA3MnB4IDA7XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxuICAgIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbntcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIyN3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5ib3R0b20taWxsdXN0cmF0aW9ue1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcclxuICAgICAgICAgICAgICAgICYtbGVmdHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLXJpZ2h0e1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1kZWZhdWx0e1xyXG4gICAgICAgIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbntcclxuICAgICAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1wcmltYXJ5e1xyXG4gICAgICAgIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbntcclxuICAgICAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgdmFyKC0tYnJhbmQtcHJpbWFyeS1ncmFkaWVudC1lbmQpIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtc2Vjb25kYXJ5e1xyXG4gICAgICAgIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbntcclxuICAgICAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgdmFyKC0tYnJhbmQtc2Vjb25kYXJ5LWdyYWRpZW50LWVuZCkgMCUsIHRyYW5zcGFyZW50IDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYWdlLWxvZ2luIHtcclxuICAgIC5tYWluLWJvZHktYm90dG9tLWlsbHVzdHJhdGlvbixcclxuICAgIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb257XHJcbiAgICAgICAgW2RhdGEtYW5pbWF0aW9uLWN1YmVde1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYW5pbWF0aW9uLWNzc10ge1xyXG4gICAgICAgICAgICAmOm5vdCguaXMtYW5pbWF0ZWQpIHtcclxuICAgICAgICAgICAgICAgIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXSxcclxuICAgICAgICAgICAgICAgIFtkYXRhLWFuaW1hdGlvbi1wYXRoXSxcclxuICAgICAgICAgICAgICAgIFtkYXRhLXNlcnZlci1hbmltYXRpb24tdG9wXXtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5pcy1wYXVzZWQge1xyXG4gICAgICAgICAgICAgICAgW2RhdGEtYW5pbWF0aW9uLWN1YmVdLFxyXG4gICAgICAgICAgICAgICAgW2RhdGEtYW5pbWF0aW9uLWNvaW5dLFxyXG4gICAgICAgICAgICAgICAgW2RhdGEtYW5pbWF0aW9uLXZlcnRpY2FsLWxvb3Atc21dLFxyXG4gICAgICAgICAgICAgICAgW2RhdGEtYW5pbWF0aW9uLXZlcnRpY2FsLWxvb3BdLFxyXG4gICAgICAgICAgICAgICAgW2RhdGEtYW5pbWF0aW9uLXVwLWRvd25dLFxyXG4gICAgICAgICAgICAgICAgW2RhdGEtYW5pbWF0aW9uLWRvd24tdXBdIHtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFtkYXRhLWJnLWVsZW1lbnQtYW5pbWF0aW9uXSxcclxuICAgICAgICAgICAgW2RhdGEtdG9wLWxlZnQtYW5pbWF0aW9uXSxcclxuICAgICAgICAgICAgW2RhdGEtdG9wLXJpZ2h0LWFuaW1hdGlvbl0sXHJcbiAgICAgICAgICAgIFtkYXRhLXNlcnZlci1hbmltYXRpb24tdG9wXSx7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaXMtYW5pbWF0ZWQge1xyXG4gICAgICAgICAgICBbZGF0YS1hbmltYXRpb24tcGF0aF17XHJcbiAgICAgICAgICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcbiAgICAgICAgICAgICAgICAmW2RhdGEtYW5pbWF0aW9uLXBhdGgtMV17XHJcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHBhdGhBbmltYXRpb24xLWJvdHRvbS1sb2dpbjtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMS4wOHM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgW2RhdGEtYmctZWxlbWVudC1hbmltYXRpb25de1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNlY3Rpb25CYWNrZ3JvdW5kRmFkZVRvcDAtYm90dG9tLWxvZ2luO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcbiAgICAgICAgICAgICAgICAmW2RhdGEtYW5pbWF0aW9uLXR5cGUtMV17XHJcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNlY3Rpb25CYWNrZ3JvdW5kRmFkZVRvcDEtYm90dG9tLWxvZ2luO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJltkYXRhLWFuaW1hdGlvbi10eXBlLTJde1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzZWN0aW9uQmFja2dyb3VuZEZhZGVUb3AyLWJvdHRvbS1sb2dpbjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICZbZGF0YS1hbmltYXRpb24tdHlwZS0zXXtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2VjdGlvbkJhY2tncm91bmRGYWRlVG9wMy1ib3R0b20tbG9naW47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgW2RhdGEtYW5pbWF0aW9uLWN1YmVde1xyXG4gICAgICAgICAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBjdWJlTG9vcC1ib3R0b20tbG9naW47XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDIuMjBzO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxLjA4cztcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4zMnM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKXtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuOTZzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7XHJcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxLjI0cztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICZbZGF0YS1hbmltYXRpb24tY3ViZS0xXXtcclxuICAgICAgICAgICAgICAgICAgICAtLWN1YmVTdGFydDogNjBweDtcclxuICAgICAgICAgICAgICAgICAgICAtLWN1YmVHYXA6IC01MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJltkYXRhLWFuaW1hdGlvbi1jdWJlLTJde1xyXG4gICAgICAgICAgICAgICAgICAgIC0tY3ViZVN0YXJ0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC0tY3ViZUdhcDogLTcwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmW2RhdGEtYW5pbWF0aW9uLWN1YmUtM117XHJcbiAgICAgICAgICAgICAgICAgICAgLS1jdWJlU3RhcnQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgLS1jdWJlR2FwOiAtNzBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBbZGF0YS1zZXJ2ZXItYW5pbWF0aW9uXXtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTYsMCwwLDEpO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcbiAgICAgICAgICAgICAgICAmW2RhdGEtc2VydmVyLWFuaW1hdGlvbi10b3Bde1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzZXJ2ZXJBbmltYXRpb25Ub3AtYm90dG9tLWxvZ2luO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFtkYXRhLWFuaW1hdGlvbi12ZXJ0aWNhbC1sb29wXXtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBlbGVtZW50TG9vcFZlcnRpY2FsO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzLjVzO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwcztcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbkBrZXlmcmFtZXMgcGF0aEFuaW1hdGlvbjEtYm90dG9tLWxvZ2luIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4MDA7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBzZWN0aW9uQmFja2dyb3VuZEZhZGVUb3AwLWJvdHRvbS1sb2dpbiB7XHJcbiAgICAwJXtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgNDgle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAxMDAle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBzZWN0aW9uQmFja2dyb3VuZEZhZGVUb3AxLWJvdHRvbS1sb2dpbiB7XHJcbiAgICAwJXtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMTZweCwgMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgNDgle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAxMDAle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBzZWN0aW9uQmFja2dyb3VuZEZhZGVUb3AyLWJvdHRvbS1sb2dpbiB7XHJcbiAgICAwJXtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMzJweCwgMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgNDgle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAxMDAle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBzZWN0aW9uQmFja2dyb3VuZEZhZGVUb3AzLWJvdHRvbS1sb2dpbiB7XHJcbiAgICAwJXtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgNDhweCwgMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgNDgle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAxMDAle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBzZWN0aW9uQmFja2dyb3VuZEZhZGVUb3A0LWJvdHRvbS1sb2dpbiB7XHJcbiAgICAwJXtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgNTZweCwgMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgNDgle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAxMDAle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBjdWJlTG9vcC1ib3R0b20tbG9naW4ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCB2YXIoLS1jdWJlU3RhcnQpLCAwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDBcclxuICAgIH1cclxuXHJcbiAgICAxMCUsNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxXHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCB2YXIoLS1jdWJlR2FwKSwgMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwXHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBzZXJ2ZXJBbmltYXRpb25Ub3AtYm90dG9tLWxvZ2luIHtcclxuICAgIDAle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAzMnB4LCAwcHgpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICA0OCV7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDEwMCV7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDBweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5Aa2V5ZnJhbWVzIGVsZW1lbnRMb29wVmVydGljYWwge1xyXG4gICAgMCV7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcclxuICAgIH1cclxuICAgIDUwJXtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTE1cHgsIDBweCk7XHJcbiAgICB9XHJcbiAgICAxMDAle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEJvdHRvbSBJbGx1c3RyYXRpb24gJiYgU2lkZWJhciBJbGx1c3RyYXRpb24gU3R5bGVzIC0gRnV0dXJpc3RpYyBTdHlsZVxyXG5cclxuLnBhZ2UtbG9naW57XHJcbiAgICAgICAgJi5sYWdvbS1mdXR1cmlzdGlje1xyXG4gICAgICAgIC5tYWluLWJvZHktaGFzLWJvdHRvbS1pbGx1c3RyYXRpb24sXHJcbiAgICAgICAgLm1haW4tYm9keS1oYXMtc2lkZWJhci1pbGx1c3RyYXRpb257XHJcbiAgICAgICAgICAgIC5sb2dpbi13cmFwcGVye1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp2YXIoLS1sb2dpbi1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1kZWZhdWx0e1xyXG4gICAgICAgICYubGFnb20tZnV0dXJpc3RpY3tcclxuICAgICAgICAgICAgLm1haW4tYm9keS1ib3R0b20taWxsdXN0cmF0aW9ue1xyXG4gICAgICAgICAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMzYwZGVnLCB2YXIoLS1ib2R5LWJnKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5sYWdvbS1mdXR1cmlzdGlje1xyXG4gICAgICAgIC5tYWluLWJvZHktc2lkZWJhci1pbGx1c3RyYXRpb24tZGVmYXVsdHtcclxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAgICAgLnNpZGUtaWxsdXN0cmF0aW9uLnNpZGUtaWxsdXN0cmF0aW9uLWJnIHtcclxuICAgICAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBjb2xvci1idXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChsZyl7XHJcbiAgICAgICAgICAgIC5tYWluLWJvZHktaGFzLXNpZGViYXItaWxsdXN0cmF0aW9ue1xyXG4gICAgICAgICAgICAgICAgLm1haW4tYm9keS1zaWRlYmFyLWlsbHVzdHJhdGlvbntcclxuICAgICAgICAgICAgICAgICAgICA+ZGl2e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMzYwZGVnLCB2YXIoLS1ib2R5LWJnKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gTmV0d29yayBTdGF0dXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4ubmV0d29yay1zdGF0dXMge1xyXG4gICAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAmLXRvcCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2staGVhZGVyLWJnKTtcclxuICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgPiAuZC1mbGV4IHtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJvZHkge1xyXG4gICAgICAgID4gLnBhbmVsOm5vdCg6bGFzdC1vZi10eXBlKXtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMCAxcHggMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhbmVsIHtcclxuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaGVhZGluZ3tcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoeHMpIHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1ib2R5e1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgID4gcDpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtZm9vdGVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiAqICsgKiB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICArIGRpdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTF4KSAwIDAgMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnByaW9yaXR5IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb25zLXNtYWxsKTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFmXCI7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB0b3A6IDVweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXVpLWljb24tc2l6ZS1zbWFsbCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDhweCAwIDE4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxOHB4IDAgOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtYWZmZWN0aW5ne1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1tZWRpdW0ge1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgICAgICAgICAucHJpb3JpdHktdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2FybmluZy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaGlnaCB7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAgICAgICAgIC5wcmlvcml0eS10ZXh0IHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmNzg0OTtcclxuICAgICAgICAgICAgICAgIH0gIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtY3JpdGljYWwge1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgICAgICAgICAucHJpb3JpdHktdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH0gIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cdFx0Lm1lc3NhZ2Uge1xyXG5cdFx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHR9XHJcbiAgICAgICAgLmFsZXJ0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1wYWdpbmF0aW9uIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMDtcclxuICAgIH1cclxufVxyXG5cclxuLmxhZ29tLWRlZmF1bHR7XHJcbiAgICAubmV0d29yay1zdGF0dXN7XHJcbiAgICAgICAgJi10b3B7XHJcbiAgICAgICAgICAgIGxhYmVse1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ib2R5e1xyXG4gICAgICAgICAgICAucGFuZWx7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgIC5wYW5lbHtcclxuICAgICAgICAgICAgICAgICAgICAmLWZvb3RlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUHJvZHVjdCBEZXRhaWxzIC0gR2VuZXJhbFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucHJvZHVjdC1kZXRhaWxzIHtcclxuICAgIG1hcmdpbjogMCAwIHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZykgMDtcclxuICAgIC5wcm9kdWN0LWljb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICY6bm90KC5wYW5lbC1kZWZhdWx0KXtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJvZHVjdC1kZXRhaWxzLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDM2NHB4O1xyXG4gICAgICAgICYucHJvZHVjdC1pY29uLXNte1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygyICogdmFyKC0tc3BhY2luZy0xeCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmOm5vdCgucGFuZWwtZGVmYXVsdCl7XHJcbiAgICAgICAgICAgIC5wcm9kdWN0IHtcclxuICAgICAgICAgICAgICAgICYtc3RhdHVzIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJvZHVjdC1kZXRhaWxzLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtaW1hZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICY6aGFzKC5ncmFwaGljLWl0ZW0pe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDhweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZ3JhcGhpYy1pdGVtLWJne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGMzM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtbmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByb2R1Y3QtZGV0YWlscy10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByb2R1Y3QtZGV0YWlscy10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLWZvb3RlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcm9kdWN0LWRldGFpbHMtdGl0bGUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMtdmlzaWJsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFuLnByb2R1Y3QtZm9vdGVye1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxle1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcm9kdWN0LWRldGFpbHMtdGl0bGUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYucGFuZWwtZGVmYXVsdHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wcm9kdWN0IHtcclxuICAgICAgICAgICAgICAgICYtY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtbmFtZXtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4bGcpO1xyXG4gICAgICAgICAgICAgICAgICAgIC5sYWJlbHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtaW1hZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wYW5lbC1kZWZhdWx0LWJvcmRlcikhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtZm9vdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcGFuZWwtYm9yZGVyLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLXByb2dyZXNze1xyXG4gICAgICAgICAgICAgICAgICAgIC5iZy1zdWNjZXNzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtc3VjY2Vzcy1saWdodGVyKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuYmctZGFuZ2Vye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlcikgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLXByb2dyZXNzLXRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICNzaXRlamV0RWRpdEJ0bntcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9kdWN0IHtcclxuICAgICAgICAgICAgJi1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtc3RhdHVzIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgLmxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaW1hZ2UgeyAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvICBjYWxjKDMgKiB2YXIoLS1zcGFjaW5nLTF4KSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1uYW1lIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICArIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1mb290ZXIge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggIGNhbGMoMyAqIHZhcigtLXNwYWNpbmctMXgpKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9kdWN0LWluZm8ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWxnKTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzNjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICAgICAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB9XHJcbiAgICAmLXRhYi1jb250YWluZXIge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpOyAvL3BhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBib3JkZXItdG9wOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vL0hpZGluZyBCaWxsaW5nIERldGFpbHMvVXNhZ2UgYm94IG9wdGlvbiBmb3IgY1BhbmVsL1BsZXNrIHRlbXBsYXRlc1xyXG4udGFiLWNvbnRlbnR7XHJcbiAgICAmLmRldGFpbHMtYm94LWhpZGRlbntcclxuICAgICAgICAucHJvZHVjdC1kZXRhaWxze1xyXG4gICAgICAgICAgICA+IC5yb3d7XHJcbiAgICAgICAgICAgICAgICAuY29sLW1kLTZ7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5kb21haW4tdXJsLXJlbW92ZWR7XHJcbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsc3tcclxuICAgICAgICAgICAgLnByb2R1Y3QtaWNvbntcclxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWZvb3RlcntcclxuICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYucHJvZHVjdC1ncm91cC1oaWRkZW57XHJcbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsc3tcclxuICAgICAgICAgICAgLnByb2R1Y3QtaWNvbntcclxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWdyb3VwLW5hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBhbmVsLXByb2R1Y3QtZGV0YWlsc3tcclxuICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbn1cclxuLm1vZHVsZS1jbGllbnQtYXJlYSB7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgaW5wdXQuYnV0dG9ue1xyXG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1jb2xvciksIHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJnKSwgdmFyKC0tYnRuLXByaW1hcnktYWN0aXZlLWJvcmRlciksIHZhcigtLWJ0bi1kaXNhYmxlZC1jb2xvciksIHZhcigtLWJ0bi1kaXNhYmxlZC1iZyksIHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpKTtcclxuICAgIH1cclxufVxyXG5cclxuI2hvc3RpbmdSZW5ld2FsTGFiZWxTdGF0dXN7XHJcbiAgICBoNHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbn1cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9kdWN0IERldGFpbHMgLSBQcm9kdWN0IFVwZ3JhZGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnVwZ3JhZGUtY29uZmlnLW9wdGlvbiB7XHJcbiAgICA+IGgzIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgIH1cclxuICAgICYgKyAudXBncmFkZS1jb25maWctb3B0aW9uIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgIH1cclxuICAgIC5wYW5lbCB7XHJcbiAgICAgICAgaDYge1xyXG4gICAgICAgICAgICBjb2xvcjogI2FjYjBiODtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgICAgICA+IDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC51cGdyYWRlLWN1cnJlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAtOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBib3R0b206IDUwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbnMtc21hbGwpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHNwZWFrOiBub25lO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLXNtYWxsKTtcclxuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC51cGdyYWRlLW5ldyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xyXG4gICAgfVxyXG59XHJcbi51cGdyYWRlLXN1bW1hcnkge1xyXG4gICAgLnVwZ3JhZGUtY3VycmVudCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICByaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBib3R0b206IDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDhcIjtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29ucy1zbWFsbCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgc3BlYWs6IG5vbmU7XHJcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aS1pY29uLXNpemUtc21hbGwpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudXBncmFkZS1uZXcge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUHJvZHVjdCBEZXRhaWxzIC0gY1BhbmVsIFF1aWNrIFNob3J0Y3V0c1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uY3BhbmVsLWZlYXR1cmUtcm93IHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgLmJ0bi1saW5rIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbiAgICAuYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZXtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxufVxyXG5cclxuLmNwYW5lbC1hY3Rpb25zLWJ0biB7XHJcbiAgICAuYnRuICsgLmJ0biB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcclxuICAgIH1cclxufVxyXG5cclxuLnBhZ2UtY2xpZW50YXJlYXByb2R1Y3RkZXRhaWxze1xyXG4gICAgI092ZXJ2aWV3e1xyXG4gICAgICAgIC5wcm9kdWN0LWRldGFpbHN7XHJcbiAgICAgICAgICAgIC5wcm9kdWN0LWluZm97XHJcbiAgICAgICAgICAgICAgICAubGlzdC1pbmZve1xyXG4gICAgICAgICAgICAgICAgICAgIGg0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5iaWxsaW5nT3ZlcnZpZXcge1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xyXG4gICAgW2NsYXNzKj0nY29sLSddPi5yb3d7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICB9XHJcbiAgICAucm93e1xyXG4gICAgICAgICA+IGg0e1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgI2F1dG9fcmVuZXdhbF9jb25maWdfb2ZmLFxyXG4gICAgICAgICNhdXRvX3JlbmV3YWxfY29uZmlnX29ue1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4jcGxlc2tXb3JkUHJlc3N7XHJcbiAgICAjd29yZFByZXNzSW5zdGFsbFJlc3VsdFJvd3tcclxuICAgICAgICAuYWxlcnQuc3VjY2Vzc3tcclxuICAgICAgICAgICAgPiBhe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBle1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgIC5iaWxsaW5nT3ZlcnZpZXcge1xyXG4gICAgICAgIC5yb3d7XHJcbiAgICAgICAgICAgICNhdXRvX3JlbmV3YWxfY29uZmlnX29mZixcclxuICAgICAgICAgICAgI2F1dG9fcmVuZXdhbF9jb25maWdfb257XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblByb2R1Y3QgRGV0YWlscyAtIEtub2IgRGlhbHNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmNwYW5lbC11c2FnZS1zdGF0cyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmctZm9ybSk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHQucGFuZWwtYm9keSB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdGZsZXg6IDE7XHJcblx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIC5yb3cge1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIH1cclxuXHR9XHJcbiAgICAucGFuZWwtZm9vdGVyIHtcclxuICAgICAgICBwYWRkaW5nOiA0cHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgfVxyXG59XHJcbi51c2FnZS1zdGF0cyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgID4gZGl2IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAua25vYi1kaWFsIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgd2lkdGg6IDEwNHB4O1xyXG4gICAgICAgIGhlaWdodDogODBweDtcclxuICAgIH1cclxufVxyXG4udXNhZ2UtZGlhbCB7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJSFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogNjBweCFpbXBvcnRhbnQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4IWltcG9ydGFudDtcclxuICAgIG1hcmdpbi10b3A6IC04cHggIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMHB4O1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpIWltcG9ydGFudDtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKSFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCkhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg0KSFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWhvb2stb3V0cHV0IHtcclxuICAgICYubm8tZmxvYXQtYmFubmVye1xyXG4gICAgICAgIC5jYXJvdXNlbC1pdGVte1xyXG4gICAgICAgICAgICBmbG9hdDogdW5zZXQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cdC5wcm9tby1iYW5uZXItc2xpbSxcclxuXHQucHJvbW90aW9ucy1zbGlkZXJ7XHJcblx0XHRtYXJnaW46IDAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQ+IGJyIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cdCNwcm9tb3Rpb25zLXNsaWRlciB7XHJcblx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJhc2UpO1xyXG5cdFx0Ym94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuXHR9XHJcbn1cclxuIiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCBUaWNrZXQgUmVwbHkgJiYgVGFicyBTdHlsZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAucGFnZS12aWV3dGlja2V0e1xyXG4gICAgICAgICY6aGFzKC5wYW5lbC10YWJzKXtcclxuICAgICAgICAgICAgLm1haW4tZ3JpZHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IHZhcigtLW1haW4tc2lkZWJhci1zcGFjaW5nLWgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tYWluLXNpZGViYXJ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgIC5wYWdlLXZpZXd0aWNrZXR7XHJcbiAgICAgICAgJjpoYXMoLnBhbmVsLXRhYnMpe1xyXG4gICAgICAgICAgICAubWFpbi1ncmlke1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tYWluLXNpZGViYXJ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi50aWNrZXQtY3JlYXRvcntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20tdikgdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWZhZGVkKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgIC5jbGllbnQtYXZhdGFye1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jcmVhdG9yLWRldGFpbHN7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1jb250YWluZXJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1uYW1le1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1lbWFpbHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1ndWVzdHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1iYXNlKTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKHNtKSB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgID5kaXZ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIHJvdy1nYXA6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYW5lbC10aWNrZXQtcmVwbHksXHJcbi5vcGVuLXRpY2tldC1pbmZvcm1hdGlvbntcclxuICAgIC5jcmVhdG9yLWRldGFpbHMsXHJcbiAgICAuZGVwYXJ0bWVudC1kcm9wZG93bntcclxuICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICB9XHJcbn1cclxuLnBhbmVsLXRpY2tldC1yZXBseXtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWNhLXNlY3Rpb24tc20tc3BhY2luZyk7XHJcbiAgICAucGFuZWwtdGFic3tcclxuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcclxuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IC8qIEZpcmVmb3ggKi9cclxuICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwKyAqL1xyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYXtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRhYntcclxuICAgICAgICAmLXJlY2lwaWVudHN7XHJcbiAgICAgICAgICAgIC50YWItZGV0YWlsc3tcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgcm93LWdhcDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jYy1hY3Rpb25ze1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpeyBcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgIC5idG4uYnRuLXByaW1hcnl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cC1wcmVpY29ue1xyXG4gICAgICAgICAgICAgICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI5NnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20peyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpoYXMoLmFsZXJ0LWRhbmdlcil7XHJcbiAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAtcHJlaWNvbntcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcikgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWF0dGFjaGVtZW50c3tcclxuICAgICAgICAgICAgLnRhYi1kZXRhaWxze1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYXR0YWNobWVudC1uYW1le1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYWRkaXRpb25hbC1pbmZvcm1hdGlvbntcclxuICAgICAgICAgICAgLnRhYi1kZXRhaWxze1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaW5mb3JtYXRpb257XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtdmFsdWV7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIHZhcigtLXNwYWNpbmctMngpIHZhcigtLXNwYWNpbmctMXgpIDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1mYWRlZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXNlbnNpdGl2ZXtcclxuICAgICAgICAgICAgI3VwZGF0ZURhdGF7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogNDJweDtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5pbnB1dC1ncm91cC1wcmVpY29ue1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgLmlucHV0LWdyb3VwLXByZXBlbmR7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMCAxMHB4IDEwcHg7XHJcbiAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgaW5wdXR7XHJcbiAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlcntcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtaG92ZXItcGxhY2Vob2xkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aGFzKGlucHV0OmZvY3VzLGlucHV0OmFjdGl2ZSl7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWNvbG9yKTtcclxuICAgICAgICAgICAgLmlucHV0LWdyb3VwLXByZXBlbmR7XHJcbiAgICAgICAgICAgICAgICBpbnB1dHtcclxuICAgICAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLXBsYWNlaG9sZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmlucHV0LWdyb3VwLWljb25ze1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcihib3JkZXItcmFkaXVzLXhzKTtcclxuICAgICAgICBtYXgtd2lkdGg6IG1heC1jb250ZW50O1xyXG4gICAgICAgIC5pbnB1dC1ncm91cC1wcmVwZW5ke1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmlucHV0LWdyb3VwLWFwcGVuZHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1mYWRlZCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlucHV0LWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICBidXR0b257XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeS1saWdodGVyKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1kYW5nZXJ7XHJcbiAgICAgICAgICAgICAgICBidXR0b257XHJcbiAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXRlLWRhbmdlci10ZXh0KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbnB1dC1ncm91cC1hcHBlbmQsXHJcbiAgICAgICAgLmlucHV0LWdyb3VwLXByZXBlbmR7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgIGEsYnV0dG9ue1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IG1heC1jb250ZW50O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1mYWRlZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRhYi1jb250YWluZXJ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIHJvdy1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgIH1cclxuICAgIC50YWItYWN0aW9uc3tcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGNvbHVtbi1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XHJcbiAgICAgICAgcGFkZGluZzogMCB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgIH1cclxuICAgIC50YWItZGVzY3tcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICBzdHJvbmd7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFiLW5vLWRhdGF7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQXR0YWNoZW1lbnRzIFN0eWxlc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uYXR0YWNoZW1lbnRze1xyXG4gICAgJi1jb250YWluZXJ7XHJcbiAgICAgICAgLmFkZHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sdW1uLWdhcDogMTBweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmcpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTFweCB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtYm9keS1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGV7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi11cGxvYWRze1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJnKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICBpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5idG57XHJcbiAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maWxlLWlucHV0e1xyXG4gICAgICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhzKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1mYWRlZCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcclxuICAgICAgICAgICAgJi10ZXh0e1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtcmVtb3Zle1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlcik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0LXhzKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXhzKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi50aWNrZXQtYXR0YWNobWVudHMtbWVzc2FnZSB7XHJcbiAgICBtYXJnaW46IHZhcigtLXNwYWNpbmctMXgpIDAgMCAwO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG59XHJcbi5vcGVuLXRpY2tldC1mb3JtLFxyXG4uc2VjdGlvbi1mb3JtLFxyXG4ucGFuZWwtdGlja2V0LXJlcGx5e1xyXG4gICAgLnRpY2tldC1hdHRhY2htZW50cy1tZXNzYWdle1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBjb2x1bW4tZ2FwOiA2cHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgaXtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgfVxyXG59XHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgVGlja2V0IEluZm9ybWF0aW9uIFN0eWxlXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLnBhbmVsID4gLmxpc3QtZ3JvdXAgLnRpY2tldC1kZXRhaWxzLWNoaWxkcmVuIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgIGJyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLnRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG4ucGFuZWwge1xyXG4gICAgJi5wYW5lbC1zaWRlYmFyIHtcclxuICAgICAgICAubGlzdC1ncm91cCB7XHJcbiAgICAgICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucGFuZWwtdGlja2V0LWluZm9ybWF0aW9ue1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLmxpc3QtZ3JvdXB7XHJcbiAgICAgICAgJi1pdGVtOm5vdCgudGlja2V0LWRldGFpbHMtY2hpbGRyZW4pe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICBpOm5vdCgubHMtY2FyZXQpe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmZsZXgtY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDRweDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLW1vYmlsZXtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCl7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubGlzdC1ncm91cC1pdGVte1xyXG4gICAgICAgICAgICAubGlzdC1ncm91cC1pdGVtLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIC50aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aGFzKC5scy1jYXJldCl7XHJcbiAgICAgICAgICAgICAgICAubHMtY2FyZXR7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5jb2xsYXBzZWQ6aGFzKC5scy1jYXJldCl7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgLmxzLWNhcmV0e1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpe1xyXG4gICAgICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbS1jb250ZW50LFxyXG4gICAgICAgICAgICAgICAgLnRpY2tldC1yZXF1ZXN0b3ItbmFtZXtcclxuICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYW5lbCB7XHJcbiAgICAmLnBhbmVsLXNpZGViYXIge1xyXG4gICAgICAgIC5saXN0LWdyb3VwIHtcclxuICAgICAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuVmlldyBUaWNrZXQgUGFnZSAtIFJlcGx5XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLnRpY2tldC1yZXBseSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWZhZGVkKTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpOyAgIFxyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTMpO1xyXG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzLWxnKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiA0cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1saWdodGVyLTMpO1xyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJi10b3Age1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2staGVhZGVyLWJnKTtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UtdikgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAuY2xpZW50LWF2YXRhciArIC51c2VyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAudXNlciB7XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAmLWluZm8ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnR5cGUtbmFtZXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcihsaW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1sYWJlbHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOjJweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGVuZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubmFtZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgJiA+IGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZGF0ZSB7IFxyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtbWVzc2FnZSB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgICAgICYgPiAqOmxhc3QtY2hpbGQ6bm90KHByZSl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWF0dGFjaG1lbnRzIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCB2YXIoLS1zcGFjaW5nLTN4KSAxOHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1oZWFkZXItYmcpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgc3Ryb25ne1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAxMnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDEycHggMCAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dmFyKC0tcGFuZWwtYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLXZpc2libGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYXR0YWNobWVudC1jb250YWluZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHRlci0zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hdHRhY2htZW50LWV4dGVuc2lvbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hdHRhY2htZW50LW5hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ibG9jazogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuYXR0YWNobWVudC1jb250YWluZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWZhZGVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmF0dGFjaG1lbnQtZXh0ZW5zaW9uLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYXR0YWNobWVudC1uYW1le1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYXR0YWNobWVudC1uYW1le1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxuICAgICYuc3RhZmYge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLWJnKTtcclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50aWNrZXQtcmVwbHktdG9wIHtcclxuICAgICAgICAgICAgLnN0YWZmLXJlcGx5IHtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpY2tldC1yZXBseS1hdmF0YXIge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWluZm8tbGlnaHRlci0yKTtcclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5yYXRpbmcsXHJcbiAgICAucmF0aW5nLWRvbmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICAgIGdhcDogM3B4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICBzcGFuLnN0YXIge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNiBQcm9cIjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgfnNwYW4uc3RhcjpiZWZvcmUsXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0Y5QkI1NztcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZjAwNSc7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucmF0aW5nLWRvbmUge1xyXG4gICAgICAgIC5yYXRlZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgc3Bhbi5zdGFye1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0Y5QkI1NztcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiN0aWNrZXRSZXBseUJveCxcclxuI2N1c3RvbUZpZWxkc0JveCxcclxuI3NwLWFkZC1jb21tZW50IHtcclxuICAgICYuY29sbGFwc2Uge1xyXG4gICAgICAgICYuc2hvdyB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmNvbGxhcHNpbmcge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgIH1cclxufVxyXG4jdGlja2V0UmVwbHksXHJcbiNjdXN0b21GaWVsZHN7XHJcbiAgICAuY29sbGFwc2UtaWNvbntcclxuICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS1pY29ucyk7XHJcbiAgICB9XHJcbn1cclxuI2N1c3RvbUZpZWxkc0JveHtcclxuICAgIC5mb3JtLWN1c3RvbWZpZWxkc3tcclxuICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZm9ybS1ncm91cHtcclxuICAgICAgICAgICAgLnJhZGlvLFxyXG4gICAgICAgICAgICAuY2hlY2tib3h7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgKyAuaGVscC1ibG9ja3tcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGlja2V0LWF0dGFjaG1lbnRzLW1lc3NhZ2V7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JheSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmhlbHAtYmxvY2t7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBzZWxlY3Quc2VsZWN0TXVsdGlwbGV7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuSW50ZWdyYXRpb24gLSBQcmVtaXVtIFN1cHBvcnQgVGlja2V0cyBcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLXN1cHBvcnQge1xyXG4gICAgLnN1cHBvcnQtdGl0bGUge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAmID4gaSwgJiA+IHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3VwcG9ydC1kZXNjIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJi5wYW5lbC1kZXBhcnRtZW50LWJveHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgPiAucGFuZWwtYm9keXtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5wYW5lbC1mb290ZXJ7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpIHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5UaWNrZXQgU3RlcCBUd28gLSBTdWdnZXN0ZWQgIEtCIGFydGljbGVzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbiNhdXRvQW5zd2VyU3VnZ2VzdGlvbnN7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblRpY2tldHMgVGFibGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnRhYmxlIHtcclxuICAgIHRib2R5IHtcclxuICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuT3BlbiBUaWNrZXQgU3RlcFR3byBQYW5lbCBTdHlsZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4ub3Blbi10aWNrZXR7XHJcbiAgICAmLWluZm9ybWF0aW9ue1xyXG4gICAgICAgIC5wYW5lbC1ib2R5e1xyXG4gICAgICAgICAgICAuZGVwYXJ0bWVudC1kcm9wZG93bntcclxuICAgICAgICAgICAgICAgIC5kcm9wZG93bi10b2dnbGUtY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICA+IHB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuc2hvd3tcclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6dmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLWNhcmV0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LWljb25zLWhvdmVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvLyByZWxhdGVkIGRyb3Bkb3duIHN0eWxlc1xyXG4gICAgICAgICAgICAucmVsYXRlZC1wcm9kdWN0LWRyb3Bkb3due1xyXG4gICAgICAgICAgICAgICAgLnJlbGF0ZWQtaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZHJvcGRvd257XHJcbiAgICAgICAgICAgICAgICAgICAgJi1jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYtbGlzdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi1pdGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlbGF0ZWQtaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi1uYW1le1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5yZWxhdGVkLWl0ZW0tZ3JvdXAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlbGF0ZWQtaXRlbS1uYW1lOm5vdCg+c3Bhbil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50aWNrZXQtcHJpb3JpdHktZHJvcGRvd257XHJcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xle1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1saXN0LWl0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpY2tldC1wcmlvcml0eXtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWZvcm17XHJcbiAgICAgICAgLnRpY2tldC1jb250ZW50e1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICByb3ctZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICAubmF2LXRhYnN7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGFiLW1lc3NhZ2V7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLmFsZXJ0e1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRhYi1tZXNzYWdlLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50YWItc2Vuc2l0aXZle1xyXG4gICAgICAgICAgICAuYWxlcnR7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMTBweDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRleHRhcmVhe1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzMjhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhbmVsLWN1c3RvbWZpZWxke1xyXG4gICAgLmhlbHAtYmxvY2t7XHJcbiAgICAgICAgaXtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNlY3Rpb24tY3VzdG9tLWZpZWxkc3tcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAmOmhhcyguZm9ybS1ncm91cCl7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAucGFuZWwtY3VzdG9tZmllbGR7XHJcbiAgICAgICAgLmhlbHAtYmxvY2t7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6MDtcclxuICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5wYW5lbC1mb3JtLWFjdGlvbiAge1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1sZyk7XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuS0IgU3VnZ2VzdGlvbiBGb3JtXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuLmtiLXN1Z2dlc3Rpb24tZm9ybXtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXBhbmVsLXNpZGViYXItbGlzdC1ncm91cC1iZyk7XHJcbiAgICBib3JkZXI6IHZhcigtLXBhbmVsLXNpZGViYXItbGlzdC1ncm91cC1ib3JkZXIpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tcGFuZWwtc2lkZWJhci1saXN0LWdyb3VwLWJveC1zaGFkb3cpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcGFuZWwtc2lkZWJhci1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xyXG4gICAgLmljb24sLmRlc2N7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLmljb257XHJcbiAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWFyY2gtZmllbGR7XHJcbiAgICAgICAgLmZvcm0tY29udHJvbHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDEycHggKyAyICogdmFyKC0tc3BhY2luZy0yeCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWljb257XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRyb3Bkb3duLWxpc3R7XHJcbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbXtcclxuICAgICAgICAgICAgLmtiLXN1Z2dlc3Rpb24tZHJvcGRvd257XHJcbiAgICAgICAgICAgICAgICAmLWhlYWRpbmd7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBwe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJcclxuLyoqXHJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogQHNlY3Rpb24gVHdvIEZhY3RvciBBdXRoZW50aWNhdGlvblxyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqL1xyXG5cclxuIGRpdiN0d29mYWFjdGl2YXRpb24ge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XHJcbiAgICB3aWR0aDogODUlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbn1cclxuXHJcbmRpdiN0d29mYWFjdGl2YXRpb24gLmVycm9yYm94IHtcclxuICAgIG1hcmdpbjogMCAwIDIwcHggMDtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRjRGNEY7XHJcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIC1vLWJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxufVxyXG5cclxuZGl2I3R3b2ZhYWN0aXZhdGlvbiBwIHtcclxuICAgIG1hcmdpbjogMTVweCAwO1xyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gUGF5bWVudCBHYXRld2F5cyBDaGFyZ2VcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuI21nLWNoYXJnZS10YWJsZXtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZyk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpO1xyXG4gICAgLnN1Yi1oZWFkaW5nIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWNhLXNlY3Rpb24tdGl0bGUtZm9udC1zaXplKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tY2Etc2VjdGlvbi10aXRsZS1mb250LXdlaWdodCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWNhLXNlY3Rpb24tdGl0bGUtbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWhlYWRpbmdzLW1hcmdpbi1ib3R0b20pO1xyXG4gICAgfVxyXG4gICAgLnRhYmxleyAgICAgICBcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbC1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1wYW5lbC1ib3gtc2hhZG93KTtcclxuICAgICAgICBib3JkZXI6IHZhcigtLXBhbmVsLWJvcmRlcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcGFuZWwtYmcpO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB0aGVhZHtcclxuICAgICAgICAgICAgdHJ7XHJcbiAgICAgICAgICAgICAgICB0aHtcclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgMCAwIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSkgMCAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0Ym9keXtcclxuICAgICAgICAgICAgdHJ7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgICAgICAgICAgdGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiBTTVMgQ2VudGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wYWdlLXVzZXItc2VjdXJpdHkge1xyXG4gICAgLm1vZGFsIHtcclxuICAgICAgICAmLnR3b2ZhLXNldHVwIHtcclxuICAgICAgICAgICAgdGFibGUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRyIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZCArIHRkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICArIHBbYWxpZ249XCJjZW50ZXJcIl0ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgI2NvdW50cnlfY29kZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ1cHghaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktcGFkZGluZy1iYXNlLXYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5PcmRlciAtIE1haW4gR3JpZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ubWFpbi1jb250ZW50IHtcclxuICAgICNjcmVkaXRDYXJkSW5wdXRGaWVsZHMge1xyXG4gICAgICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICAgICAgLmxpc3QtaW5mby5saXN0LWluZm8tdiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgXHJcbiAgICB9XHJcbiAgICAuc3RyaXBlIHtcclxuICAgICAgICAjY3JlZGl0Q2FyZElucHV0RmllbGRzIHtcclxuICAgICAgICAgICAgPiAubmF2LXRhYnMgKyAucGFuZWwtYm9keXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgI25ld0NhcmRJbmZve1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgI3N0cmlwZUVsZW1lbnRze1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wYW5lbC1jb2xsYXBzZS5pbntcclxuICAgICAgICAgICAgI2NyZWRpdENhcmRJbnB1dEZpZWxkc3tcclxuICAgICAgICAgICAgICAgICNzdHJpcGVFbGVtZW50c3tcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBSZXNlbGxlckNlbnRlciBmaXggYWxlcnQgLy9cclxuXHJcbi5tYWluLWNvbnRlbnQge1xyXG4gICAgLnRleHQtZGl2aWRlciB7XHJcbiAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktYmxvY2stYmctZm9ybSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk9yZGVyIC0gUHJvbW90aW9uIENvZGUgQm94XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wcm9tby1jb2RlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgJi1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcclxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYm9yZGVyLXByaW1hcnkge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuT3JkZXIgLSBQYXltZW50IE1ldGhvZFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtcGF5bWVudC1tZXRob2QsXHJcbi5wYW5lbC1jb2xsYXBzZS1jdXN0b20ge1xyXG4gICAgLnBhbmVsLWJvZHkge1xyXG4gICAgICAgIC5yYWRpbyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDZweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnJhZGlvLXN0eWxlZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgJi5jaGVja2VkIHtcclxuICAgICAgICAgICAgICAgICtzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICArLnBhbmVsLWJvZHkge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbltkYXRhLWNvbGxhcHNlXSB7XHJcbiAgICAucHJvZ3Jlc3Mge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU4ZWM7XHJcbiAgICB9XHJcbiAgICAucGFuZWwtYm9keS5pcy1hY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY3Zjg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnRuLXByaW1hcnktYmcpO1xyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCl7XHJcbiAgICAuY2F0ZWdvcmllcy1jb2xsYXBzZWQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWd1dHRlci1iYXNlKTtcclxuICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI4OHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY2F0ZWdvcmllcy1zaWRlYmFyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgIC5kcm9wZG93bntcclxuICAgICAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICAgICAgaSxcclxuICAgICAgICAgICAgICAgICAgICAubHN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1idG4tYmFzZS1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYnRuLWJhc2UtaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcclxuICAgIC5yb3cuYWRkb24tcHJvZHVjdHN7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAucHJvbW8tYm94LWNvbnRlbnR7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgLnByb21vLWJveC1pY29ue1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICsucHJvbW8tYm94LWNvbnRlbnR7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNhdGVnb3JpZXMtY29sbGFwc2VkIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAuY2F0ZWdvcmllcy1zaWRlYmFyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZvcm0tY29udHJvbCxcclxuICAgICAgICAuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAgICAgICAgICAgLmJ0bixcclxuICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCVcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5PcmRlciAtIEJvdHRvbSBBY3Rpb25zXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbjpyb290IHtcclxuICAgIC0tYm90dG9tLWFjdGlvbi1zdGlja3ktaGVpZ2h0OiBjYWxjKHZhcigtLXVpLWhlaWdodC1sZykgKyAyICogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkpO1xyXG59XHJcbi5ib3R0b20tYWN0aW9uLXN0aWNreSB7XHJcbiAgICB3aWR0aDogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLXNoYWRvdyk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgbWFyZ2luLXRvcDogdmFyKC0tY2Etc2VjdGlvbi1zcGFjaW5nKTtcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7ICBcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbiAgICAmOm5vdCguaXMtZml4ZWQpIHtcclxuICAgICAgICAmID4gLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDsgICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmlzLWZpeGVkIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogdmFyKC0temluZGV4LW5hdmJhci1maXhlZCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stb3ZlcmxheS1iZyk7XHJcbiAgICAgICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stb3ZlcmxheS1zaGFkb3cpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tYm90dG9tLWFjdGlvbi1zdGlja3ktaGVpZ2h0KTtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSAwO1xyXG4gICAgfVxyXG4gICAgJiA+IC5jb250YWluZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAuc3RpY2t5LWNvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0aWNreS1kcm9wZG93biB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdGlja3ktYWN0aW9ucyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bi1saW5rOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAuYnRuLmJ0bi1saW5rIHtcclxuICAgICAgICAgICAgICAgIGksXHJcbiAgICAgICAgICAgICAgICAubHMge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tYnRuLWJhc2UtaWNvbi1zcGFjaW5nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3R0b20tYWN0aW9uLWFuY2hvcntcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZyk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZykqLTEpO1xyXG4gICAgKyAuYm90dG9tLWFjdGlvbi1zdGlja3l7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpKjIpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhZ2UgVmlldyBDYXJ0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5zb2NpYWwtc2lnbmluLWJ0bnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogdmFyKC0tc3BhY2luZy0yeCkpO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gICAgLmJ0bi1zb2NpYWwge1xyXG4gICAgICAgIG1heC13aWR0aDogMzUwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5QYW5lbCBDYXJ0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wYW5lbC1jYXJ0IHtcclxuICAgIC8qIE1haW4gVGFibGUgRWxlbWVudHMgKi9cclxuICAgIC5jYXJ0LWhlYWRpbmcge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UtdikgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICBjb2x1bW4tZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGFibGUtdGgtZm9udC1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS10YWJsZS10aC1mb250LXNpemUpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS10YWJsZS10aC1mb250LXdlaWdodCk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgIH1cclxuICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gICAgLmNhcnQtaXRlbSB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlLXYpIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBjb2x1bW4tZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpoYXMoLmNhcnQtaXRlbS1jb25maWcpIHtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucmVuZXdhbCxcclxuICAgICAgICAuc2V0dXAtZmVlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHRleHQtd3JhcDogbm93cmFwO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucmVuZXdhbCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLWZvb3RlcntcclxuICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICBnYXA6IHZhcigtLWJ0bi1zbS1pY29uLXNwYWNpbmcpO1xyXG4gICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXVpLWljb24tY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgQ2FydCAtIENvbHVtbnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLWNhcnQge1xyXG4gICAgLnByb2QtZGVzYyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgJiA+IC5jb250ZW50e1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvZC1hY3Rpb25zIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhbmVsIENhcnQgLSBDb2x1bW4gSXRlbXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLWNhcnQge1xyXG4gICAgLmNhcnQtaXRlbS10aXRsZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgLy8gbWluLXdpZHRoOiAyMjBweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGRpdntcclxuICAgICAgICAgICAgJjpoYXMoPi5jYXJ0LWl0ZW0tdGl0bGUtbWFpbil7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLW1haW4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg3KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg3KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg3KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1zbWFsbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpoYXMoLmdyYXBoaWMtaXRlbSl7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC5jYXJ0LWl0ZW0tdGl0bGUtbWFpbixcclxuICAgICAgICAgICAgLmNhcnQtaXRlbS10aXRsZS1zbWFsbHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDMycHggKyB2YXIoLS1zcGFjaW5nLTJ4KSkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNhcnQtaXRlbS1xdHkge1xyXG4gICAgICAgIHdpZHRoOiA2MnB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogNjJweDtcclxuICAgIH1cclxuICAgIC5jYXJ0LWl0ZW0tcHJpY2luZyB7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtaGVhZGluZy1jb2xvcik7XHJcbiAgICB9XHJcbiAgICAuY2FydC1pdGVtLXByaWNpbmctZHJvcGRvd24ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICBzcGFuOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jYXJldCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZHJvcGRvd24tcHJpY2UgeyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucHJpY2Utc2V0dXAtZmVlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kaXNjb3VudF9jZW50ZXItYmFzZV9jYXJ0X29yZGVyX2RvbWFpbl9wcmljZSxcclxuICAgICAgICAuZGlzY291bnRfY2VudGVyLWJhc2VfY2FydF9vcmRlcl9wcm9kdWN0X3ByaWNle1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpY2Utc2F2aW5ncy1jb2xvcikhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXNhdmluZ3MtZm9udC1zaXplKSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1wcmljZS1zYXZpbmdzLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLXNhdmluZ3MtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2FydC1pdGVtLXByaWNlIHtcclxuICAgICAgICB3aWR0aDogMTQwcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1kcm9wZG93biB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFtzdHlsZSo9XCJmb250LXNpemU6IDEuMmVtOyB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcIl0ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDYpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kaXNjb3VudF9jZW50ZXItYmFzZV9jYXJ0X29yZGVyX2FkZG9uX3ByaWNlIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaWNlLXNhdmluZ3MtY29sb3IpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtc2l6ZSkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2Utc2F2aW5ncy1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1wcmljZS1zYXZpbmdzLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY2FydC1pdGVtLXF0eS1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgcGFkZGluZzogKCh2YXIoLS11aS1oZWlnaHQtYmFzZSkgLSB2YXIoLS1saW5lLWhlaWdodC1iYXNlKSkvMikgMDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzNHB4IDAgMCAxNnB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1x0XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzRweCAxNnB4IDAgMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1x0XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWdyYXktbGlnaHRlci00KTtcdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jYXJ0LWl0ZW0tYWN0aW9uc3tcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICB9XHJcbiAgICAuY2FydC1pdGVtLWNvbmZpZ3tcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1jb2xsYXBzZS1iZyk7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbS12KSAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYmFzZSk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblBhbmVsIENhcnQgLSBDb25maWcgT3B0aW9uc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5jYXJ0LWl0ZW0tY29uZmlne1xyXG4gICAgLmNvbmZpZy1vcHRpb257XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGNvbHVtbi1nYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgICAgIHBhZGRpbmc6IDJweCAwO1xyXG4gICAgICAgICYtdGl0bGV7XHJcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhzKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQteHhzKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLml0ZW0tbmFtZXtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjp2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaXRlbS12YWx1ZXtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXF0eXtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcHJpY2V7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQteHMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWFjdGlvbnN7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICA+IGJ1dHRvbntcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmhvdmVyYWJsZXtcclxuICAgICAgICAgICAgLmNvbmZpZy1vcHRpb24tcHJpY2V7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIC5jb25maWctb3B0aW9uLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtLW5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0tdmFsdWV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5jb25maWctb3B0aW9uLXByaWNle1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgQ2FydCAtIENvbHVtbnMgV2lkdGggRGVza3RvcFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgLnBhbmVsLWNhcnQge1xyXG4gICAgICAgIC5jYXJ0LWhlYWRpbmd7XHJcbiAgICAgICAgICAgIC50aXRsZS1jb2x7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDIyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5xdHktY29se1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDYycHg7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDYycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnByaWNlLWNvbHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmFjdGlvbnMtY29se1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY2FydC1pdGVtLXF0eSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MnB4O1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDYycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jYXJ0LWl0ZW0tYWN0aW9uc3tcclxuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY2FydC1pdGVtLXByaWNpbmd7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNhcnQtaXRlbS1jb25maWd7XHJcbiAgICAgICAgICAgIC5jb25maWctb3B0aW9ue1xyXG4gICAgICAgICAgICAgICAgJi1xdHl7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA2MnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1wcmljZXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNDBweDtcclxuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi1hY3Rpb25ze1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBDYXJ0IFFUWSBGaWVsZCAqL1xyXG5cclxuLmlucHV0LW51bWJlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmcpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xyXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjRzIGVhc2UsIGJveC1zaGFkb3cgMC4yNHMgZWFzZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQtZm9udC1zaXplKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbnB1dC1saW5lLWhlaWdodCk7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgICYtYWN0aW9ucyB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyMnB4O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wbHVze1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucGx1cywubWludXMge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZGVjb3JhdGlvbi1pY29ucyk7XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmhhcyhpbnB1dDpmb2N1cyl7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOnZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgLmlucHV0LW51bWJlci1hY3Rpb25ze1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6dmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyOm5vdCguZGlzYWJsZWQpe1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjp2YXIoLS1pbnB1dC1mb2N1cy1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIC5pbnB1dC1udW1iZXItYWN0aW9uc3tcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnZhcigtLWlucHV0LWZvY3VzLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5kaXNhYmxlZHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtZGlzYWJsZWQtYmcpO1xyXG4gICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmlucHV0LW51bWJlci1hY3Rpb25zIHtcclxuICAgICAgICAgICAgLnBsdXMsXHJcbiAgICAgICAgICAgIC5taW51cyB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlucHV0IHtcclxuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTF4KSAycHg7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBtYXgtd2lkdGg6IDQ0cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XHJcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOnRleHRmaWVsZDtcclxuICAgICAgICAmOmZvY3Vze1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcclxuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfSBcclxuICAgICZpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcclxuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcclxuICAgIH1cclxuICAgICYtc217XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pbnB1dC1zbS1mb250LXNpemUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbnB1dC1zbS1saW5lLWhlaWdodCk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtc20pO1xyXG4gICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6NDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuUGFuZWwgQ2FydCAtIE1vYmlsZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC5wYW5lbC1jYXJ0IHtcclxuXHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICAuY2FydC1oZWFkaW5nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNhcnQtaXRlbSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgICAgICAgICAgY29sdW1uLWdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogODAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtYWN0aW9uc3tcclxuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtcHJpY2luZ3tcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTV4KTtcclxuICAgICAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC0yMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpKTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKSAqIDIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiBidXR0b257XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1xdHl7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy01eCk7XHJcbiAgICAgICAgICAgICAgICAmOjphZnRlcntcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKC0xICogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkgKiAyKTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXF0eS1lbXB0eXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNvbmZpZy1vcHRpb24tcHJpY2V7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhbmVsLWJvZHl7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jYXJ0LWl0ZW0sXHJcbiAgICAgICAgLnBhbmVsLWZvb3RlciB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogdmFyKC0tdWktYmxvY2stYm9yZGVyKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1iYXNlKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAgIC5wYW5lbC1mb290ZXIge1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1wYW5lbC1kZWZhdWx0LWJvcmRlcik7XHJcbiAgICAgICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbk90aGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLnNwb3RsaWdodC10bGRzLWNvbnRhaW5lcntcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB9XHJcbiAgICAuc3BvdGxpZ2h0LXRsZC1jb250YWluZXIge1xyXG4gICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIG1pbi13aWR0aDogNTAlO1xyXG4gICAgICAgIC5zcG90bGlnaHQtdGxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByb21vLWJveCB7XHJcbiAgICAgICAgJi1jb250ZW50IHtcclxuICAgICAgICAgICAgJi1iZXR3ZWVuIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnByb21vLWRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgKy5idG57XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmFkZHJlc3Mge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICYtaGVhZGluZyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICB9XHJcbn1cclxuLmNyZWRpdC1iYWxhbmNlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcclxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMyk7XHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgIH1cclxuICAgIHNwYW57XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWgyKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFwcGx5LWNyZWRpdC1jb250YWluZXIgc3BhbiA+IHNwYW57XHJcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XHJcbn0iLCJcclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gU2VhcmNoIElucHV0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5kb21haW4tc2VhcmNoLWlucHV0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiB2YXIoLS1zZWFyY2gtZ3JvdXAtbWF4LXdpZHRoKTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgJi5zZWFyY2gtZ3JvdXAtY29tYmluZWR7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGcpO1xyXG4gICAgfVxyXG4gICAgLnNlYXJjaC1maWVsZCB7XHJcbiAgICAgICAgLy8gJi1pY29uIHtcclxuICAgICAgICAvLyAgICAgJixcclxuICAgICAgICAvLyAgICAgPiBpIHtcclxuICAgICAgICAvLyAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWFyY2gtZmllbGQtaWNvbi1jb2xvcik7XHJcbiAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgLy8gLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgLy8gICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcbiAgICAvLyAuc2VhcmNoLWdyb3VwLWJ0biB7XHJcbiAgICAvLyAgICAgLmJ0biB7XHJcbiAgICAvLyAgICAgICAgIG1pbi13aWR0aDogMTM0cHg7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gfVxyXG4gICAgLnRvb2x0aXAubGVmdCB7XHJcbiAgICAgICAgLnRvb2x0aXAtaW5uZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTsgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmRvbWFpbi1zZWFyY2gtYXV0aCB7ICAgIFxyXG4gICAgbWF4LXdpZHRoOiB2YXIoLS1zZWFyY2gtZ3JvdXAtbWF4LXdpZHRoKTtcclxuICAgIG1hcmdpbjogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykgYXV0byAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgI3RyYW5zZmVyVW5hdmFpbGFibGV7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyB2YXIoLS1zcGFjaW5nLTN4KSk7XHJcbiAgICB9XHJcbn1cclxuI2RlZmF1bHQtY2FwdGNoYS1kb21haW5jaGVja2VyIHtcclxuICAgIC5jYXB0Y2hhaW1hZ2Uge1xyXG4gICAgICAgIC5pbnB1dC1ncm91cC1hZGRvbiB7XHJcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gU2VhcmNoIENhcHRjaGFcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmRvbWFpbi1zZWFyY2gtY2FwdGNoYSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1heC13aWR0aDogdmFyKC0tc2VhcmNoLWdyb3VwLW1heC13aWR0aCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1ibG9jay1ib3JkZXItcmFkaXVzKTtcclxuXHRtYXJnaW46IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pIGF1dG8gMDtcclxuXHRwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICY6bm90KC5yc3BhZ2UtbW9kZXJuKXtcclxuICAgICAgICAuY2FwdGNoYXRleHR7XHJcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNjQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpe1xyXG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgJi1hZGRvbntcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1iYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSAwIDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKSB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jYXB0Y2hhIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgICAuY2FwdGNoYXRleHQge1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHRcdG1hcmdpbjogLTJweCAwIDE2cHg7XHJcbiAgICB9XHJcbiAgICAudG9vbHRpcCB7XHJcbiAgICAgICAgLnRvb2x0aXAtaW5uZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTsgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYmFubmVyLXNlY29uZGFyeSxcclxuLnNlYXJjaC1ib3gtcHJpbWFyeSB7XHJcbiAgICAuZG9tYWluLXNlYXJjaC1jYXB0Y2hhIHtcclxuICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpXHJcbiAgICB9XHJcbn1cclxuLmJhbm5lci1wcmltYXJ5LFxyXG4uc2VhcmNoLWJveC1zZWNvbmRhcnkge1xyXG4gICAgLmRvbWFpbi1zZWFyY2gtY2FwdGNoYSB7XHJcbiAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWRpdmlkZXItY29sb3IpXHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRG9tYWluIFNlYXJjaCAtIERvbWFpbiBPcHRpb25cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnBhbmVsLWNob29zZS1kb21haW46bm90KC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVkKSB7XHJcbiAgICAucGFuZWwtZG9tYWluLW9wdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKSB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7IFxyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICA+LmNvbnRlbnQge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC1sZyk7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGFiZWwucmFkaW8ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucmFkaW8rLnJhZGlve1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAucmFkaW8ge1xyXG4gICAgICAgICAgICAucmFkaW8tc3R5bGVkIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoZWNrYm94LXNwYWNpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBbdHlwZT1cInJhZGlvXCJdIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy00eCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTV4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICAgIFxyXG4gICAgLnJlY2FwdGNoYS1jb250YWluZXIsXHJcbiAgICAuaW5saW5lLWZvcm0tZWxlbWVudCxcclxuICAgIC5jYXB0Y2hhaW1hZ2UsXHJcbiAgICAuZm9ybS1ncm91cCB7XHJcbiAgICAgICAgPiAudG9vbHRpcCB7XHJcbiAgICAgICAgICAgIC50b29sdGlwLWlubmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudG9we1xyXG4gICAgICAgICAgICAgICAgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYm90dG9tIHtcclxuICAgICAgICAgICAgICAgIC50b29sdGlwLWFycm93IHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyBcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTRweDtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb3JtLXRvb2x0aXAge1xyXG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICArIC50b29sdGlwIHtcclxuICAgICAgICAgICAgICAgIC50b29sdGlwLWlubmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmlubGluZS1mb3JtIC5pbmxpbmUtZm9ybS1lbGVtZW50Om50aC1jaGlsZCgyKXtcclxuICAgICAgICBtaW4td2lkdGg6IGF1dG87XHJcbiAgICB9ICAgIFxyXG59XHJcblxyXG4ucGFuZWwtY2hvb3NlLWRvbWFpbi1ib3hlZCB7XHJcbiAgICAucGFuZWwtZG9tYWluLW9wdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy00eCk7IFxyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAmLTF7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLTJ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtM3tcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMy4zJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLTR7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUlOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLTV7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5yYWRpbyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jazogMHB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcclxuICAgICAgICAgICAgLnJhZGlvLXN0eWxlZCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoZWNrYm94LXNwYWNpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJhZGlvLXN0eWxlZC5jaGVja2Vke1xyXG4gICAgICAgICAgICAgICAgK2RpdntcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLTI2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE1cHgvMSBsYWdvbS1zbWFsbC1pY29ucztcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTFcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5ib3h7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctM3gpIHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cy12aXNpYmxle1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYtdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTJ4KSA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLXN1YnRpdGxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLXN1YnRpdGxlLCYtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLWljb257XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2NHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjRweDtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDY0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLnByb2R1Y3QtZ3JhcGhpYy1iZ3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDY0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICAgIFxyXG4gICAgLnJlY2FwdGNoYS1jb250YWluZXIsXHJcbiAgICAuaW5saW5lLWZvcm0tZWxlbWVudCxcclxuICAgIC5jYXB0Y2hhaW1hZ2UsXHJcbiAgICAuZm9ybS1ncm91cCB7XHJcbiAgICAgICAgPiAudG9vbHRpcCB7XHJcbiAgICAgICAgICAgIC50b29sdGlwLWlubmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItNCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudG9we1xyXG4gICAgICAgICAgICAgICAgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYm90dG9tIHtcclxuICAgICAgICAgICAgICAgIC50b29sdGlwLWFycm93IHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpOyBcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTRweDtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb3JtLXRvb2x0aXAge1xyXG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICArIC50b29sdGlwIHtcclxuICAgICAgICAgICAgICAgIC50b29sdGlwLWlubmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnRvb2x0aXAtYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmlubGluZS1mb3JtIC5pbmxpbmUtZm9ybS1lbGVtZW50Om50aC1jaGlsZCgyKXtcclxuICAgICAgICBtaW4td2lkdGg6IGF1dG87XHJcbiAgICB9ICAgIFxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgLnBhbmVsLWNob29zZS1kb21haW4tYm94ZWR7XHJcbiAgICAgICAgLnBhbmVsLWRvbWFpbi1vcHRpb257XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLWJvZHktcGFkZGluZyk7XHJcbiAgICAgICAgICAgIC5jb250ZW50LXdyYXB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICYtNHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLTV7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYm94e1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMngpIHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICYtaWNvbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN2Zy1pY29ue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYtdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDBweCA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYtc3VidGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC5wYW5lbC1jaG9vc2UtZG9tYWluLWJveGVke1xyXG4gICAgICAgIC5wYW5lbC1kb21haW4tb3B0aW9ue1xyXG4gICAgICAgICAgICAuY29udGVudC13cmFwe1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jb250ZW50e1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAgICAgJi0xLCYtMiwmLTMsJi00LCYtNXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRG9tYWluIFNlYXJjaCAtIElucHV0IEJveFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtZG9tYWluLXNlYXJjaCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cykgdmFyKC0tcGFuZWwtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZyk7XHJcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDIgKiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXhsZykgKyB2YXIoLS11aS1oZWlnaHQtbGcpKTtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgfVxyXG4gICAgZm9ybSxcclxuICAgIC5pbmxpbmUtZm9ybSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtbGcpO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiAgMTAwJTtcclxuICAgICAgICAuaW5saW5lLWZvcm0tZWxlbWVudCB7XHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd246bm90KC5kcm9wZG93bi1tdWx0aS1sZXZlbCkge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAudGxkLXNlbGVjdCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1wYWRkaW5nLWxnLXYpIHZhcigtLXVpLXBhZGRpbmctbGctaCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQtbGctZm9udC1zaXplKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmcpO1xyXG4gICAgICAgICAgICBib3JkZXI6IHZhcigtLWlucHV0LWJvcmRlcik7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICB2YXIoLS1pbnB1dC1sZy1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKSwgYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tYmFzZSkpO1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1ob3Zlci1jb2xvcik7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50bGQtc2VsZWN0OmZvY3VzLCAmOmZvY3VzLXZpc2libGUsICY6aG92ZXIsXHJcbiAgICAgICAgJi5zaG93IC50bGQtc2VsZWN0IHsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1iZyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWNvbG9yKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogIHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY2FyZXQge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRyb3Bkb3duLW1lbnUtc2VhcmNoIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxOTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5kZWZhdWx0LWNhcHRjaGEge1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLXRleHQtY29sb3ItZmFkZWQpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY2FwdGNoYWltYWdlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGZsb2F0OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAjaW5wdXRDYXB0Y2hhe1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY2FwdGNoYS1jb250YWluZXIge1xyXG4gICAgICAgICsuYnRuIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgLmNhcHRjaGEtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgLmNhcHRjaGFpbWFnZSwjaW5wdXRDYXB0Y2hhe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKyAuYnRue1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qI2RvbWFpbmluY2FydCB7XHJcbiAgICAgICAgI2luY2FydHNsZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogMTFweDtcclxuICAgICAgICB9XHJcbiAgICB9Ki9cclxufVxyXG4uaW5saW5lLWZvcm0tcHJlZml4IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgIGNvbG9yOiB2YXIoLS1ncmF5LWxpZ2h0ZXIpO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xyXG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWlucHV0LWxnLWZvbnQtc2l6ZSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taW5wdXQtbGctbGluZS1oZWlnaHQpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0taW5wdXQtbGctYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWlucHV0LWxnLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgfVxyXG4gICAgKyAuZm9ybS1jb250cm9sLFxyXG4gICAgKyAuc2VhcmNoLWZpZWxkIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAmOmFjdGl2ZTpmb2N1c3tcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gQWkgU2VhcmNoIERvbWFpblxyXG4ucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWlue1xyXG4gICAgW2RvbWFpbi1zZWFyY2gtc3RhbmRhcmRde1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmlubGluZS1mb3Jte1xyXG4gICAgICAgICY6aGFzKC5kb21haW4tc2VhcmNoLWFkdmFuY2VkKXtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhZ2UtZG9tYWlucmVnaXN0ZXJ7XHJcbiAgICAuYmFubmVyLXByaW1hcnksXHJcbiAgICAuYmFubmVyLXNlY29uZGFyeXtcclxuICAgICAgICAmOmhhcyguZHJvcGRvd24tbXVsdGktbGV2ZWwpe1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmRvbWFpbi1zZWFyY2gtdGFic3tcclxuICAgIGRpc3BsYXk6ZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuICAgIGgze1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgICYtYm90dG9te1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteGxnKTtcclxuICAgIH1cclxuICAgIC5idG4tdGFiLWdyb3Vwe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTMpO1xyXG4gICAgICAgIHBhZGRpbmc6IDZweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICBnYXA6IDRweDtcclxuICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgJjpub3QoLmFjdGl2ZSl7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfSAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYWN0aXZle1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBle1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnRuLXByaW1hcnktYmcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhZ2UtZG9tYWlucmVnaXN0ZXJ7XHJcbiAgICAuZG9tYWluLXNlYXJjaC10YWJze1xyXG4gICAgICAgIG1hcmdpbi1pbmxpbmU6YXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXNlYXJjaC1ncm91cC1tYXgtd2lkdGgpO1xyXG4gICAgfVxyXG59XHJcbi5kb21haW4tc2VhcmNoLWFkdmFuY2Vke1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAmLnNlYXJjaC1ncm91cC1sZ3tcclxuICAgICAgICAuc2VhcmNoLWZpZWxke1xyXG4gICAgICAgICAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgJjpub3QoKyAuaW5saW5lLWZvcm0tcHJlZml4KXtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZSA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmUgO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zZWFyY2gtZ3JvdXAtY29tYmluZWR7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgPiAuc2VhcmNoLWZpZWxkLCA+IC5kcm9wZG93biB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmRyb3Bkb3duLFxyXG4gICAgICAgICAgICAuc2VhcmNoLWdyb3VwLWJ0biB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICByb3ctZ2FwOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWJhc2UpO1xyXG4gICAgICAgICoge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWZpZWxkLWljb257XHJcbiAgICAgICAgc3Zne1xyXG4gICAgICAgICAgICBwYXRoe1xyXG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZHJvcGRvd24tbXVsdGktbGV2ZWx7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aGFzKC5zaG93KSA+IC5kcm9wZG93bi10b2dnbGV7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5kcm9wZG93bi10b2dnbGV7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgICAgXHJcbiAgICAgICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1c3tcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHJ7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZHJvcGRvd257XHJcbiAgICAgICAgICAgIC5scy1kb3due1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xyXG4gICAgICAgICAgICAgICAgLmxzLWRvd257XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAubHMtcmlnaHR7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51e1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogY2FsYygxMDAlICsgNHB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZHJvcGRvd257XHJcbiAgICAgICAgICAgICY6bm90KC5kcm9wdXApe1xyXG4gICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWFyY2gtZ3JvdXAtYnRue1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6aGFzKCNtZXNzYWdlOmhvdmVyKXtcclxuICAgICAgICAuZHJvcGRvd24tbXVsdGktbGV2ZWx7XHJcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLXRvZ2dsZXtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6aGFzKCNtZXNzYWdlOmZvY3VzKXtcclxuICAgICAgICAuZHJvcGRvd24tbXVsdGktbGV2ZWx7XHJcbiAgICAgICAgICAgID4gLmRyb3Bkb3duLXRvZ2dsZXtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJnKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6aGFzKC5pbmxpbmUtZm9ybS1wcmVmaXgpe1xyXG4gICAgICAgICY6aGFzKCNtZXNzYWdlOmhvdmVyKXtcclxuICAgICAgICAgICAgLmRyb3Bkb3duLW11bHRpLWxldmVse1xyXG4gICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tdG9nZ2xle1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhhcygjbWVzc2FnZTpmb2N1cyl7XHJcbiAgICAgICAgICAgIC5kcm9wZG93bi1tdWx0aS1sZXZlbHtcclxuICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLXRvZ2dsZXtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1iZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmRvbWFpbi1sb29rdXAtbWVzc2FnZXtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZyk7XHJcbiAgICAucGFuZWwtYm9keXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctYmFzZSk7XHJcbiAgICAgICAgaDZ7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kZWNvcmF0aW9uLWljb25zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNlYXJjaC1ncm91cCB7XHJcbiAgICAuaW5saW5lLWZvcm0tcHJlZml4IHtcclxuICAgICAgICArIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLXBhZGRpbmctYmFzZS1oKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICArIC5mb3JtLWNvbnRyb2wgKyAuc2VhcmNoLWZpZWxkLWljb24ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtY29tYmluZWQge1xyXG4gICAgICAgIC5zZWFyY2gtZmllbGQge1xyXG4gICAgICAgICAgICAuaW5saW5lLWZvcm0tcHJlZml4e1xyXG4gICAgICAgICAgICAgICAgKyAuc2VhcmNoLWZpZWxkLWljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgKyAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tdWktcGFkZGluZy1iYXNlLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOm5vdCguZG9tYWluLXNlYXJjaC1hZHZhbmNlZCl7XHJcbiAgICAgICAgICAgIC5zZWFyY2gtZmllbGR7XHJcbiAgICAgICAgICAgICAgICAuaW5saW5lLWZvcm0tcHJlZml4e1xyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYyh2YXIoLS1zcGFjaW5nLTF4KSAqIC0xKSAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tdWktaGVpZ2h0LWxnKSArIHZhcigtLXNwYWNpbmctMXgpICsgdmFyKC0tc3BhY2luZy0xeCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmRvbWFpbi1zZWFyY2gtYWR2YW5jZWR7XHJcbiAgICAgICAgICAgIC5zZWFyY2gtZmllbGR7XHJcbiAgICAgICAgICAgICAgICAuaW5saW5lLWZvcm0tcHJlZml4e1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBjYWxjKHZhcigtLXNwYWNpbmctMXgpICogLTEpIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS11aS1oZWlnaHQtbGcpICsgdmFyKC0tc3BhY2luZy0xeCkgKyB2YXIoLS1zcGFjaW5nLTF4KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zZWFyY2gtYm94e1xyXG4gICAgJi1zZWNvbmRhcnkge1xyXG4gICAgICAgIC5pbmxpbmUtZm9ybS1wcmVmaXgge1xyXG4gICAgICAgICAgICArIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtYm9yZGVyKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICY6YWN0aXZlOmZvY3Vze1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXByaW1hcnkge1xyXG4gICAgICAgIC5pbmxpbmUtZm9ybS1wcmVmaXgge1xyXG4gICAgICAgICAgICArIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWJvcmRlcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZTpmb2N1c3tcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktYmxvY2staW5wdXQtYm9yZGVyKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ubGFnb20tZnV0dXJpc3RpYyB7XHJcbiAgICAubWFpbi1iYW5uZXIge1xyXG4gICAgICAgIC5zZWFyY2gtZ3JvdXAtY29tYmluZWQge1xyXG4gICAgICAgICAgICAuaW5saW5lLWZvcm0tcHJlZml4IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC40O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gU2VhcmNoIC0gSW5wdXQgQm94IFN0eWxlc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcbi5wYW5lbC1kb21haW4tc2VhcmNoe1xyXG4gICAgJi1wcmltYXJ5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWJnLWgpO1xyXG4gICAgfVxyXG4gICAgJi1zZWNvbmRhcnkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeS1ibG9jay1iZy1oKTtcclxuICAgIH1cclxufVxyXG5cclxuaHRtbDpub3QoLmxhZ29tLWRhcmstbW9kZSl7XHJcbiAgICAucGFuZWwtZG9tYWluLXNlYXJjaCB7XHJcbiAgICAgICAgJi1wcmltYXJ5IHtcclxuICAgICAgICAgICAgLmlubGluZS1mb3JtLWVsZW1lbnQgPiAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmRyb3Bkb3duLWhlYWRlcntcclxuICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZHJvcGRvd24sXHJcbiAgICAgICAgICAgIC5kcm9wZG93bi5zaG93IHtcclxuICAgICAgICAgICAgICAgIC50bGQtc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgICAgICAmLFxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLWlucHV0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1ib3JkZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuY2FyZXQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1ibG9jay1pbnB1dC1jYXJldC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtc2Vjb25kYXJ5IHtcclxuICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1wbGFjZWhvbGRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmRyb3Bkb3duLWhlYWRlcntcclxuICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2x7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZHJvcGRvd24sXHJcbiAgICAgICAgICAgIC5kcm9wZG93bi5zaG93IHtcclxuICAgICAgICAgICAgICAgIC50bGQtc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgICAgICAmLFxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmRhcnktYmxvY2staW5wdXQtYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay1pbnB1dC1ib3JkZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuY2FyZXQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWJsb2NrLWlucHV0LWNhcmV0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhbmVsLWRvbWFpbi1zZWFyY2gsXHJcbi5zZWFyY2gtYm94e1xyXG4gICAgJi1wcmltYXJ5LFxyXG4gICAgJi1zZWNvbmRhcnl7XHJcbiAgICAgICAgLmRvbWFpbi1zZWFyY2gtdGFic3tcclxuICAgICAgICAgICAgaDN7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnBhbmVsLWRvbWFpbi1zZWFyY2gsXHJcbi5zZWFyY2gtYm94LFxyXG4uYmFubmVyLFxyXG4uc2VjdGlvbntcclxuICAgICYtcHJpbWFyeSxcclxuICAgICYtc2Vjb25kYXJ5e1xyXG4gICAgICAgIC5idG4tdGFiLWdyb3Vwe1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGMEY7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktYmxvY2stc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgLmJ0bi5idG4tc217XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOnZhcigtLXRleHQtd2hpdGUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAucGFuZWwtY2hvb3NlLWRvbWFpbiB7XHJcbiAgICAgICAgLnJlY2FwdGNoYS1jb250YWluZXIsXHJcbiAgICAgICAgLmlubGluZS1mb3JtLWVsZW1lbnQsXHJcbiAgICAgICAgLmZvcm0tZ3JvdXAge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgID4gLnRvb2x0aXA6bm90KC5ib3R0b20pIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICByaWdodDogLTVweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC02cHghaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgLnRvb2x0aXAtYXJyb3d7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtN3B4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYudG9wIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAudG9vbHRpcC1hcnJvd3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA1cHggMCA1cHggNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJyYW5kLWRhbmdlci1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnJpZ2h0e1xyXG4gICAgICAgICAgICAgICAgICAgIC50b29sdGlwLWFycm93e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbmxpbmUtZm9ybS1lbGVtZW50IHtcclxuICAgICAgICAgICAgPiAudG9vbHRpcCB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0zMHB4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZm9ybS10b29sdGlwIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgICAgICsgLnRvb2x0aXAge1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTZweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC01cHghaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIC50b29sdGlwLWFycm93IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDdweC0haW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLnBhbmVsLWRvbWFpbi1zZWFyY2gge1xyXG4gICAgICAgIGZvcm0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAmLWVsZW1lbnR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VhcmNoLWdyb3VwIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaW5saW5lLWZvcm17XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICYtZWxlbWVudHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICA+ICp7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICArICAuaW5saW5lLWZvcm0tZWxlbWVudHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgc2VsZWN0I3N1YmRvbWFpbnRsZHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50OyAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jYXB0Y2hhaW1hZ2Uge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICA+IC50b29sdGlwIHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGxlZnQ6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgICAgICAgICByaWdodDogLTVweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRvcDogLTMwcHghaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAudG9vbHRpcC1hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAtN3B4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAudG9vbHRpcC1hcnJvd3tcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiNnb29nbGUtcmVjYXB0Y2hhLWRvbWFpbmNoZWNrZXIge1xyXG4gICAgd2lkdGg6IDMwNHB4O1xyXG4gICAgaGVpZ2h0OiA3OHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgI2dvb2dsZS1yZWNhcHRjaGEtZG9tYWluY2hlY2tlciB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjUlO1xyXG4gICAgfVxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3MzZweCkge1xyXG4gICAgI2dvb2dsZS1yZWNhcHRjaGEtZG9tYWluY2hlY2tlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkzNSk7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkzNSk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6IDM4NHB4KSB7XHJcbiAgICAjZ29vZ2xlLXJlY2FwdGNoYS1kb21haW5jaGVja2VyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTYpO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcclxuICAgICNnb29nbGUtcmVjYXB0Y2hhLWRvbWFpbmNoZWNrZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44OSk7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG4gICAgfVxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAzMjBweCkge1xyXG4gICAgI2dvb2dsZS1yZWNhcHRjaGEtZG9tYWluY2hlY2tlciB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMy41JTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODMpO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43ODUpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRvbWFpbiAtIExvb2t1cFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uZG9tYWluLWxvb2t1cC1yZXN1bHQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XHJcbiAgICAmLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlzdC1ncm91cC1iZyk7XHJcbiAgICAgICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4IWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHghaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZG9tYWluIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZXh0ZW5zaW9uIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAmLnByb21vIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogLTE7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCxcclxuICAgICAgICAgICAgICAgIC5wcmljZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYWN0aW9ucyB7XHJcbiAgICAgICAgPiAuYnRuLWdyb3VwLFxyXG4gICAgICAgID4gLmJ0bi1hZGQtdG8tY2FydCB7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTM2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1leHRlbmRlZHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgICAgICAmLmxpc3QtZ3JvdXAge1xyXG4gICAgICAgICAgICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmFjdGlvbnMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0yeCkgMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5idG4tZ3JvdXAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi1ncm91cC1yZW1vdmUgeyAgICBcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1zbS1ib3JkZXItcmFkaXVzKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAuYnRuLXJlbW92ZS1kb21haW4ge1xyXG4gICAgICAgIGZsZXgtZ3JvdzogMDtcclxuICAgICAgICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJ0bi1zbSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS11aS1oZWlnaHQtc20pO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJ0bi1sZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS11aS1oZWlnaHQtbGcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi1ncm91cC1sb2FkZXJ7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uYnRuLWdyb3VwLXJlbW92ZS5sb2FkaW5ne1xyXG4gICAgLmJ0bi1ncm91cC1sb2FkZXJ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgIC5idG57XHJcbiAgICAgICAgPiBzcGFuLCBpe1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRvbWFpbiAtIFRMRHMgU3VnZ2VzdGlvbnNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG4uZG9tYWluLXN1Z2dlc3Rpb24ge1xyXG4gICAgJi13YXJuaW5nIHtcclxuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmLmFkZGVkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1ibG9jay1hY3RpdmUtYmcpO1xyXG4gICAgfVxyXG4gICAgLmFjdGlvbnMtY29udHJvbHtcclxuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXVpLXBhZGRpbmctc20taCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpLWhlaWdodC1zbSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtZGlzYWJsZWQtYmcpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgfVxyXG59XHJcbi5sYWdvbS1mdXR1cmlzdGlje1xyXG4gICAgLm1vcmUtc3VnZ2VzdGlvbnN7XHJcbiAgICAgICAgY2xpcC1wYXRoOiBpbnNldCgxcHggLTI4cHggLTI5cHggLTI5cHgpO1xyXG4gICAgfVxyXG59XHJcbi5tb3JlLXN1Z2dlc3Rpb25zIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWxpc3QtZ3JvdXAtYmcpO1xyXG4gICAgbWFyZ2luLXRvcDogLTFweDtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLWxpc3QtZ3JvdXAtYm94LXNoYWRvdyk7XHJcbiAgICBib3JkZXI6IHZhcigtLWxpc3QtZ3JvdXAtYm9yZGVyKTtcclxuICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBoZWlnaHQ6IDM4cHg7XHJcbiAgICBhe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWxpbmstaG92ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpe1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRvcDogLTRweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRue1xyXG4gICAgICAgIG1pbi13aWR0aDogMjU2cHg7XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAuZG9tYWluLWxvb2t1cC1yZXN1bHQge1xyXG4gICAgICAgIC5kb21haW4tc3VnZ2VzdGlvbiB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIC5hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IHZhcigtLXNwYWNpbmctMXgpIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xyXG4gICAgLmRvbWFpbi1sb29rdXAtcmVzdWx0IHtcclxuICAgICAgICAuZG9tYWluLXN1Z2dlc3Rpb24ge1xyXG4gICAgICAgICAgICAuYWN0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAucHJpY2V7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICBcclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Eb21haW4gLSBTZWFyY2ggUmVzdWx0IEJveFxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovIFxyXG5cclxuLmRvbWFpbi1jaGVja2VyLXJlc3VsdC1oZWFkbGluZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpO1xyXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICB9XHJcbiAgICAubWVzc2FnZSB7XHJcbiAgICAgICAgJjpoYXMoLmxhYmVsLWNvcm5lcil7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgLnByaW1hcnktZG9tYWluLWhlYWRlcntcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxhYmVsLWNvcm5lcntcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogLTE1cHg7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMTVweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWCg1MCUpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNS40NmRlZywgdmFyKC0tYnJhbmQtcHJpbWFyeS1ncmFkaWVudC1zdGFydCkgOC42JSwgdmFyKC0tYnJhbmQtcHJpbWFyeS1ncmFkaWVudC1lbmQpIDkxLjk0JSk7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZ2FwOiA0cHg7XHJcbiAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWNhLXNlY3Rpb24tc3BhY2luZyk7XHJcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy14bGcpO1xyXG4gICAgICAgIC5tZXNzYWdlLWljb24ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDgwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDsgICAgICAgIFxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4bGcpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tZXNzYWdlLXRpdGxle1xyXG4gICAgICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubWVzc2FnZS1hY3Rpb25zIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLm1lc3NhZ2UtdGV4dCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmctMXgpIDA7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg0KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcclxuICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubWVzc2FnZS10aXRsZSArIC5kb21haW4tcHJpY2Uge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogKHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpIC8gMikpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZG9tYWluLXByaWNlIC5idG4tcHJpY2V7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpLCBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tYmFzZSksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgJjpub3QoLmJ0bi1yZWFkb25seSl7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taW5wdXQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW5wdXQtYmcpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctYmFzZS12KSB2YXIoLS11aS1wYWRkaW5nLWJhc2UtaCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IHZhcigtLWlucHV0LWJvcmRlcik7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuLWljb257XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdWktbmF2LWxpbmstaWNvbi1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYnRuLXJlYWRvbmx5e1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXNtLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tcHJpY2Utc20tbGluZS1oZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXByaWNlLXNtLWZvbnQtd2VpZ2h0KTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmljZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAuYnRuLWljb257XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzbWFsbHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWxpZ2h0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQtaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1ob3Zlci1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWlucHV0LWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LWZvY3VzLWJnKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dC1mb2N1cy1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRvbWFpbi1wcmljZSAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyB2YXIoLS1zcGFjaW5nLTJ4KSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgLnBhZ2UtZG9tYWlucmVnaXN0ZXIge1xyXG4gICAgICAgIC5tYWluLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5kb21haW4tY2hlY2tlci1yZXN1bHQtaGVhZGxpbmUge1xyXG4gICAgICAgIC5tZXNzYWdlIC5tZXNzYWdlLXRleHQsXHJcbiAgICAgICAgLmRvbWFpbi1wcmljZSAucHJpY2Uge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tZXNzYWdlIHtcclxuICAgICAgICAgICAgLm1lc3NhZ2UtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byB2YXIoLS1zcGFjaW5nLTR4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRG9tYWluIC0gUHJvbW90ZWQgUHJvZHVjdCBCb3hlc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4uZG9tYWluLXByb21vLWJveCB7XHJcbiAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3cpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTV4KSB2YXIoLS1zcGFjaW5nLTN4KSB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgLnByb21vLWJveC1ib2R5IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuICAgIC5wcm9tby1ib3gtaWNvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjRweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MHB4O1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9tby1ib3gtaGVhZGVyIHtcclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oNik7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9tby1ib3gtY29udGVudCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB0ZXh0LWFsaWduOiB1bnNldDtcclxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJldHdlZW4ge1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9tby1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XHJcbiAgICAgICAgICAgICsuYnRue1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgKy5wcm9tby1ib3gtY29udGVudCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9tby1ib3gtaWNvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0zeCk7IFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9tby1ib3gtaGVhZGVyIHtcclxuICAgICAgICAgICAgaDUsIGgzIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnByb21vLWRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICYrLmJ0bntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnBhZ2UtZG9tYWluLXJlbmV3YWxzLFxyXG4ucGFnZS1zZXJ2aWNlLXJlbmV3YWxze1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgICAgICAubWFpbi1ncmlke1xyXG4gICAgICAgICAgICAubWFpbi1zaWRlYmFye1xyXG4gICAgICAgICAgICAgICAgJi5tYWluLXNpZGViYXItc3VtbWFyeXtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc3ViaGVhZGVyLWNvbnRhaW5lcntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICA+IGRpdixcclxuICAgID4gbGFiZWx7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4IWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICA+IGRpdntcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xeCkhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucGFuZWwucGFuZWwtc3dpdGNoLXNob3ctcmVuZXdhYmxle1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xyXG5cclxuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcblxyXG4gICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgLnBhbmVsLWJvZHl7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgICAgICAgLnN3aXRjaHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnNlcnZpY2UtcmVuZXdhbHN7XHJcbiAgICAuc2VydmljZS1yZW5ld2Fse1xyXG4gICAgICAgICY6bm90KC5kb21haW4tcmVuZXdhbC1hZGRlZCl7XHJcbiAgICAgICAgICAgID4gLnBhbmVsLWJvZHl7XHJcbiAgICAgICAgICAgICAgICAuYnRuLXJlbW92ZS1yZW5ld2Fse1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVse1xyXG4gICAgICAgICYuZG9tYWluLXJlbmV3YWwtYWRkZWR7XHJcbiAgICAgICAgICAgIC5kb21haW4tcmVuZXdhbHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgJi1hY3Rpb25ze1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0bi1hZGQtcmVuZXdhbC10by1jYXJ0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICYtYWN0aW9uc3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuLWFkZC1yZW5ld2FsLXRvLWNhcnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcclxuICAgICAgICAgICAgLnBhbmVsLWJvZHl7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgIC5kb21haW4tcmVuZXdhbC1mb3Jte1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wYW5lbC1ib2R5e1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgICAuZG9tYWluLXJlbmV3YWx7XHJcbiAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhsZyk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14bGcpO1xyXG4gICAgICAgICAgICAmLXJpZ2h0e1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICA+ZGl2e1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpW2RhdGEtdG9nZ2xlPVwidG9vbHRpcFwiXXtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMXgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1iYXNlKTtcclxuICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi11cmx7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtc3RhdHVze1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XHJcbiAgICAgICAgICAgIC5sYWJlbHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXBlcmlvZHN7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLW5leHQtZHVle1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIC5kb21haW4tcmVuZXdhbC1zdGF0dXN7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1hY3Rpb25ze1xyXG4gICAgICAgICAgICA+IGJ1dHRvbntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZm9ybXtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIC5idG4tcmVtb3ZlLXJlbmV3YWx7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcbiAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogYXV0bztcclxuICAgICAgICAgICAgICAgID4gaXtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ0bi1hZGQtcmVuZXdhbC10by1jYXJ0e1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDVweDtcclxuICAgICAgICAgICAgICAgICYuYnRuLXByaW1hcnl7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1c3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWJvcmRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5idG4tcHJpbWFyeS1mYWRlZHtcclxuICAgICAgICAgICAgICAgICAgICAmOmZvY3Vze1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtYm9yZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYWRkb24tcmVuZXdhbHN7XHJcbiAgICAgICAgLnNlcnZpY2UtcmVuZXdhbHN7XHJcbiAgICAgICAgICAgICY6bm90KC5kb21haW4tcmVuZXdhbC1hZGRlZCl7XHJcbiAgICAgICAgICAgICAgICA+IC5wYW5lbC1ib2R5e1xyXG4gICAgICAgICAgICAgICAgICAgIC5idG4tcmVtb3ZlLXJlbmV3YWx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWRpdmlkZXJ7XHJcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhbmVse1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIC5wYW5lbC1ib2R5e1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmW3N0eWxlPVwiZGlzcGxheTogbm9uZTtcIl17XHJcbiAgICAgICAgICAgICAgICArIC5wYW5lbHtcclxuICAgICAgICAgICAgICAgICAgICAuYWRkb24tcmVuZXdhbHMtZGl2aWRlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cHg7XHJcbiAgICAgICAgICAgICAgICAuYWRkb24tcmVuZXdhbHMtZGl2aWRlcntcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtY29udGVudHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpIHZhcigtLXBhbmVsLWJvZHktcGFkZGluZykgdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1ib2R5LWNvbG9yKTtcclxuICAgICAgICAgICAgcGFkZGluZzogMCB2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgJi1saW5le1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRvbWFpbi1yZW5ld2FseyBcclxuICAgICAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sZyk7XHJcbiAgICAgICAgICAgICAgICBpW2RhdGEtdG9nZ2xlPVwidG9vbHRpcFwiXXtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1wZXJpb2Rze1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWZvcm17XHJcbiAgICAgICAgICAgICAgICAuYnRuLWFkZC1yZW5ld2FsLXRvLWNhcnR7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA4M3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5kb21haW4tcmVuZXdhbCxcclxuLnNlcnZpY2UtcmVuZXdhbCB7IFxyXG4gICAgJi1jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi10b29sdGlwe1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICB9XHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBtYXJnaW46IC04cHggMCAwIDA7XHJcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XHJcblx0XHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaDQpO1xyXG5cdFx0bGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcclxuICAgIH1cclxuICAgICYtc3RhdHVzIHtcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZm9ybSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtcGVyaW9kIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgICYtcGVyaW9kLFxyXG4gICAgJi1hY3Rpb25zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXhzKTtcclxuICAgIH1cclxuICAgIC5idG4ge1xyXG4gICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tYmFzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIG1pbi13aWR0aDogMTIwcHg7XHJcbiAgICAgICAgLmFkZGVke1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubG9hZGVye1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBtaW4taGVpZ2h0OiA0MnB4O1xyXG4gICAgfVxyXG4gICAgJi1hZGRlZCB7XHJcbiAgICAgICAgPiAucGFuZWwtYm9keXtcclxuICAgICAgICAgICA+IC5kb21haW4tcmVuZXdhbC1mb3Jte1xyXG4gICAgICAgICAgICAgICAgPiAuZG9tYWluLXJlbmV3YWwtYWN0aW9uc3tcclxuICAgICAgICAgICAgICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6bm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRvbWFpbiAtIEZlYXR1cmVkIFRMRHMgQm94ZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmZlYXR1cmVkLXRsZHMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpKSFpbXBvcnRhbnQ7XHJcbiAgICAmLWNvbnRhaW5lcntcclxuICAgICAgICAuZmVhdHVyZWQtdGxkIHtcclxuICAgICAgICAgICAgLmltZy1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgJi1jb250YWluZXIge1xyXG4gICAgICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmZlYXR1cmVkLXRsZCB7XHJcbiAgICBtYXJnaW46IDAgMCB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSAwO1xyXG4gICAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIC5pbWctY29udGFpbmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgIGhlaWdodDogMTYwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBpbWcgeyBcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1wcmljZSB7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCAxNnB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ibG9jay1kaXZpZGVyLWNvbG9yKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoc20pIHtcclxuICAgIC5mZWF0dXJlZC10bGQgLmltZy1jb250YWluZXIge1xyXG4gICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICBpbWcgeyBcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4udGxkLXNhbGUtZ3JvdXAge1xyXG4gICAgcGFkZGluZzogMXB4IDNweDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQmLWhvdCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjk2MTVhO1xyXG5cdH1cclxuXHQmLXNhbGUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y3ZDQ1ODtcclxuXHR9XHJcblx0Ji1uZXcge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzJhZDU4ODtcclxuXHR9XHJcbn1cclxuLnRsZC1tb2ItdmFsdWUge1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxufVxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblRMRCBQcmljaW5nIC0gVGFibGVcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnRsZC10YWJsZSB7XHJcbiAgICAudGxkLW5hbWUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsZyk7XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRsZC1sYWJlbCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14cyk7XHJcbiAgICB9IFxyXG4gICAgLnRsZC1yZWdpc3RlcntcclxuICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCAobGcpIHtcclxuICAgIC50bGQtdGFibGUge1xyXG4gICAgICAgIC50bGQtbGFiZWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzbWFsbCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKG1kKSB7XHJcbiAgICAudGxkLXRhYmxlIHtcclxuICAgICAgICAudGFibGUge1xyXG4gICAgICAgICAgICA+IHRoZWFkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiB0Ym9keSA+ICB0ciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSkgLSB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKSk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKSAtIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pKTtcclxuICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogODBweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgLnRsZC10YWJsZSB7XHJcbiAgICAgICAgLnRhYmxlIHtcclxuICAgICAgICAgICAgPiB0aGVhZCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gdGJvZHkgPiAgdHIge1xyXG4gICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi50bGQtcmVnaXN0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5UTEQgUHJpY2luZyAtIFRvb2xiYXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnRsZC10b29sYmFyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICYgPiAqICsgKiAge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGx7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRsZC1jYXRlZ29yaWVzIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIHNlbGVjdCB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VsZWN0aXplLWNvbnRyb2wge1xyXG4gICAgICAgICYuZm9ybS1jb250cm9sIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNlYXJjaC1ncm91cCB7XHJcbiAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDIyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRsZC1oZWFkZXJ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZyk7XHJcbiAgICAuc2VjdGlvbi10aXRsZXtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC50bGQtaGVhZGVye1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLnRsZC1zZWFyY2gge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC50bGQtdG9vbGJhciB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAudGxkLWNhdGVnb3JpZXMsXHJcbiAgICAgICAgLnRsZC1zZWFyY2gge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAudGxkLWNhdGVnb3JpZXMgKyAudGxkLXNlYXJjaCAge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuRG9tYWluIC0gVExEcyBTcG90bGlnaHQgQm94ZXNcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnNwb3RsaWdodHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtOHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTE2cHg7XHJcbiAgICAuc3BvdGxpZ2h0LWNvbCB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxNTZweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDhweCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAmLTEge1xyXG4gICAgICAgIC5zcG90bGlnaHQtY29sIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi0yIHtcclxuICAgICAgICAuc3BvdGxpZ2h0LWNvbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi0zIHtcclxuICAgICAgICAuc3BvdGxpZ2h0LWNvbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMy4zJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLTQge1xyXG4gICAgICAgIC5zcG90bGlnaHQtY29sIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLTUge1xyXG4gICAgICAgIC5zcG90bGlnaHQtY29sIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLTYge1xyXG4gICAgICAgIC5zcG90bGlnaHQtY29sIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE2LjYlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtNyB7XHJcbiAgICAgICAgLnNwb3RsaWdodC1jb2wge1xyXG4gICAgICAgICAgICB3aWR0aDogMTQuMjglO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtOCB7XHJcbiAgICAgICAgLnNwb3RsaWdodC1jb2wge1xyXG4gICAgICAgICAgICB3aWR0aDogMTIuNSU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zcG90bGlnaHQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgICYtbG9hZGVyIHtcclxuICAgICAgICBoZWlnaHQ6IDEzMnB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuICAgICYtY29udGVudCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC8vIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAzMnB4IDA7XHJcbiAgICAgICAgLmV4dGVuc2lvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWg0KTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bHtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjoxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1mb290ZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy0xeCkgdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgJl9wcmljZXtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDExcHg7XHJcbiAgICAgICAgICAgICYtYm9yZGVyZWR7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTFweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tdWktcGFkZGluZy1zbS1oKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdWktaGVpZ2h0LXNtKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taW5wdXQtc20tZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW5wdXQtc20tYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1kaXNhYmxlZC1iZyk7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiB2YXIoLS1pbnB1dC1ib3JkZXIpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX2JvcmRlcntcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJsb2NrLWRpdmlkZXItY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuLWdyb3VwIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRsZC1sYWJlbCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogOHB4O1xyXG4gICAgICAgIGxlZnQ6IC01cHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxNTZweDtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgICAmLnVuYXZhaWxhYmxle1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS1saWdodGVyLTQpO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIC5sYWJlbC5sYWJlbC1jb3JuZXJ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZmFkZWQtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc3BvdGxpZ2h0LWNvbnRlbnR7XHJcbiAgICAgICAgICAgIC5leHRlbnNpb257XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWZhZGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc3BvdGxpZ2h0LXByaWNle1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1mYWRlZC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zcG90bGlnaHQtZm9vdGVye1xyXG4gICAgICAgICAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZmFkZWQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5idG4tdW5hdmFpbGFibGV7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1iZyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1kaXNhYmxlZC1ib3JkZXIpO1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcbi5zcG90bGlnaHQtdGxkIC5yZXN1bHRzIHtcclxuICAgIGRpc3BsYXk6IG5vbmVcclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwIChsZykge1xyXG4gICAgLnNwb3RsaWdodHMge1xyXG4gICAgICAgICYtMSxcclxuICAgICAgICAmLTIsXHJcbiAgICAgICAgJi0zLFxyXG4gICAgICAgICYtNCxcclxuICAgICAgICAmLTUge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEycHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEycHg7XHJcbiAgICAgICAgICAgIC5zcG90bGlnaHQtY29sIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTJweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNwb3RsaWdodC1mb290ZXIgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLTJ4KSB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24gKG1kKSB7XHJcbiAgICAuc3BvdGxpZ2h0cyB7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIC5zcG90bGlnaHQtY29sIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgLnNwb3RsaWdodHMge1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAuc3BvdGxpZ2h0LWNvbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93biAoeHMpIHtcclxuICAgIC5zcG90bGlnaHRzIHtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgLnNwb3RsaWdodC1jb2wge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zcG90bGlnaHQtdGxkcyB7XHJcbiAgICAud29ybGQtbG9hZGVye1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICAuc2VjdGlvbi1ib2R5e1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxufVxyXG5cclxuLm1lc3NhZ2UtZnJlZS1kb21haW57XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctM3gpO1xyXG4gICAgLm1lc3NhZ2V7XHJcbiAgICAgICAgJi10aXRsZXtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWQpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1zcGFjaW5nLTN4KS8yKTtcclxuICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGVzY3tcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbHRyIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICsgbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA3cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sYWdvbS1kZWZhdWx0e1xyXG4gICAgLm1lc3NhZ2UtZnJlZS1kb21haW57XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XHJcbiAgICAgICAgLm1lc3NhZ2V7XHJcbiAgICAgICAgICAgICYtZGVzY3tcclxuICAgICAgICAgICAgICAgIC5sYWJlbC1kZWZhdWx0e1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLyBQYWdlIENvbmZpZ3VyZSBQcm9kdWN0IERvbWFpbiBQb3BvdmVyIE1vcmUgVGxkXHJcblxyXG4ucGFnZS1jb25maWd1cmVwcm9kdWN0ZG9tYWlue1xyXG4gICAgJi5sYWdvbS1mdXR1cmlzdGlje1xyXG4gICAgICAgIC5wb3BvdmVye1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1iZyk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpO1xyXG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweClcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubW9yZS10bGR7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG4gICAgLnBvcG92ZXJ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzODBweDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJvZHl7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGxke1xyXG4gICAgICAgICAgICAmLWNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDM4MHB4O1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xyXG4gICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1zY3JvbGxiYXItd2lkdGgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhci10cmFjay1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1zY3JvbGxiYXItd2lkdGgpIC8yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItdGh1bWItYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tc2Nyb2xsYmFyLXdpZHRoKSAvMik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1zcGFjaW5nLTF4KSAvIDIpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbkRvYW1pbiBDb25maWd1cmF0aW9uIC0gSW5mbyBCb3hcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLmRvbWFpbi1pbmZvIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgeyAgICAgICAgXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSk7XHJcbiAgICB9XHJcbiAgICAmLWljb24gc3ZnIHtcclxuICAgICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgd2lkdGg6IDQ4cHg7XHJcbiAgICB9XHJcbiAgICAmLWljb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtYm9keSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAmLXRvcCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgICYtdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDQpO1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgIHdpZHRoOiAxNTZweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICAuYnRue1xyXG4gICAgICAgIG1pbi13aWR0aDogMTA2cHg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgICYtYm90dG9tIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxuICAgICYtaG9zdGluZyB7XHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14cyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgcnRse1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1wZXJpb2Qge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmcteHMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtYWRkb25zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tdWktYmxvY2stc3BhY2luZy1zbSkpO1xyXG4gICAgICAgIC5wYW5lbC1jaGVjayB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pO1xyXG4gICAgICAgICAgICAubHMtaW5mby1jaXJjbGUge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1hZGRpdGlvbmFsIHtcclxuICAgICAgICAuZm9ybS1ncm91cDpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbC1mb3JtLWxhYmVse1xyXG4gICAgICAgICAgICBibG9ja3F1b3Rle1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZm9ybS1jb250cm9se1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICBcclxufSAgICBcclxuLnBhbmVsLWxnIHtcclxuICAgIC5kb21haW4taW5mby1hZGRvbnMgeyAgICAgICAgXHJcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmRvbWFpbi1pbmZvLWFkZG9uc3tcclxuICAgICYtZXh0ZW5kZWQge1xyXG4gICAgICAgIC5wYW5lbCB7XHJcbiAgICAgICAgICAgIC5jaGVja2JveC1zdHlsZWQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNoZWNrIHtcclxuICAgICAgICAgICAgICAgICYtY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgPiBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtYm9keS1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi1zdWJ0aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGxnKTtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteGxnKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYtZGVzYyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmxzLWluZm8tY2lyY2xlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuXHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAmOm5vdCgudG8tYWRkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICYubHMtdHJhc2gge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB2YXIoLS11aS1wYWRkaW5nLXNtLWgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5jaGVja2VkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcGFuZWwtZGVmYXVsdC1ib3JkZXIpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWhvdmVyLWJvcmRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRvLWFkZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5scy10cmFzaCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXBhbmVsLWRlZmF1bHQtYm9yZGVyKTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6bm90KC5kb21haW4taW5mby1hZGRvbnMtZXh0ZW5kZWQpIHtcclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jaGVjay1zdWJ0aXRsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWljaGVjay1zaXplKSArIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctc20pKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRvbWFpbi1hZGRvbnMtdGl0bGUge1xyXG4gICAgICAgICAgICBkaXNwbGF5IDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgLnBhbmVsLWRvbWFpbi1pbmZvIHtcclxuICAgICAgICAmOmhhcyguZG9tYWluLWluZm8taWNvbikge1xyXG4gICAgICAgICAgICAuZG9tYWluLWluZm97XHJcbiAgICAgICAgICAgICAgICAmLWFkZG9ucyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDQ4cHggKyB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZG9tYWluLWluZm8ge1xyXG4gICAgICAgICYtYWRkaXRpb25hbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYW5lbC1ib2R5LXBhZGRpbmcpICsgNDhweCArIHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAuZG9tYWluLWluZm8ge1xyXG4gICAgICAgICYtaWNvbiBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRpdGxle1xyXG4gICAgICAgICAgICBvcmRlcjogMDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzNnB4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10b3Age1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgJiA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDs7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYnRuLXRleHQge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS11aS1wYWRkaW5nLXNtLXYpKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLXVpLXBhZGRpbmctc20taCkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5mb3JtLWdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXNwYWNpbmctMXgpKTtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAzO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEgYXV0bztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0zMnB4IC0gdmFyKC0tdWktYmxvY2stc3BhY2luZy1sZykpO1xyXG4gICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYm90dG9tIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgICAgICAgICAgICBcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgICAgICAuZG9tYWluLWluZm8tcGVyaW9kIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kb21haW4taW5mby1ob3N0aW5nIHsgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgICAgICAubGFiZWx7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1hZGRpdGlvbmFsIHtcclxuICAgICAgICAgICAgLmNvbC1mb3JtLWxhYmVsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLWRvbWFpbi1pbmZvIHtcclxuICAgICAgICAmOmhhcyguZG9tYWluLWluZm8taWNvbikge1xyXG4gICAgICAgICAgICAuZG9tYWluLWluZm8ge1xyXG4gICAgICAgICAgICAgICAgJi1ib3R0b20ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogKDMycHggKyB2YXIoLS11aS1ibG9jay1zcGFjaW5nLWxnKSkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiXHJcblxyXG4vKi0tLS0tLS0tLS0tLSBDb25maWd1cmUgUHJvZHVjdCAtLS0tLS0tLS0tLS0tLSovXHJcblxyXG4ucHJvZHVjdC1pbmZvIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuLnBhbmVsLXJhbmdlLXNsaWRlciAuaXJzLFxyXG4uc2xpZGVyLXNsaWRlIC5pcnMge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhlaWdodCk7XHJcbiAgICAmLW1pbixcclxuICAgICYtbWF4LFxyXG4gICAgJi1mcm9tLFxyXG4gICAgJi10byxcclxuICAgICYtZWRnZSxcclxuICAgICYtbGluZS1sZWZ0LFxyXG4gICAgJi1saW5lLXJpZ2h0LFxyXG4gICAgJi1saW5lLW1pZCxcclxuICAgICYtYmFyLWVkZ2Uge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgJi1saW5lIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiB2YXIoLS1zcGFjaW5nLTF4KTtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLXJhbmdlLXNsaWRlci1oZWlnaHQpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXJhbmdlLXNsaWRlci1iZyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFuZ2Utc2xpZGVyLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmLWJhciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRvcDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tcmFuZ2Utc2xpZGVyLWhlaWdodCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcmFuZ2Utc2xpZGVyLWZpbGwtYmcpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhbmdlLXNsaWRlci1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuICAgIH1cclxuICAgICYtc2xpZGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhlaWdodCk7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXJhbmdlLXNsaWRlci1oYW5kbGUtd2lkdGgpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXJhbmdlLXNsaWRlci1oYW5kbGUtYm94LXNoYWRvdyk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcmFuZ2Utc2xpZGVyLWhhbmRsZS1iZyk7XHJcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFuZ2Utc2xpZGVyLWhhbmRsZS1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWJhc2UpO1xyXG4gICAgICAgIC5hY3RpdmUsXHJcbiAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tcmFuZ2Utc2xpZGVyLWhhbmRsZS1ob3Zlci1zaGFkb3cpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhvdmVyLWJnKTtcclxuICAgICAgICAgICAgYm9yZGVyOiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhvdmVyLWJvcmRlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDYwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDQ1JTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4xKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgaGVpZ2h0OiA2MCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgIHRvcDogNDklO1xyXG4gICAgICAgICAgICBsZWZ0OiA1NSU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1ncmlkIHtcclxuICAgICAgICAmLXBvbCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktZmFkZWQpO1xyXG4gICAgICAgICAgICAmLnNtYWxsIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXJhbmdlLXNsaWRlci12YWx1ZS1zbS1jb2xvcik7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tcmFuZ2Utc2xpZGVyLXZhbHVlLXNtLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1yYW5nZS1zbGlkZXItdmFsdWUtc20tbGluZS1oZWlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtZnJvbSwgXHJcbiAgICAmLXRvLCBcclxuICAgICYtc2luZ2xlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiBjYWxjKC0xICogdmFyKC0tcmFuZ2Utc2xpZGVyLWhhbmRsZS1oZWlnaHQpIC0gOHB4KTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLWhlaWdodCk7XHJcbiAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1yYW5nZS1zbGlkZXItaGFuZGxlLXdpZHRoKTtcclxuICAgICAgICBwYWRkaW5nOiAwIDhweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yYW5nZS1zbGlkZXItdmFsdWUtYmcpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhbmdlLXNsaWRlci1oYW5kbGUtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXJhbmdlLXNsaWRlci12YWx1ZS1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1yYW5nZS1zbGlkZXItdmFsdWUtZm9udC1zaXplKTtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcmFuZ2Utc2xpZGVyLXZhbHVlLWJnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5vdmVybGF5IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogMTAwMTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuNTApO1xyXG59XHJcbi5wcm9kdWN0LWNvbmZpZy1pbmZvIHtcclxuICAgIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4bGcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnByb2R1Y3QtY29uZmlndXJhYmxlLW9wdGlvbnN7XHJcbiAgICAubGljZW5zZU9wdGlvbkluZm97XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbGluay1ob3Zlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyogOnJvb3R7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xyXG4gICAgICAgIC5tb2RhbCB7XHJcbiAgICAgICAgICAgICYtdXJsLFxyXG4gICAgICAgICAgICAmLWxvY2F0aW9uIHtcclxuICAgICAgICAgICAgICAgIC0tZm9udC1zaXplLWg1OiAgICAgICB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAtLWxpbmUtaGVpZ2h0LWg1OiAgICAgdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuICovXHJcblxyXG5cclxuIDpyb290IHtcclxuICAgIC0tbW9kYWwtc2NhbGU6ICAgICAgICAgICAgICAgICAgMS4wODtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgLS1tb2RhbC1zY2FsZTogICAgICAgICAgICAgIDEuMDQ7XHJcbiAgICB9XHJcbiB9XHJcblxyXG5cclxuLnN0b3JlLWNob29zZS1kb21haW4ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWktYmxvY2stc3BhY2luZy14bGcpO1xyXG4gICAgLmRvbWFpbi12YWxpZGF0aW9uIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDMycHg7XHJcbiAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMzJweCAxMnB4IDA7XHJcbiAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAuc3RvcmUtZG9tYWluLWZvcm0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXhcclxuICAgIH1cclxuICAgICNzdWItZG9tYWlue1xyXG4gICAgICAgIC5zdG9yZS1kb21haW4tZm9ybXtcclxuICAgICAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBkaXZ7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCxcclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XHJcbiAgICAgICAgICAgIC5zdG9yZS1kb21haW4tZm9ybXtcclxuICAgICAgICAgICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0zeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59ICAgXHJcbi5zdG9yZS1hY3Rpb25zIHsgICAgXHJcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYS1zZWN0aW9uLXNwYWNpbmcpO1xyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgKy5idG4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duICh4cykge1xyXG4gICAgLnN0b3JlLWFjdGlvbnMge1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdG9yZS1vcmRlci1jb250YWluZXJ7XHJcbiAgICAucHJvbW8tc2xpZGVyLWFjdGlvbnN7XHJcbiAgICAgICAgZm9ybXtcclxuICAgICAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgICAgIGhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtbGcpO1xyXG4gICAgICAgICAgICAgICAgLnNwYW4tdXBzZWxse1xyXG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucGF5bWVudC10ZXJtIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTR4KTtcclxuICAgIH1cclxufVxyXG5cclxuI21vZGFsVGVzdFJlc3VsdHMge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy00eCkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5tb2RhbC1kaWFsb2cge1xyXG4gICAgfVxyXG4gICAgLm1vZGFsIHtcclxuICAgICAgICAmLWRpYWxvZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMTAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaGVhZGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgLmNsb3NlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAmLmxtLWNsb3NlIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyYXktaWNvbnMpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdXJsLFxyXG4gICAgICAgICYtbG9jYXRpb24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICB9IFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJvZHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTV4KSB2YXIoLS1zcGFjaW5nLTZ4KSB2YXIoLS1zcGFjaW5nLTV4KSB2YXIoLS1zcGFjaW5nLTZ4KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTJ4KSB2YXIoLS1zcGFjaW5nLTJ4KSB2YXIoLS1zcGFjaW5nLTN4KSB2YXIoLS1zcGFjaW5nLTJ4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1yZXN1bHRzIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzZweCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jb2wtc20tMTIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMXgpIDEycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1ib3gge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTZ4KSB2YXIoLS1zcGFjaW5nLTN4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE4cHggdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi0tcG9zaXRpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLXN1Y2Nlc3MtbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1icmFuZC1zdWNjZXNzLWxpZ2h0ZXItMik7XHJcbiAgICAgICAgICAgICAgICAgICAgLm1ldHJpYy1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmxzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5scy1leGNsYW1hdGlvbi1jaXJjbGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmxzLWluZm8tY2lyY2xle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi0taW5mbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtd2FybmluZy1saWdodGVyLTQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJyYW5kLXdhcm5pbmctbGlnaHRlci0yKTtcclxuICAgICAgICAgICAgICAgICAgICAubWV0cmljLWljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5scyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubHMtZXhjbGFtYXRpb24tY2lyY2xle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLS1wb3NpdGl2ZSwgJi0taW5mb3tcclxuICAgICAgICAgICAgICAgICAgICAucHVsc2UtdGV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiB1bnNldDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLS1uZWdhdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYW5nZXItbGlnaHRlci00KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnJhbmQtZGFuZ2VyLWxpZ2h0ZXItMik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAubWV0cmljLWljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5scyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYW5nZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5scy1pbmZvLWNpcmNsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubWV0cmljLWljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XHJcbiAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDUpO1xyXG4gICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYmFzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYubWV0cmljLXZhbHVlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWhlYWRpbmctY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4bGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXh4bGcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICYtYWN0aW9ucyB7XHJcbiAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMngpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmxvYWRlci1jaXJjbGUge1xyXG4gICAgJi52aXNpYmxlIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgIH0gXHJcbn1cclxuXHJcbi8vMzYwIG1vZGFsIGFuaW1hdGlvbnNcclxuXHJcbi5wdWxzZS10ZXh0IHtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBwdWxzZS10ZXh0O1xyXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcclxuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG4gICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHB1bHNlLXRleHQge1xyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC44KTtcclxuXHR9XHJcblx0NzAlIHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XHJcblx0fVxyXG59IiwiLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tb1xyXG4xLiBCYW5uZXIgRGVmYXVsdFxyXG4yLiBCYW5uZXIgU2xpbVxyXG4zLiBDYXJ0XHJcbjQuIE90aGVyc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbjEuIFByb21vIC0gQmFubmVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wcm9tby1iYW5uZXIge1xyXG4gICAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHggMjBweCAxMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktYmxvY2stYmcpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS11aS1ibG9jay1ib3JkZXIpO1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktYmxvY2stc2hhZG93KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLWJsb2NrLWJvcmRlci1yYWRpdXMpO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAmLXJvdW5kZWQge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIH1cclxuICAgIC5pY29uIHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XHJcbiAgICAgICAgJi1sZWZ0IHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgfVxyXG4gICAgdWwge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjkyZW07XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZhOm5vdCguZmEtc3Bpbm5lcikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICAgICAgY29sb3I6ICM5MWM1OTA7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAucHJvbW8tYmFubmVyIHVsIGxpIHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAucHJvbW8tYmFubmVyIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uLWxlZnQge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTU1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE4NXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgLnByb21vLWJhbm5lciBmb3JtIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gICAgLnByb21vLWJhbm5lciAuaWNvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4yLiBQcm9tbyAtIEJhbm5lciBTbGltXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5wcm9tby1iYW5uZXItc2xpbSB7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgLmljb24tbGVmdCB7XHJcbiAgICAgICAgd2lkdGg6IDg1cHg7XHJcbiAgICB9XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDExMHB4O1xyXG4gICAgfVxyXG4gICAgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktaWNvbi1zaXplLWJhc2UpO1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuICAgIC5idG4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMFxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMjBweCAwIDIwcHhcclxuICAgICAgICB9XHJcbiAgICAgICAgcGFkZGluZzogNnB4IDIwcHg7XHJcbiAgICB9XHJcbiAgICAmLndlZWJseXtcclxuICAgICAgICAuaWNvbi1sZWZ0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxODVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAucHJvbW8tYmFubmVyLXNsaW0ge1xyXG4gICAgICAgIC5pY29uLWxlZnR7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4NXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250ZW50e1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmb3Jte1xyXG4gICAgICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzJweDtcclxuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuLFxyXG4gICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuICsgLmJ0bixcclxuICAgICAgICAgICAgLmJ0biArIGEsXHJcbiAgICAgICAgICAgIGEgKyBhLFxyXG4gICAgICAgICAgICBhICsgLmJ0bntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctYmFzZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4zLiBQcm9tbyAtIENhcnRcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4qL1xyXG5cclxuLnByb21vLWNhcnQge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMwMDU0OGE7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xyXG4gICAgfVxyXG4gICAgLmJ0bi1hZGQge1xyXG4gICAgICAgIHBhZGRpbmc6IDdweCAxOHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQ4YTtcclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgIH1cclxuICAgIC5wcmljaW5nIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjMzM5OUZGO1xyXG4gICAgfVxyXG4gICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIC5wcm9tby1jYXJ0e1xyXG4gICAgICAgIC5pY29uLWxlZnQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE0MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH0gXHJcbn1cclxuIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSxcclxuIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICAgLnByb21vLWNhcnQgLnByaWNpbmcge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuNC4gUHJvbW8gLSBMYXN0IENoYW5jZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiovXHJcblxyXG4ucGFuZWwtbWMtc3Nve1xyXG4gICAgLmljb24tY29udGFpbmVyIHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogMTc1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IFxyXG5cclxuLmNsaWVudC1ob21lLXBhbmVscyB7XHJcbiAgICAucGFuZWwtbWMtc3NvIHtcclxuICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgPiAuY29sLXNtLTYge1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZm9ybSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1saWdodGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzZWxlY3Qge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICArIC5idG57XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA4cHggMCAwIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQodmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlciksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5sb2FkaW5nIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHNtYWxsIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxvZ2luLWZlZWRiYWNrIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFuZ2VyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Qcm9tbyAtIExhc3QgQ2hhbmNlIG9uIENoZWNrb3V0XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tYy1wcm9tb3Mge1xyXG4gICAgLm1jLXByb21vIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aS1ibG9jay1zcGFjaW5nLXNtKTtcclxuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS11aS1ibG9jay1zaGFkb3cpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgICAgICBib3JkZXI6IHZhcigtLXVpLWJsb2NrLWJvcmRlcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktYmxvY2stYm9yZGVyLXJhZGl1cyk7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaGVhZGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tdWktYmxvY2stcGFkZGluZy1zbSkgKyA0MHB4KTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSArIDE4OHB4KTtcclxuICAgICAgICAgICAgLmV4cGFuZGVyIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCA4cHggOHB4IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsIDAuMSk7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKSAwIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIDA7XHJcbiAgICAgICAgICAgICAgICAuaGVhZGxpbmUge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1oZWFkaW5nLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWg2KTtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaDYpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnRhZ2xpbmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJhc2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jdGEge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIDA7XHJcbiAgICAgICAgICAgICAgICAuYnRuLWFkZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQodmFyKC0tYnRuLXByaW1hcnktZmFkZWQtY29sb3IpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1iZyksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWJvcmRlciksIHZhcigtLWJ0bi1wcmltYXJ5LWZhZGVkLWhvdmVyLWNvbG9yKSwgdmFyKC0tYnRuLXByaW1hcnktZmFkZWQtaG92ZXItYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1ob3Zlci1ib3JkZXIpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYmcpLCB2YXIoLS1idG4tcHJpbWFyeS1mYWRlZC1hY3RpdmUtYm9yZGVyKSwgdmFyKC0tYnRuLWRpc2FibGVkLWNvbG9yKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJnKSwgdmFyKC0tYnRuLWRpc2FibGVkLWJvcmRlcikpO1xyXG4gICAgICAgICAgICAgICAgICAgIC5hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pIDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXByaWNlLXhzLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXByaWNlLXhzLWxpbmUtaGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcHJpY2UteHMtZm9udC13ZWlnaHQpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9QOiAtMzZweDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTZweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTYycHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTg4cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0IWltcG9ydGFudDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIC5wcm9tby1zbGlkZXItaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYm9keSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLWJsb2NrLXBhZGRpbmctc20pO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYmxvY2stZGl2aWRlci1jb2xvcik7XHJcbiAgICAgICAgICAgID4gdWwge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0xeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5sYWdvbS1kZXB0aCxcclxuLmxhZ29tLWRlZmF1bHQge1xyXG4gICAgLm1jLXByb21vcyB7XHJcbiAgICAgICAgLm1jLXByb21vIHtcclxuICAgICAgICAgICAgLmhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LWdyYWRpZW50LWgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblByb21vIC0gUHJvZHVjdCBEZXRhaWxzXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuKi9cclxuXHJcbi5tYy1wcm9tbyB7XHJcbiAgICAmLWxvZ2luLFxyXG4gICAgJi1tYW5hZ2Uge1xyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICAgICAgICA+IGRpdiB7XHJcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tdWktYmxvY2stcGFkZGluZy1iYXNlKTtcclxuICAgICAgICAgICAgLnBhbmVsLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWxnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYWN0aW9uc3tcclxuICAgICAgICAgICAgICAgIC5idG57XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQtc20pO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXVpLXBhZGRpbmctc20tdikgdmFyKC0tdWktcGFkZGluZy1zbS1oKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5idG4tc2VydmljZS1zc297XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1idG4tcHJpbWFyeS1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ib3JkZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tcHJpbWFyeS1ob3Zlci1iZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktaG92ZXItYm9yZGVyKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjMycHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMzJweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wYW5lbC1oZWFkaW5nLFxyXG4gICAgICAgICAgICAucGFuZWwtYm9keSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucGFuZWwtaGVhZGluZyArIC5wYW5lbC1ib2R5IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXVpLWJsb2NrLXNwYWNpbmctbGcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChzbSkge1xyXG4gICAgLm1jLXByb21vcyB7XHJcbiAgICAgICAgLm1jLXByb21vIHtcclxuICAgICAgICAgICAgLmhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS11aS1ibG9jay1wYWRkaW5nLXNtKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLWJsb2NrLWJnKTtcclxuICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1jLXByb21ve1xyXG4gICAgICAgICYtbG9naW4sXHJcbiAgICAgICAgJi1tYW5hZ2Uge1xyXG4gICAgICAgICAgICAuY29udGVudHtcclxuICAgICAgICAgICAgICAgIC5sb2dve1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNDJweDtcclxuICAgICAgICAgICAgICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTQycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cyl7XHJcbiAgICAubWMtcHJvbW8ge1xyXG4gICAgICAgICYtbG9naW4sXHJcbiAgICAgICAgJi1tYW5hZ2V7XHJcbiAgICAgICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgLmxvZ28ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDExM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAucGFuZWwtaGVhZGluZ3tcclxuICAgICAgICAgICAgICAgICAgICAucGFuZWwtdGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAucGFuZWwtYm9keXtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIE1hcmtldCBDb25uZWN0IE1hbmFnZSBCb3hlcyAqL1xyXG5cclxuLnNlY3Rpb24taG9vay1vdXRwdXQge1xyXG4gICAgI21jLXByb21vLXdpZGdldHN7XHJcbiAgICAgICAgLm1jLXByb21vLWxvZ2luLFxyXG4gICAgICAgIC5tYy1wcm9tby1tYW5hZ2V7XHJcbiAgICAgICAgICAgIC5wYW5lbC1ib2R5e1xyXG4gICAgICAgICAgICAgICAgLmxvZ2luLWZlZWRiYWNre1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhbmdlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yeCk7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTczXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnbGFnb20tbWVkaXVtLWljb25zJyAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4iLCJcclxuYm9keS5sYWdvbS1mdXR1cmlzdGljLFxyXG5ib2R5LmxhZ29tLWZ1dHVyaXN0aWMucGFnZS10eXBlLWZ1bGwge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZnV0dXJpc3RpYy1iZyk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbn1cclxuLmxhZ29tLWZ1dHVyaXN0aWMge1xyXG4gICAgLnBhY2thZ2UsXHJcbiAgICAuZHJvcGRvd24tbWVudSxcclxuICAgIC5ib3R0b20tYWN0aW9uLXN0aWNreSxcclxuICAgIC5zZWxlY3RpemUtZHJvcGRvd24sXHJcbiAgICAuY29va2llLWJhcl9fY29udGVudCxcclxuICAgIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSxcclxuICAgIC5zaXRlLnNpdGUtbWFya2V0Z29vIC5zZWN0aW9uLXN0ZXBzIC5mZWF0dXJlIHtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICB9XHJcbiAgICAmLmxhZ29tLWxheW91dC10b3Auc2Nyb2xsLXVwIC5zdGlja3ktbmF2aWdhdGlvbixcclxuICAgICYubGFnb20tbGF5b3V0LXRvcC5zY3JvbGwtZG93biAuc3RpY2t5LW5hdmlnYXRpb257XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLWJsb2NrLW92ZXJsYXktc2hhZG93KTtcclxuICAgICAgICAgICAgYm9yZGVyOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3RpY2t5LW1lbnUtYmcpO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2l0ZS5zaXRlLW1hcmtldGdvbyAuc2VjdGlvbi10aWxlcyAudGlsZSxcclxuICAgIC5zaXRlLnNpdGUtaW5kZXggLnNlY3Rpb24tc2xpZGVyLWJ0biAudGlsZSxcclxuICAgIC5zaXRlLnNpdGUtbWFya2V0Z29vIC5zZWN0aW9uLXN0ZXBzIC5mZWF0dXJlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1vdmVybGF5LWJnLTIpO1xyXG4gICAgfVxyXG4gICAgLmltZy1jb250YWluZXIgaW1nLFxyXG4gICAgLmxvZ29zIC5sb2dvIGltZyxcclxuICAgIC5jaGVjay1pY29uIC5zdmctaWNvbixcclxuICAgIC5hZGRvbi1wcm9tby1jb250YWluZXIgLmxvZ28gaW1nLFxyXG4gICAgLm1jLXByb21vLWxvZ2luIC5sb2dvIGltZyB7XHJcbiAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcclxuICAgIH1cclxuICAgICNzdHJpcGVFbGVtZW50cyB7XHJcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICsgZGl2IHtcclxuICAgICAgICAgICAgKyAjbmV3Q2FyZFNhdmVTZXR0aW5ncyB7XHJcbiAgICAgICAgICAgICAgICAuZm9ybS1ncm91cCB7XHJcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zdmctZ3JhcGhpYyB7XHJcbiAgICAgICAgJi13aGl0ZSB7XHJcbiAgICAgICAgICAgICYuc3ZnLWdyYXBoaWMtc3Ryb2tlLWdyYXkge1xyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS1zdmctZ3JhcGhpYy1iZy13aGl0ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1vbi1ib2R5IHtcclxuICAgICAgICAgICAgJi5zdmctZ3JhcGhpYy1wcmltYXJ5IHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXN2Zy1ncmFwaGljLWJnLXdoaXRlKTsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAmLnN2Zy1ncmFwaGljLXN0cm9rZSxcclxuICAgICAgICAgICAgICAgICYuc3ZnLWdyYXBoaWMtc3Ryb2tlLTIsXHJcbiAgICAgICAgICAgICAgICAmLnN2Zy1ncmFwaGljLXN0cm9rZS00IHsgIFxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tc3ZnLWdyYXBoaWMtYmctd2hpdGUpOyAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5zdmctZ3JhcGhpYy1zdHJva2UtcCB7XHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLXN2Zy1ncmFwaGljLWJnLXdoaXRlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLW9uLXNlYXJjaCB7XHJcbiAgICAgICAgICAgICYuc3ZnLWdyYXBoaWMtZmFkZWQge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogI0RBRENERTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zaXRlLWJhbm5lci5iYW5uZXItcHJpbWFyeSxcclxuICAgIC5zaXRlLWJhbm5lci5iYW5uZXItc2Vjb25kYXJ5LFxyXG4gICAgLnNpdGUtc2VjdGlvbi5zZWN0aW9uLXByaW1hcnksXHJcbiAgICAuc2l0ZS1zZWN0aW9uLnNlY3Rpb24tc2Vjb25kYXJ5LFxyXG4gICAgLnByb21vLXNsaWRlci5wcm9tby1zbGlkZXItcHJpbWFyeSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWZ1dHVyaXN0aWMtYmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgPiAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG4gICAgLnNpdGUtc2VjdGlvbi5zZWN0aW9uLXByaW1hcnkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWJsb2NrLXRleHQtY29sb3IpO1xyXG4gICAgfVxyXG4gICAgLnNpdGUtc2VjdGlvbi5zZWN0aW9uLXNlY29uZGFyeSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1ibG9jay10ZXh0LWNvbG9yKTtcclxuICAgIH1cclxuICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7IFxyXG4gICAgICAgIC5ib3R0b20tYWN0aW9uLXN0aWNreSB7XHJcbiAgICAgICAgICAgICYuaXMtZml4ZWR7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1vdmVybGF5LWJnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlucHV0Ojotd2Via2l0LWNyZWRlbnRpYWxzLWF1dG8tZmlsbC1idXR0b24ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgfVxyXG4gICAgLm1kLWVkaXRvciB7XHJcbiAgICAgICAgLmJ0bi10b29sYmFyIHtcclxuICAgICAgICAgICAgLmJ0bi1ncm91cCB7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICBcclxuICAgICAgICAmLm1kLWZ1bGxzY3JlZW4tbW9kZSB7XHJcbiAgICAgICAgICAgIC5idG4tdG9vbGJhciB7XHJcbiAgICAgICAgICAgICAgICAuYnRuLWdyb3VwIHtcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJvZHktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICB9XHJcbiAgICAuYW5ub3VuY2VtZW50cy1saXN0IHtcclxuICAgICAgICAmLmxpc3QtYm94ZWR7XHJcbiAgICAgICAgICAgIC5saXN0LWdyb3VwLWl0ZW17XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kcm9wZG93bi1iZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYW5ub3VuY2VtZW50cy10b29sYmFyIHtcclxuICAgICAgICAuZHJvcGRvd24tZmlsdGVyIHtcclxuICAgICAgICAgICAgLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy9ub3JkdnBuIHBhZ2VcclxuICAgIC5pY29ucy1uZXR3b3JrIHtcclxuICAgICAgICAuY29udGVudC1zbGlkZXItaXRlbSB7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcyg1LjUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zaXRlLnNpdGUtbm9yZHZwbiAuY29tcGFyaXNpb24taW1hZ2VzIGltZyB7XHJcbiAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG5vcm1hbDtcclxuICAgIH1cclxuICAgIC5zaXRlLW5vcmR2cG4gLmNvbXBhcmlzb24gLmNvbC0xMiAuY29sLTI6bnRoLW9mLXR5cGUoMikge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktbGlnaHRlci0yKSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLy8gZm9vdGVyIHBheW1lbnQgZ2F0ZXdheSBpY29uc1xyXG4gICAgLmZpbGx7XHJcbiAgICAgICAgJi13aGl0ZXtcclxuICAgICAgICAgICAgZmlsbDojZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWdyYXl7XHJcbiAgICAgICAgICAgIGZpbGw6I0UwRTBFMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10cmFuc3BhcmVudHtcclxuICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRpY2tldC1yZXBseXtcclxuICAgICAgICAmLWF0dGFjaG1lbnRze1xyXG4gICAgICAgICAgICB1bHtcclxuICAgICAgICAgICAgICAgIGxpe1xyXG4gICAgICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktbGlnaHRlci0zKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtbGlnaHRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYXR0YWNobWVudC1jb250YWluZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS1saWdodGVyLTMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmF5LWxpZ2h0ZXItMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmF0dGFjaG1lbnQtZXh0ZW5zaW9uLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hdHRhY2htZW50LW5hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWxpZ2h0ZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zaXRlLnNpdGUtc29jaWFsYmVlIHtcclxuICAgICAgICAucHJpY2luZy10YWJsZSB7XHJcbiAgICAgICAgICAgICZfX3JvdyB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWJsZS1iZy1ob3Zlcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWZpZWxke1xyXG4gICAgICAgICYtcmVzdWx0c3tcclxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duIChtZCkge1xyXG4gICAgLmxhZ29tLWZ1dHVyaXN0aWMge1xyXG4gICAgICAgIC5hcHAtbmF2LWhlYWRlciB7XHJcbiAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxufVxyXG4iLCIubGFnb20tZGFyay1tb2Rle1xyXG4gICAgLmZlYXR1cmVkLXRsZHN7XHJcbiAgICAgICAgLmZlYXR1cmVkLXRsZHtcclxuICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5ib3R0b20tYWN0aW9uLXN0aWNreS5pcy1maXhlZHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1ibG9jay1iZyk7XHJcbiAgICB9XHJcbiAgICAjcGF5bWVudEdhdGV3YXlzQ29udGFpbmVye1xyXG4gICAgICAgIC5jaGVjay1pY29ue1xyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZpbGx7XHJcbiAgICAgICAgJi13aGl0ZXtcclxuICAgICAgICAgICAgZmlsbDojZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWdyYXl7XHJcbiAgICAgICAgICAgIGZpbGw6I0UwRTBFMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10cmFuc3BhcmVudHtcclxuICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmltZy1vbi1kYXJrbW9kZXtcclxuICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1haW4tZm9vdGVye1xyXG4gICAgICAgICYtZXh0ZW5kZWQtZ3JheXtcclxuICAgICAgICAgICAgLmZvb3Rlci1wYXltZW50e1xyXG4gICAgICAgICAgICAgICAgJi1nYXRld2F5e1xyXG4gICAgICAgICAgICAgICAgICAgIHN2Z3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS1mYWRlZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgI3N0cmlwZUVsZW1lbnRzIHtcclxuICAgICAgICAuU3RyaXBlRWxlbWVudCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgI2lucHV0RGVzY3JpcHRpb257XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICBjb2xvcjogIzE3MTkxQztcclxuICAgIH1cclxufVxyXG4iLCIuZHJvcGRvd24tc3VwcG9ydC1ob3Vyc3tcclxuICAgIC5kcm9wZG93bntcclxuICAgICAgICAmLXRvZ2dsZXtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLW1lbnV7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMzgwcHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGx0cntcclxuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBydGwge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5vcmRlci1uZWctMXtcclxuICAgICAgICAuZHJvcGRvd24tbWVudXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbHRye1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufSJdLCJzb3VyY2VSb290IjoiIn0=*/